Installer-Kurs 6/6

von
André Wyrwa

Hier eine Übersicht über die Inhalte der einzelnen Kursteile:

  1. Einführung, Überblick, Grundlagen
  2. Kommunikation mit dem User, grundlegende Kommandos
  3. Dateioperationen
  4. Weiterführende Funktionen und Statements
  5. Scriptoptimierung, Lokalisierung
  6. Tricks für Fortgeschrittene, Tools

Teil 6:

In diesem letzten Kursteil möchte ich einfach noch ein paar Zusatztools für den Installer bzw. zwei alternative Installer, die auf dem Commodore- Installer-Konzept basieren, vorstellen.

Hier ein kurzer Überblick:

Retire

Retire ist ein unscheinbares kleines Programm, das eine, dem Installer fehlende, sehr wichtige Funktion ersetzt, die man sonst über ARexx lösen müßte.

Es entfernt vom Installer hinzugefügte Einträge aus der User-Startup, eine Aufgabe, die sehr wichtig wird, wenn man sein Script mit einer Deinstallations-Routine versehen will. Dazu übergibt man lediglich den Namen der Applikation (mit welchem auch der Eintrag in der User-Startup vorgenommen wurde), den Rest erledigt Retire.

InstallerFX

InstallerFX aus dem Hause Triumph Software ist ein AddOn für den Commodore-Installer, das einfach eine graphische Aufwertung desselben ermöglicht. So läßt sich ein eigener Screen mit Hintergrundbild erstellen, auf dem das Installer-Fenster geöffnet wird, die Position des Fensters kann verändert werden und es können zusätzliche Fenster geöffnet werden, in denen Bilder anzeigbar sind.

Das Programm muß dazu dem Software-Paket beigelegt werden und wird vom Installer-Script aus gesteuert. Das Konzept basiert darauf, daß mittels des Scripts Daten für das InstallerFX-Programm bereitgestellt werden (Prefs-Files, Bilder) und das Programm dann vom Script aus mittels (RUN ) aufgerufen wird. Es interpretiert dann das gefundene Prefs-File und reagiert entsprechend, d.h. zeigt gegebenenfalls das Bild an oder verschiebt das Installer-Fenster. Diese Prozedur läßt sich natürlich während des Scripts beliebig oft wiederholen, so daß es dem User nie langweilig zu werden braucht.

Die Hintergrundbilder für die Screens lassen sich auch als flächendeckendes Muster anzeigen (Tile-Modus).

Das InstallerFX-Programm nimmt etwa 10 KB in Anspruch, um die das eigentiche Paket vergrößert wird. Dazu kommen dann noch die Bilder. Alles in allem stellt InstallerFX eine nette grafische Spielerei dar, die die Möglichkeit bietet, seinen Scripts einen Hauch von optischem Glanz zu verleihen.

Natürlich sind auch ernsthaftere Anwendungen, wie das darstellen von Screenshots oder das Darstellen von Bildern zur Auswahl derselben während der Installation (z.B. von WB-Patterns) denkbar, jedoch ist zu bedenken, ob das Anwachsen des Umfanges des Softwarepaketes das Resultat rechtfertigt.

NewInstaller

NewInstaller ist ebenfalls ein AddOn zum Original-Commodore-Installer, jedoch mit einem völlig anderen Konzept als InstallerFX.

Was NewInstaller macht, ist - grob gesagt - das automatische Erstellen eines Installer-Scripts und hilft damit vor allem den Entwicklern. Will man ein Softwarepaket mit Standard-Dateien wie Programmdateien, Fonts, Libraries usw. installieren lassen, so braucht man kein eigenes Script mehr schreiben, sondern nur ein Projekt-Icon mit dem NewInstaller als Standardprogramm und einigen speziellen Tooltypes seinem Software-Paket beilegen. Aber selbst das braucht man nicht von Hand machen, sondern kann sich vom NewInstaller dieses Icon erstellen lassen.

Zur Installation muß dann nur der User den NewInstaller installiert haben. Dieser liest dann die Tooltypes aus, bekommt durch sie ein paar "Verhaltensrichtlinien" mitgeteilt und erstellt dann automatisch ein Installer-Script. Danach ruft er den Installer mit diesem auf und läßt es abarbeiten. Dabei merkt er sich, was er alles schon so installiert hat und wird ein gleiches Programm noch einmal installiert, so erstellt er ein Script mit Update-Modus. Über einen Tooltype läßt sich sogar das Anbieten eines 'UnInstall-Modus' aktivieren.

Damit ist aber der Funktionsumfang noch nicht erschöpft. NewInstaller bietet die Möglichkeit, Bilder anzuzeigen und Sounds und Module abzuspielen, sowie die Möglichkeit, eine Verbindung zur Homepage herzustellen oder die Software gleich online registrieren zu lassen und LHA- bzw. LZX-Archive werden bei der Installation automatisch erkannt und entpackt. Für diese Funktionen werden aber die render.library, die guigfx.library, identify.library, openurl.libray, LHA und LZX benötigt.

Zu guter Letzt bietet der NewInstaller einen Modus, in dem einfach ein Verzeichnis angewählt werden kann, dessen Inhalt er dann sinnvoll zu installieren versucht.

Der NewInstaller bietet ein beeindruckendes Konzept, basierend auf der Idee, jedem Entwickler die Möglichkeit zu geben, sein Paket durch ein Installer-Script zu bereichern, ohne jedoch selbst eines schreiben zu müssen.

Nur geht die Rechnung so ganz dennoch nicht auf. Bei komplizierten Installationen muß doch wieder ein Script geschrieben werden, es gibt Dinge, die sich nicht nach Schema-F installieren lassen.

Des weiteren ist NewInstaller Shareware und die Registrierung kostet 10 DM per EMail bzw. 15 DM per Post. So muß sich schonmal jeder Anwender, der eine Software installieren möchte, deren Autor den NewInstaller benutzt hat, den NewInstaller installieren und registrieren lassen. Nicht zu vergessen, daß er sich die entsprechenden Libraries besorgen muß, wenn der Programmierer diese für seine Installation voraussetzt.

Welcher Autor möchte das vom zukünftigen Benutzer seiner Software verlangen?

Savage Installer

Der Savage-Installer präsentiert sich als völlig eigenständiger Ersatz für den Commodore-Installer. Bisher existiert er nur in einer Beta-Version, die mit MUI-Oberfläche daherkommt. Für die Version 1.0 plant der Autor ein BOOPSI-GUI. Vielleicht läßt sich ja auch ein modulares Konzept a la Miami entwickeln, es soll ja Leute geben, die MUI gar nicht so übel finden.

Da immer noch in der Entwicklung, ist der Savage-Installer noch nicht in der Lage, die volle Funktionalität des Commodore-Installers zu ersetzen. Noch nicht implementiert sind die (OPTIONAL )- und (DELOPTS )-Parameter für die (COPYFILES )- und (COPYLIB )-Funktionen.

Aber der Savage-Installer hat bereits neben seinem GUI auch sprachlich neues zu bieten. So gibt es einen eingebauten (REBOOT )-Befehl zum Resetten des Amigas, eine (DELAY )-, (BEEP )- und (RANDOM )-Funktion. Zum Auffinden von Erweiterungskarten existiert der Befehl (FINDBOARD ), das Kommando (DATABASE ) wurde um einige Informationen erweitert, mit (SIMULATE-ERROR ) lassen sich RunTime-Errors simulieren, mit (COMPARE ) Werte vergleichen, und mit (SETENV ) existiert nun ein Gegenstück zu (GETENV ). Letzteres ist eigentlich überflüssig, da selbiges auch mittels (TEXTFILE ) realisiert werden konnte.

Besonders schön sind die Funktionen (CONCURRENT-DO ), mit deren Hilfe es möglich ist, Teile des Scripts gleichzeitig abzuarbeiten, (LET ) zum Erzeugen lokaler Umgebungen (mit lokalen Variablen) und (SWING ), mit welcher sich zwischen verschiedenen Installations-Seiten hin und her schalten läßt, ähnlich dem Windows-Setup-Programm.

Darüber hinaus existieren einige neue Tooltypes, Konstanten (für Usermodi und Wahrheitswerte) und eingebaute Variablen. Die Einschränkungen für die Stringlänge sind entfallen und das Script kann auch bei Auftreten eines Fehlers noch fortgesetzt werden. Außerdem läßt sich der Savage-Installer als AppIcon starten, auf das dann nur ein Script gezogen werden muß, um es auszuführen, oder man wählt das Script per File-Requester aus.

Für die Zukunft ist ebenfalls einiges geplant: von grafischen Erweiterungen, wie Image-Buttons, Backgrounds und Grafikanzeige, über erweiterte Funktionalität wie "Drag&Drop" von Icons ins Installer-Window, bis zu neuen Funktionen, wie Erzeugen eines Icons und Onlineregistrierung.

Von den hier vorgestellten ist dieses Freeware-Programm sicherlich das vielversprechendste.

Die erwähnten Programme sind auf folgenden Homepages zu finden:

Retire müßten Sie sich aus dem Aminet fischen.

Damit möchte ich diesen Kurs beenden. Ich hoffe, meine Ausführungen konnten Ihnen einen Einblick in die Sprache des Installers geben und Sie sind nun - und mit dem in Kürze zusätzlich veröffentlichten Guide als Nachschlagewerk - in der Lage, Scripts für Ihre eigenen Publikationen zu schreiben.

André Wyrwa


Prev Inhaltsverzeichnis Next
© `99 Der AmZeiger