Workaround for Catalina XOP Problem


Mac OS 10.15 (Catalina) added security restrictions that prevent un-notarized XOPs from running. This is explained at https://www.wavemetrics.com/news/igor-pro-macos-1015-catalina.

Thanks to Rodney and Jan who posted workarounds on the Igor mailing list on 2019-10-31 and 2019-11-01. This workaround is adapted from their posts.

We used the XMULtils64 XOP, which we downloaded from IgorExchange (https://www.wavemetrics.com/sites/www.wavemetrics.com/files/documents-i…) for testing. You could also use another downloaded XOP or a WaveMetrics XOP that ships with Igor Pro 8.03 or before. WaveMetrics XOPs ship with Igor Pro 8.04 or later are notarized and do not need to be blessed.

The following steps were tested with Mac OS 10.15.1 and 11.0.1. They may not work in earlier or later versions of Mac OS.

WORKAROUND

1. Activate the XOP that you want to use by putting it, or an alias pointing to it, in the "Igor Extensions (64-bit)" folder of your "Igor Pro 8 User Files" folder which is typically in /Users/<user>/Documents/WaveMetrics.

2. In the Finder, select the .xop file, and choose File->Get Info.

The Finder Info window opens.

Examine the popup menu in the Open With section of the Info window. If it says "Igor64.app (default)", you can close the Info window and skip to step 6.

3. In the Open With section of the Info window, click the popup menu, choose Other, and select your Igor64.app file, which is typically in /Applications/WaveMetrics/Igor Pro 8 Folder.

4. Still in the Finder Info window, click the Change All button and, when prompted, click Continue.

The popup menu should now say "Igor64.app (default)".

5. Close the Info window.

6. Launch Igor64.app.

Toward the end of Igor's initialization, the OS may display a dialog saying "<XOP name> cannot be opened because the developer cannot be verified".

This dialog appears only when Igor tries to load the XOP for execution. With XOPs that add functions to Igor, this occurs during Igor's initialization. With other XOPs, it does not occur until you do something that causes the XOP to run.

If the OS "cannot be opened" dialog appears at this point for the XOP that you want to bless, skip to step 8.

7. Do something that causes the XOP to run. For example, execute an operation added to Igor by the XOP or choose a menu item added by the XOP.

The OS "cannot be opened" dialog should appear.

8. In the "cannot be opened" dialog, click Cancel.

9. Igor displays a dialog saying "Can't load the executable file in the XOP package". Click OK.

10. Quit Igor.

11. Open the System Preferences Security & Privacy panel and click the General tab.

You should see a message that says "<XOP name> was blocked" and an Open Anyway button should appear near it.

12. Click the Open Anyway button.

The OS launches Igor and displays a dialog saying "macOS cannot verify the developer of <XOP name>. Are you sure you want to open it?".

13. In the "are you sure you want to open it" dialog, click the Open button.

Igor finishes initializing and successfully loads the XOP.

The XOP is now "blessed", meaning that the OS will now allow it to run without further complaint.

NOTES

A blessed XOP is blessed for all versions of Igor.

You can bless only one XOP at a time because the Security & Privacy panel shows only the most-recently executed XOP that was blocked.

If you overwrite a blessed XOP with a newly-downloaded version, you have to re-bless it.