Wednesday, July 27, 2022

Disappearing Safari Extensions

Jeff Johnson:

I’ve received a number of bug reports from customers saying that the extension doesn’t appear in Safari. And when my app calls the API [SFSafariApplication showPreferencesForExtensionWithIdentifier: completionHandler:] to show the extension in Safari Preferences, there’s an error “SFErrorDomain error 1”.

[…]

My command above forces Launch Services to re-register the Safari app. In order to diagnose the issue, I saved the output of lsregister -dump to a file both before and after re-registering Safari. When I compared the files, there were a number of differences, mostly trivial (e.g., timestamps), but one big difference stood out to me. The extension point com.apple.Safari.web-extension appeared in the “after” dump but not in the “before” dump[…]

[…]

I don’t know what caused the com.apple.Safari.web-extension extension point to become unregistered with Launch Services. That’s still a mystery. Obviously this appears to be some kind of OS bug that occurs on Big Sur but not Mojave.

Jeff Johnson:

If anything, the bug gotten worse. It’s happening to me rather frequently now. And it continues to happen to other Safari users, not just users of my Safari web extension Tweaks for Twitter, but to users of all Safari web extensions from every developer.

As a reminder, if your Safari web extensions have disappeared, you can restore them with a command in Terminal:

/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f -R /Applications/Safari.app

However, this command might not restore your extension data. I’ve found that in some cases, Safari not only forgets the extensions, it also erases the extension storage!

Previously:

1 Comment RSS · Twitter

I just had this happen to me recently and found this same fix on the Apple support forum. Glad to know I’m not the only one who hit this bug.

Leave a Comment