Scripting additions on Mojave


#1

Does anybody know if there is any alternative to Scripting Additions in Mojave? Or any way to get Mojave to load a Scripting Addition? The latest Script Debugger documentation states that non system Scripting Additions will not be loaded on Mojave, which seems pretty definitive, but where is this explained by Apple? I’ve found it very hard to find help or documentation.

My signed app currently relies on a Scripting Addition to interact with the windows of a third party application, and this works fine prior to Mojave, even with SIP enabled, but in Mojave gives “skipped scripting addition “/Library/ScriptingAdditions/[name of script]” because it is not SIP-protected”.


(Nigel Heinsius) #2

I’m having this problem too. I was over on MacScripter yesterday and posted to the Mac OSX forum about this issue. 3rd party Scripting Additions seem to no longer work in Mojave. I have dozens of scripts that use the Satimage Scripting Additions to manipulate text strings using RegEx. As far as I know, Applescript has no facility for dealing handling RegEx search and replace. Unless I can find a solution, I will have to write a function that runs a shell script sed from the command line. Maybe something like:
do shell script (" echo " & stringIn & " | sed -e s/" & regEx & “/” & stringOut & “/g”);
Lots of work.
I’m beginning to feel the burn from Apple and it’s treatment of Applescript and I don’t like it.


(Mark Alldritt) #3

I can appreciate your frustration with this change. It does not appear to be explained anywhere. Apple’s macOS Mojave release notes make no mention of this.

You really only have three choices:

  • remain on 10.13
  • move to some alternative means of accomplishing what the Scripting Addition did which is most likely AppleScript Objective-C or an AppleScript library (see this listing)
  • disable SIP which returns access to Scripting Additions but leaves your system vulnerable to attack

(CK) #4

And option 4: file a bug report with Apple, which may alert them to the problem to have it fixed, but also raise awareness to them that people still love and use AppleScript.


#5

The Applescript interface to ObjC enables a couple of other options - using NSRegularExpression directly, or dialling out to Javascript for help with JSContext or OSAKit etc


(Mark Alldritt) #6

Please see this post:


(Mark Alldritt) #7

See also:


(Nigel Heinsius) #8

Thanks for this Mark. I will take a look at making a change up to the script. Alternatively, I suppose I can use another machine running High Sierra to sign and bundle the Addition if I get desperate.
BTW - I love your Script Debugger. Have been using it at work for many years and it is a favorite of my toolbox.


(Bill Earl) #9

I rely heavily on Satimage and XMLLib scripting additions, so have disabled SIP to continue using them, which I don’t like. I hope Satimage or someone converts them to background apps that will allow re-enabling of SIP. I recall using such a background scripting app long ago (pre-OSX I think, I don’t recall its name) which worked fine, and was somewhat similar to Satimage osax in its functions.

Update: I believe the scripting app was called Extra Suites.


(Mark Alldritt) #10

I just posted a workaround solution for using the Satimage scripting additions on Mojave systems: