VividVisions • information design

Startup Item für Helma unter Mac OS X (Server)

Ich habe ein Startup Item für Mac OS X gebastelt, das Helma automatisch beim Booten des Systems startet. Das Item kann natürlich auch unter Mac OS X Server eingesetzt werden. Ein Service weniger, an den man bei einem Neustart denken muss.

So geht’s:

Einfach als root im Verzeichnis /Library/StartupItems einen neuen Ordner namens “Helma” erstellen. In diesen Ordner kommen zwei Dateien. Die eine heißt ebenfalls “Helma” und ist das Skript, das ausgeführt wird, wenn das System hochfährt. Nicht vergessen, die Datei ausführbar zu machen!

Helma:

#!/bin/sh
. /etc/rc.common

StartService ()
{
    if [ -f /usr/local/helma/helma.pid ]; then
        rm -f /usr/local/helma/helma.pid
    fi
    if [ "${HELMA=-NO-}" = "-YES-" ]; then
        ConsoleMessage "Starting Helma"
        /usr/local/helma/scripts/helma start
    fi
}

StopService ()
{
    ConsoleMessage "Stopping Helma"
    /usr/local/helma/scripts/helma stop
}

RestartService ()
{
    StopService
    StartService
}

RunService "$1"

Dieses Skript geht davon aus, dass Helma unter /usr/local/helma installiert wurde und die mitgelieferten Startup-Skripte konfiguriert wurden. Bitte an Eure Umgebungen anpassen.

Die zweite Datei heißt “StartupParameters.plist” und beinhaltet die Konfiguration, wie und wann das obige Skript ausgeführt werden soll.

StartupParameters.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
 <key>Description</key>
 <string>Helma Object Publisher 1.6</string>
 <key>OrderPreference</key>
 <string>None</string>
 <key>Provides</key>
 <array>
 	<string>Helma</string>
 </array>
 <key>Uses</key>
 <array>
 	<string>MySQL</string>
 	<string>Web Server</string>
 </array>
 </dict>
</plist>

Durch die Angaben “MySQL” und “Web Server” unter “Uses” geben wir dem Boot Manager bekannt, dass wir diese beiden Applikationen vor Helma starten wollen, sofern sie aktiviert sind.

Um das Startup Item selbst zu aktivieren, muss man in der Datei /etc/hostconfig die Zeile HELMA=-YES- einfügen. Zum deaktivieren diese Zeile in HELMA=-NO- ändern, das Startup Item selbst kann bleiben wo es ist. Voilà.

Mehr zum Thema Startup Items findet Ihr in der Apple Developer Connection (Englisch).


Leave a comment









Twitter

Nichts zu danken!