Getting the preview working on newer MacOS

On Mac when I download a preview version and copy the package contents to my Desktop, I usually have to command+Click and then choose Open Anyways to disregard the warning message about Slicer being potentially a dangerous application, downloaded off the web (if you don’t do this, the only option is “Move to Trash”). Once you do this sequence, you can launch the Slicer normally.

I recently upgraded to MacOs 15 and looks like Open Anyways behavior has been significantly altered. You can no longer do the CMD+click, and choose Open. You need to launch slicer at least once, see the warning, then go to Security, and find the Slicer in the list of blocked applications, click the “Launch Anyways” icon next to it, and then enter your admin password to verify.

This is a company managed device, so I do not know whether my security policies just got tighther with the upgrade, or Apple indeed changed this behavior. I appreciate if someone can confirm this.

If this is indeed the default behavior for everyone, we might have to put a some explanation on the docs.

Yes, I think Apple has gotten stricter.

I always use the following:

xattr -rd com.apple.quarantine Slicer.app

and then it opens as expected.

I thinking we should add a README document into the .dmg with this information in preview downoads and also describe it in our readthedocs.

1 Like

Yep, it is very strict now. I wrote about it here, as part of my work developing a new native launcher for Fiji/ImageJ.

For Fiji/ImageJ, we are now code-signing the native launcher so that the software runs in the hardened runtime. A downside of this is that it is impossible to load unsigned native libraries within the hardened runtime—it will crash the program, and there is no entitlement to prevent it. For Slicer, it might be easier to make a PKG installer that not only copies over the Slicer.app but also does the xattr command(s) needed to unquarantine it, so that Slicer can continue to run outside the hardened runtime, and therefore still utilize extensions without needing to code-sign them all.

Thanks for providing the background info @ctrueden :+1:

I think it’s okay to make people explicitly un-quarantine the preview builds. It is experimental software after all. But I do think we should make it easier to discover how to make it work, and yes maybe provide a script, ideally with a message that informs them what what’s going on and a chance to opt out before proceeding.

1 Like