MacOS – OS X 10.6 : Automating new system provisioning with scripts

macos

I've been working on this for days but simply cannot find the correct references to make it work.

The idea is to have a script that will baseline newly purchased Macs that comes into the company with basic stuffs like set autologin to off, create a new admin user (for remote admins to access for support, set password to unlock screensaver and etc) .

Sample list for baseline that admins have to do on each new machine:

Click the Login Options button

Set Automatic Login: OFF

Check: Show the Restart, Sleep, and Shutdown buttons

Uncheck: Show input menu in login window

Uncheck: Show password hints

Uncheck: Use voice over in the login window

Check: Show fast user switching menu as Short Name

(note: this is only part of a long list to do on each machine)

I've managed to find some references to make some parts work. Like autologin can be unset with "defaults write /Library/Preferences/.GlobalPreferences com.apple.userspref.DisableAutoLogin -bool TRUE" and I've kinda found ways to muscle in a new user creation (including prompts) with applescript and shell commands.

But generally its tough finding ways to do somewhat simple things like turn on password to get out of screensaver or to allow fast user switching. References are either too limited or just no where to be seen (e.g. i can unset autologin via cli but the very next setting on the system preference "show restart, sleep and shutdown buttons" is somewhere else and i can't find any command line to make it set)

Does anyone have any ideas on a list, document, reference or anything of where each setting on the system resides so that I can be pointed to make it work? or maybe sample scripts for the above example…

My thanks for reading thus far – a huge thank you for whoever that has any info on the above.

Best Answer

There is a better way to do this. The IT department at my company maintains a disk image with all of the settings in place they need to administer the Macs when they are received-including software in place registered with site licenses. They open the Macs and simply replace what's on the hard drive with the disk image.

Scripting is a logical path, but scripting System Preferences is a real bear because you have to go with GUI Scripting which is rife with problems, the least of which trying to decipher UIElementInspector to get what you need.