Use Satimage scripting additions on Catalina and Mojave

SatimageOSAX (1.0.1)

SatimageOSAX provides access to the Satimage scripting additions on macOS Catalina and Mojave systems.

As described in the Mojave Brings In Big Security Changes blog post (see the Farewell Scripting Additions section), AppleScript scripting additions (OSAXen) are no longer supported in macOS Mojave. This presents a serious problem for older scripts which depend on the popular suite of Satimage scripting additions.

Installation

  1. Download and mount the SatimageOSAX disk image
  2. Copy the SatimageOSAX application to your Applications folder.
  3. Make sure that you launch the SatimageOSAX application once manually. macOS will ask for permission to run the application because it was downloaded from the internet.

Usage

The SatimageOSAX app makes it possible to continue using Satimage scripting additions with minimal changes to your scripts. Once SatimageOSAX is installed, you only need to add these lines to the beginning of your script:

use scripting additions 
use application "SatimageOSAX"

That’s it. Now the SatimageOSAX application is used to handle all the Satimage scripting addition commands for your script. Please note that this will be slower than before, but your script will run.

Here’s a full example using the Satimage uppercase command:

use scripting additions
use application "SatimageOSAX"

uppercase "Hello Again!"

SatimageOSAX includes the following scripting additions:

  • Files.osax
  • FITS.osax
  • Numerics.osax
  • Satimage.osax
  • XMLLib.osax

Backwards Compatibility

SatimageOSAX can be used on macOS 10.12 (Sierra) and above. When using SatimageOSAX on pre-Mojave systems, I suggest removing the Satimage scripting additions from your system to avoid conflicts.

SatimageOSAX requires an Intel processor to function. When running on an Apple Silicon Macintosh, you must install Rosetta.

WARNING

You should find alternative means of accomplishing what the Satimage scripting additions did for you in the past. The Script Debugger support forum provides a list of AppleScript libraries you can use. And then there is AppleScript Objective-C which gives you access to all the feature of Apple’s Foundation framework (and other Objective-C frameworks).

Support

If you have questions concerning SatimageOSAX please post them on the Script Debugger Support Forum or MacScripter.net. Bugs can be filed as issues with the GitHub repository.

License

SatimageOSAX is licensed under the MIT license (see the LICENSE file for details).

Source Code

Source code for SatimageOSAX is available on GitHub. Pull requests are welcome.

See Also

LNSOSAX

3 Likes

Thanks, Mark. I just tried your “Hello Again!” script in macOS 10.14.1 beta 3, but only got the AppleScript Execution Error (-1,708) >> SatimageOSAX got an error: “Hello Again!” doesn’t understand the “uppercase” message.

Similar errors in other testing using Satimage and XMLLib osaxen.

Amazing work, Mark!

Can this (the github project) be adopted to work with other Scripting Additions?

I’ve got ASObjC solutions for most of the Satimage.osax functionality I use.

The one that’s going to take the most development time is to replace is “24U Appearance OSAX.osax”. (Mainly progress indicator and display better dialog.)

Simon

This sounds link an installation issue. Does it work any better when you make the tell application explicit?

tell application "SatimateOSAX"
    uppercase "Hello Again!"
end

Yes, it certainly can. The OSAXHost folder within the GitHub project is generic and the Satimage folder contains all the Satimage specific parts of the app. Its just a matter of duplicating the SatimageOSAX Xcode target and replacing the Satimage parts of the app with 24U Appearance pieces.

NOTE: As 24U Appearance OSAX is a paid product, I cannot offer a pre-built Mojave host app.

I removed Satimage OSAX application, all associated files, and my Satimage scripting additions, rebooted, then reinstalled Satimage OSAX application.

With SIP enabled, Satimage and XMLLib scripts both resulted in error -1,708:

With SIP disabled, the Satimage script ran fine, but the XMLLib script resulted in a -43 error:

Both of these scripts run fine without SatimageOSAX, using only the scripting additions, with SIP disabled. I’m open to suggestions.

BTW, I tried to email Satimage a few days ago to ask if they might convert their osaxen to background apps, but my email bounced. I’m very pleased to see SatimageOSAX, even though it’s not working for me yet.

Thanks for this app!! I will certainly give it a try. I too tried to replace Satimage functionality with Foundation scripting, but it has been a rough road so far. I will also check out the scripting libraries you mention here. I have not looked at those yet. I really appreciate your efforts Mark.

Try removing all the Satimage stuff from the Finder tell block – calls to scripting additions shouldn’t be within tell blocks anyway.

I think I’ve sorted out the problem. There were some code signing issues that prevented the scripting additions from loading correctly. Please download the latest version (1.0.1) and try again.

Thanks, Mark. SatimageOSAX 1.0.1 solves the error -1,708 issue with Satimage and XMLLib osaxen with SIP enabled.

However I’m now getting the -43 error with XMLLib osax with SIP enabled, so that one remains to be solved. I tried Shane Stanley’s suggestion to take scripting additions out of tell blocks, and your suggestion to use a tell block for SatimageOSAX, but still get the -43 error with XMLLib.

I’m not a XMLLib user so you’ll have to give me a simple example that illustrates this error you are experiencing.

While preparing a simple XMLLib example, I did more testing and found the -43 error is related to using PlistOpen to access a plist file in the ~/Library/Safari/ folder with SIP enabled.

As Shane Stanley clearly describes in this article, under Permission to Poke Around, the fix is to grant Full Disk Access to Script Debugger. This works.

So I’m now a happy camper with SatimageOSAX in Mojave with SIP enabled. Thanks again, Mark and Shane.

1 Like

Thanks a million for this! Satimage is a must have. And so is XMLlib. Much appreciated

Tested SatimageOSAX 1.0.2 on macOS 11.0.1 Big Sur with scripts in BBEdit 13.5.2 on a M1 MacBook Air: it works. I was going to ask for an ARM version, but it’s probably not really necessary…

Thanks!

I’m glad to hear its working.

Because the underlying scripting additions are compiled for Intel and are never going to be updated there is no way to produce a native version for Apple Silicon macs. I expect it to continue working for as long as Intel emulation remains in macOS X.

Hi Mark –

Thank you for doing this. I was running down a codesigning rathole when I found this. There is another page of Statimage osaxen I would please ask you to consider: Extensions for SmileLab I’ve not explored it, but I presume the FITS osax are the same.

Again, thank you very much. Glad to be here, and Happy Holidays.

…Mick