emin / WebPQuickLook

Mac OS X QuickLook plugin for WebP image files
776 stars 44 forks source link

No longer works in ~/Library/QuickLook on Yosemite. #6

Closed vitorgalvao closed 7 years ago

vitorgalvao commented 9 years ago

On homebrew-cask we had an issue open recently pertaining to an alternative to this plugin. The problem being it no longer (in Yosemite) works when set in ~/Library/QuickLook (as opposed to /Library/QuickLook, where it does work).

After some tests I found this issue, whatever the cause, also affects your plugin, so maybe you and @dchest would be interested in working together on it. So far, every other quicklook plugin I’ve tried seems to be working normally.

emin commented 9 years ago

My WebPQuickLook plugin works on Yosemite as I tested. But I encounter some problem from other apps and plugins which specify UTI type for webp files. For example, Pixelmator has a quicklook plugin for its app and it does try to generate preview for webp but it fails. OS X couldn't try this because it first look at .app files for a UTI type and if it finds it, go with them. I manually remove public.webp from Pixelmator 's quicklook plugin and my quicklook generator worked. You should check which quicklook plugin try to generate preview by doing following;

in Terminal;

defaults write -g QLEnableLogging YES

and then open the Console app then clear all the previous log and try to generate preview on a webp file, you will see the log for quicklook and it will tell you which generator try to generate and fail.

vitorgalvao commented 9 years ago

My testing was done on a clean VM, so the only plugin that could be used was yours.

terminal

VMs-Mac:Library vm$ defaults write -g QLEnableLogging YES
VMs-Mac:Library vm$ qlmanage -p "${HOME}/Desktop/image.webp"
Testing Quick Look preview with files:
    /Users/vm/Desktop/image.webp
[ERROR] LSCopyDefaultApplicationURLForURL for file:///Users/vm/Desktop/image.webp returned error The operation couldn’t be completed. (OSStatus error -10814.)
2014-12-14 09:22:29.970 qlmanage[1688:28378] *** CFMessagePort: bootstrap_register(): failed 1100 (0x44c) 'Permission denied', port = 0x9d3f, name = 'com.apple.tsm.portname'
See /usr/include/servers/bootstrap_defs.h for the error codes.
2014-12-14 09:22:29.972 qlmanage[1688:28378] *** CFMessagePort: bootstrap_register(): failed 1100 (0x44c) 'Permission denied', port = 0x4407, name = 'com.apple.CFPasteboardClient'
See /usr/include/servers/bootstrap_defs.h for the error codes.
2014-12-14 09:22:29.972 qlmanage[1688:28378] Failed to allocate communication port for com.apple.CFPasteboardClient; this is likely due to sandbox restrictions
2014-12-14 09:22:29.978 qlmanage[1688:28378] *** CFMessagePort: bootstrap_register(): failed 1100 (0x44c) 'Permission denied', port = 0xa43f, name = 'com.apple.coredrag'
See /usr/include/servers/bootstrap_defs.h for the error codes.

log

14/12/14 09:20:00,834   vmsvc[66]   [ warning] [timeSync] Unable to synchronize time.
14/12/14 09:20:10,790   com.apple.xpc.launchd[1]    (com.apple.xpc.launchd.user.501.100006.Aqua) Caller not allowed to perform action: qlmanage.1667, action = pid-local registration, code = 1: Operation not permitted, uid = 501, euid = 501, gid = 20, egid = 20, asid = 100006
14/12/14 09:20:10,810   qlmanage[1667]  Failed to allocate communication port for com.apple.CFPasteboardClient; this is likely due to sandbox restrictions
14/12/14 09:20:10,808   com.apple.xpc.launchd[1]    (com.apple.xpc.launchd.user.501.100006.Aqua) Caller not allowed to perform action: qlmanage.1667, action = pid-local registration, code = 1: Operation not permitted, uid = 501, euid = 501, gid = 20, egid = 20, asid = 100006
14/12/14 09:20:10,811   com.apple.xpc.launchd[1]    (com.apple.xpc.launchd.user.501.100006.Aqua) Caller not allowed to perform action: qlmanage.1667, action = pid-local registration, code = 1: Operation not permitted, uid = 501, euid = 501, gid = 20, egid = 20, asid = 100006
14/12/14 09:20:10,816   com.apple.xpc.launchd[1]    (com.apple.xpc.launchd.user.501.100006.Aqua) Caller not allowed to perform action: qlmanage.1667, action = pid-local registration, code = 1: Operation not permitted, uid = 501, euid = 501, gid = 20, egid = 20, asid = 100006
14/12/14 09:20:10,831   sandboxd[741]   ([1667]) qlmanage(1667) deny mach-register com.apple.axserver (per-pid)
14/12/14 09:20:10,840   sandboxd[741]   ([1667]) qlmanage(1667) deny mach-register com.apple.tsm.portname (per-pid)
14/12/14 09:20:10,852   sandboxd[741]   ([1667]) qlmanage(1667) deny mach-register com.apple.CFPasteboardClient (per-pid)
14/12/14 09:20:10,861   sandboxd[741]   ([1667]) qlmanage(1667) deny mach-register com.apple.coredrag (per-pid)
14/12/14 09:20:10,868   sandboxd[741]   ([1064]) storeuid(1064) deny mach-lookup com.apple.dock.server
14/12/14 09:20:11,968   spindump[552]   Got xpc error message in libspindump client connection: Connection invalid
14/12/14 09:20:12,546   sandboxd[741]   ([1064]) storeuid(1064) deny mach-lookup com.apple.dock.server
KingMob commented 8 years ago

FWIW, I can confirm this still happens on El Capitan, too. Installing in /Library works, ~/Library doesn't.

vitorgalvao commented 7 years ago

The plugin seems EOL, so closing the issue.