Activating Geometer’s Sketchpad in macOS 10.13.6 (and beyond?)

In Licensing GSP Deployments by Terminal Command , I covered the officially sanctioned way to license GSP5 for Macs.

I believe that was still working even as of 10.13.5. It certainly was working in 10.12.

Unfortunately, with 10.13.6—unless you had an already activated GSP when you upgraded to 10.13.6 from 10.13.5 or earlier—you might get error messages like

usage: Sketchpad_Executable -license (register | deregister) -name LicenseName -code AuthorizationCode
in the terminal or like in the GUI, even if you're using an admin account.

So I opened a ticket with McGraw Hill, and they said:

The license for all users is stored in the "/Library/Application Support/The Geometer's Sketchpad/" so it must be a permissions issue with that folder, either creating it for a new install, or accessing it when deregistering an old install.

If you copy the "The Geometer's Sketchpad" folder for a non-admin user install (which would be found in "~/Application Support/The Geometer's Sketchpad", to the global /Library/Application Support/ folder, that should also work, provided that the folder permissions allow read/write.

Lo and behold, that was the the old non-sanctioned, unofficial way I used to license GSP5 on Macs.

Tested it out on 10.13.6. Works!

So, yeah, use the old way until McGraw Hill figures out what's going on.

Licensing GSP Deployments by Terminal Command

Update 21 September, 2018: This doesn't work at all for 10.13.6. If you're trying to activate on 10.13.6, find more details here: Activating Geometer’s Sketchpad in macOS 10.13.6 (and beyond?)

Update 26 July, 2017: Recently I found this not working any more. I had to send the command through Apple Remote Desktop (or run it locally on the machine). Even with the sleep commands (or without them), scripting seems to have died as an option for GSP. Maybe it will be resurrected later? The good news, I guess, is that now you can use double-quotes, too?

I had an old workaround for prepping GSP for Munki that didn't activate things in the sanctioned way.

The problem is the silent-install documentation as written is misleading. For example, this is the example given for a silent install for Mac OS X:

GSP5.app/Contents/MacOS/GSP5_Rel_KCPT_31_105 -license register -name "NAME" -code CODE
Notice how they put the name of the school/organization in double quotes? Well, that doesn't work.

I had the command failing for me to register and to de-register. So I did some Googling and found some JAMFers running into the same problem: register/deregister Geometer's Sketchpad.

Turns out you need single quotes instead of double quotes. And you have to take out the dashes in the registration code.

There is an additional issue a user brings up of scripting the command not working but the command working fine if pasted directly into the terminal.

I've found a workaround for that (for Munki, and not Casper, but I'm assuming the issue is similar, and so the fix the same)—just putting some pauses in the scripts. I haven't experimented with what the exact thresholds are, but these seem to work.

For postinstall_script:

#!//bin/bash
sleep 3
/Applications/GSP5.app/Contents/MacOS/GSP5_Rel_KCPT_31_105 -license register -name 'Name of Your School' –code ************************
sleep 2

For preuninstall_script:

#!/bin/bash
/Applications/GSP5.app/Contents/MacOS/GSP5_Rel_KCPT_31_105 -license deregister -name 'Name of Your School' –code ************************
sleep 3

When I took out the hyphens, switched double quotes to single quotes, and put in some pauses in the scripts, the scripts executed just fine.

Licensing GSP Deployments with a Payload

License GSP Deployments with a Payload

Generally with licensed software, the trick with importing into Munki is to get the normal software imported and then import as an "update," whatever needs to happen to get it licensed.

Geometer's Sketchpad works that way. So you import the Sketchpad app as you would any other. Then activate it on one computer and find what's in ~/Library/Application Support/The Geometer's Sketchpad (by default, Sketchpad seems to activate for only the logged-in user—I got a message about how you have to launch it as administrator if you want it activated for all users, even though I was using an administrator, albeit not root, account).

Inside that folder, you should see two files: licenseK.plist and reference_licenseK.plist.

Just take the entire folder and set it up (you can use Packages or Munki-Pkg) to distribute the folder to be in /Library/Application Support/The Geometer's Sketchpad.

Import that package into Munki as an update for Sketchpad, and you should be all set.