sparkle-project / Sparkle

A software update framework for macOS
https://sparkle-project.org
Other
7.44k stars 1.05k forks source link

Fix Updater.app not starting when running Sparkle as root on Sonoma #2432

Closed zorgiepoo closed 1 year ago

zorgiepoo commented 1 year ago

This may occur for example when you run sparkle-cli as root or use Sparkle.framework in a root process. This is not typically a common use case, but could be used from daemons.

The issue is that Sonoma doesn't like starting our Updater app in the user domain when intermediate directories containing it are root owned (due to lack of file permission access that wasn't present in Ventura). So now we try to create intermediate directories in the standard user's home directory.

Misc Checklist

Only bug fixes to regressions or security fixes are being backported to the 1.x (master) branch now. If you believe your change is significant enough to backport, please also create a separate pull request against the master branch.

Testing

I tested and verified my change by using one or multiple of these methods:

Tested running sparkle-cli as root to update bundle. Tested test app still works.

macOS version tested: 14.0 Beta (23A5337a) 13.5.1 (22G90)