-
Notifications
You must be signed in to change notification settings - Fork 291
Issues Running The GUI After Downloading
Sometime in 2016, Apple introduced "App Translocation" as a security feature. Apps downloaded from the internet will have a "com.apple.quarantine" attribute (see source 2. on how to check and remove this attribute). Apps that are quarantined will be "Translocated" when run. This means the entire .app package will be temporarily moved to a read-only disk image, and run from there. This does not agree with the GUI, which needs to run from a writable directory to work. The quarantine goes away as soon as the user moves the .app anywhere else (doesn't have to be /Applications).
- Distribute the Mac version of the GUI in a .dmg and sign the entire dmg.
- Detect when we are in a read-only directory and alert the user (with a popup for example). Ask them to move the .app somewhere else.
- https://lapcatsoftware.com/articles/app-translocation.html
- https://apple.stackexchange.com/questions/181026/lsopenurlswithrole-failed-with-error-10810-cant-open-install-os-x-yosemite
- https://blog.obdev.at/gatekeeper-and-little-snitch-rules/
- https://www.synack.com/2016/12/16/untranslocating-apps/
The gui won't work unless you set "run as administrator" in the compatibility settings. Also, it won't scale properly unless you change the DPI settings.
All of these settings can be embedded in the app using an Application Manifest. See here for instructions.
Please feel free to contribute tips, tricks and best practices.