Site-wide links

Rochester Institute of Technology logo

Reignition application

Reignition is a purpose-built setup utility for Mac OS X computers at Rochester Institute of Technology.

Reignition can set up both computer-wide and individual user preferences. This, along with RIT's companion Macintosh Common Package installer, or MCP, can reduce the initial setup time of brand-new, out-of-the-box Macintosh computers to less than 15 minutes. It can also be used as the basis for quickly and repeatably creating template images if you are cloning systems via Apple Software Restore (now available through Disk Utility in Panther) or Apple Remote Desktop -- or managing them via tools like University of Michigan's Radmind.

Reignition is built for situations that commonly affect IT staff at RIT (and, we suspect, other places as well). In many cases, IT staff are called in to set up a "new" computer after it has already been in use for some time. Reignition is designed to minimize the downtime and disruption of that kind of computer setup process. The best way to make it that process user-centric is to get the work done and get out of the way fast. (If you make your customers happy enough, they are more likely to call you before they unbox their next new computer.)

Wherever possible, Reignition preserves existing settings that cannot easily be replaced (such as existing accounts in e-mail clients), but still sets most preferences to be the same across the board. Reignition strives to prevent the inadvertent loss of important data.

Technology behind the application

The technology of Mac OS X makes Reignition feasible, where it would have been virtually impossible in Mac OS 9. Reignition uses the following technologies, applications, and frameworks built into Mac OS X:

  • Xcode, Project Builder, and Interface Builder, to code the application and construct its interface
  • AppleScript, Script Editor, and AppleScript Studio, to glue everything together, set up e-mail clients, and so on
  • bash shell scripting, the basis for our ability to add applications to the Dock of every user on the computer at one time
  • Perl scripting, because it makes the hard things possible
  • Property lists managed by the defaults mechanism, to set preferences for the system and applications without having to otherwise script them
  • Address Book, whose scriptability allowed us to find a first and last name for the current user when we failed to think of a more clever way
  • Security features (such as those in Loginwindow, Screen Saver, and Keychain), along with the ability to add the RIT certificate authority
  • Common UNIX Printing System, or CUPS, whose command line utilities allowed us to create new printer queues
  • Network Time Protocol, or NTP, clock synchronization
  • Apple Help, for the help file you are reading now.

We could not have accomplished e-mail setup without the scriptability of Apple Mail, Apple Address Book, and most especially Microsoft Entourage. We would have had much less fun creating this help file without the wizardry of BBEdit from Bare Bones and the brilliant screen shots from Snapz Pro from Ambrosia (who are also local to our campus). The Apple Developer documentation (on-disk and on the Web) that is part of the Mac OS X Developer Tools was indispensible in putting this all together, because we had to learn a lot in a small amount of time. Inclusion of features like CVS and Samba in Mac OS X also made our work easier, as we used them to provide a version control repository on RIT's central UNIX servers.

Sure, IT staff could do all of the setup steps by hand instead of automating them with Reignition. But that takes time and some training -- and still produces a lot more room for errors than this utility.

Reignition is typically run after the RIT Macintosh Common Package installer, or MCP. MCP installs software on the target computer. Reignition performs customizations. MCP takes advantage of many of the same technologies, along with Apple PackageMaker.

Reignition was built for situations that commonly affect IT staff at RIT (and, we suspect, other places as well). In many cases, IT staff are called in to set up a "new" computer after it has already been in use for some time. Reignition is designed to minimize the downtime and disruption of the computer setup process. The best way to make it that process user-centric is to get the work done and get out of the way fast.

Created for its benefits

All told, Reignition's creation took ten weeks for one primary student developer and resulted in an application built from about 3,000 lines of mixed AppleScript, perl, and bash shell code. The student developer was also responsible for building the MCP omnibus installer in the same ten-week period.

The application (and separate but associated installer) allows our IT staff to spend less than 10% of the time setting up a Macintosh than before, yet do it more consistently. This has tremendous benefits in a distributed support environment.

Obtaining Reignition

Reignition is currently available by request only. Submit requests for Reignition to the ITS HelpDesk at RIT. To make sure your request is routed properly, we suggest that you use the following text:

"Please send me the current version of the Reignition application from the Macintosh desktop support group."

We provide no support for Reigition outside RIT. Some or all of the settings changes it makes may not be appropriate for other environments. However, we feel that it has value as a concept ... as a tool that can be examined by others. Inside RIT, it should be used only by qualified system administrators. Qualified RIT IT staff can have access to both Reignition and the Macintosh Common Package (MCP) installer on one convenient CD.