for version 1.0 (02/03/2005)
Armadillo is a Mac OS X application which facilitates the creation of Mac OS X Startup Items.
Startup Items are folders with a special directory structure that contains (at the very least) an executable script and an XML property list which contains information about when to execute the script in the operating system's boot process. Startup Items are executed at boot time by a program called SystemStarter.
For specific information about the format of Startup Items, you should consult the following pages in Apple's Developer Documentation:
For more information about how SystemStarter works, you should read the SystemStarter manpage (open Terminal and type "man SystemStarter
"). However, you probably won't have to read all this to create a Startup Item with Armadillo. All you need is a reasonable familiarity with shell scripting.
Armadillo is a fairly straightforward application. Once you launch the application, you should see a window like this one:
I'm going to explain each of the settings and controls in turn:
Name
This is the name of your Startup Item. Both your Startup Item directory and the script within it will eventually bear this name. Also, this is the name of the service your Startup Item will be recognized as providing by SystemStarter.
Description
The description string should be a human-readable name for your Startup Item.
Order Preference
The order preference for your item can be First, Early, None, Late or Last. This provides SystemStarter with information about what stage of the boot process is desirable for loading your Startup Item. This value should not be relied on, however, as SystemStarter may ignore it.
Requires
You can edit a list of other Startup Items your particular Startup Item absolutely requires to function. You specify these items by name. These can be other Startup Items of your creation or, more likely, some of the Startup Items which are an inherent part of Mac OS X. For a list of Apple's items, see the list at the bottom of this document.
Uses
You can edit a list of other Startup Items your particular Startup Item uses but are not essential to its functionality. You specify these items by name. These can be other Startup Items of your creation or some of the Startup Items which are an inherent part of Mac OS X. For a list of Apple's items, see the list at the bottom of this document.
Bundled files
If your script requires external files as resources, you may possibly want to bundle them with your Startup Item. You can edit a list of files to bundle with the item.
Startup Script
This is an editable text field for your startup script. In most cases, you will only need to add some lines of your own. Several functions are defined, namely StartService, StopService and RestartService. Not all of these functions must neccesarily be implemented. However, if your Startup Item is to actually do something, you will probably want to flesh out the StartService function with some commands of your own. A rudimentary knowledge of shell scripting is required for this.
Create and Install
This button will create a Startup Item from your settings in Armadillo and install it in /Library/StartupItems
, the place where third-party Startup Items are generally placed. Apple's own Startup Items are located in /System/Library/StartupItems
.
Create
This button will create a Startup Item from your settings in Armadillo in a location you specify. The Startup Item can subsequently be installed manually or added to an installer package..
Import Script
You can import a script from some other file to load into the Startup Scrip text field.
Restore Default Script
This will restore the default startup script which Armadillo loads when launched.
Check Script Syntax
This function will check the syntax of your script and report errors. This function is only useful for shell scripts, since the script is piped through sh -n
.
A list of Apple's Mac OS X items follows. You can use the names on this list to specify what Startup Items your own Startup Item uses or requires.
Startup item |
Description |
---|---|
SecurityServer |
Starts the security server, which oversees system authorization, authentication, and keychain access. |
CoreGraphics |
Starts the ATS Server. |
Disks |
Starts the |
Accounting |
Starts up the accounting system ( |
Network |
Sets up options for using IPv6 and IP forwarding as appropriate. |
NetworkExtensions |
Loads several network-related kernel extensions. |
BIND |
Starts up the local DNS-server. |
mDNSResponder |
Starts up the multicast-DNS responder, which supports Rendezvous, Apple’s implementation of zero-configuration networking. |
Portmap |
Starts up the |
CrashReporter |
If crash reporting is enabled, starts daemons to gather crash report data. |
LDAP |
Starts the LDAP service. |
NetInfo |
Starts the NetInfo servers ( |
NIS |
Starts the Network Information Services. |
NetworkTime |
Starts up network time services, which uses the Network Time Protocol (NTP). |
LoginWindow |
Signals that the system has the services it needs to
start the loginwindow application. The |
NFS |
Starts the Network File System service that performs asynchronous
block I/O ( |
AuthServer |
Starts the authentication server. |
AppServices |
Initializes Launch Services. |
Postfix |
Launches the SMTP mail server. |
PrintingServices |
Starts the CUPS printing services daemon ( |
IPServices |
Starts TCP/IP services ( |
AppleShare |
If a network connection is detected, starts the AppleShare service. |
Apache |
If web sharing is enabled, runs the Apache HTTP server |
Cron |
Runs the |