Vorschlag: genereller Winst-Installer
Verfasst: 05 Dez 2014, 11:35
Hallo liebe OPSI Freunde,
prinzipiell würde ich gern viel mehr Scripte in das OPSI-Wiki einbringen. Die Einträge die bereits hinterlegt sind, sind aber teilweise sehr veraltet, siehe Firefox.
Deshalb würde ich gern etwas vorschlagen. 90% der Daten für die einzelnen Installer Dateien sind gleich.
Wenn man diese in eine separate Datei verpackt und diese dann per
einfügt, könnte man sich, denk ich viel Arbeit ersparen und dennoch Anpassungen vornehmen.
Das soll nur mal eine Diskussionsgrundlage sein. Das gleiche kann man übrigens auch für den Uninstaller nehmen.
Der Installer für den AcrobatReader könnte dann wie folgt aussehen.
In dem Beispiel habe ich auch noch den Exitcode als eigene Datei abgelegt, da dieser ja eigentlich universal ist.
Ich weiß, dass es bei vielen Dingen Anpassungen geben muss aber diese könnte man ja separat dokumentieren. Ich finde z.B. bei den meisten existierenden Installern die Überprüfung auf genug Plattenplatz relativ sinnfrei, da der Computer bei weniger als 40 MB Speicherplatz sehr ernste Probleme mit seinem Rechner hat. Aber auch diese Überprüfung könnte man auslagern.
Ich komme aus der Programmierschiene deshalb versuche ich auch hier so etwas wie "Funktionen" aus zu lagern. Ich weiß nicht ob das mit OPSI so geht und ob es Sinn macht, aber in jedem Installler 90% des Codes einfach zu kopieren erscheint mir auch nicht einleuchtend.
Mein Vorschlag wäre, dass wir diese zentrale Dateien im Wiki ablegen und diesen dann von den einzelnen Installern darauf verweisen.
prinzipiell würde ich gern viel mehr Scripte in das OPSI-Wiki einbringen. Die Einträge die bereits hinterlegt sind, sind aber teilweise sehr veraltet, siehe Firefox.
Deshalb würde ich gern etwas vorschlagen. 90% der Daten für die einzelnen Installer Dateien sind gleich.
Wenn man diese in eine separate Datei verpackt und diese dann per
Code: Alles auswählen
include_append
Code: Alles auswählen
[Sub_installProgram]
ShowBitmap "%ScriptPath%\" + $bitmap$ $headline$
Message "installiere " + $headline$
if (FileExists ($setupFile$))
if ($msiExec$ = "1")
Winbatch_msi_setup /TimeOutSeconds $TimeOut
else
Winbatch_setup /TimeOutSeconds $TimeOut
endif
else
LogError "file not found"
isFatalError
endif
[Winbatch_msi_setup]
msiexec /i $setupFile$ $SilentSwitch$
[Winbatch_setup]
$setupFile$ $SilentSwitch$
Der Installer für den AcrobatReader könnte dann wie folgt aussehen.
Code: Alles auswählen
[Actions]
requiredWinstVersion >= "4.11.2.6"
DefVar $SilentSwitch$
DefVar $ExitCode$
DefVar $setupFile$
DefVar $bitmap$
DefVar $headline$
DefVar $msiExec$
DefVar $TimeOut$
Set $msiExec$ = "0"
Set $headline$ = "Adobe Reader XI"
Set $bitmap$ = "adobereader.jpg"
Set $setupFile$ = "%ScriptPath%\setup\setup.exe"
set $SilentSwitch$ = "/sAll /msi TRANSFORMS=%ScriptPath%\setup\AcroRead.mst"
include_append "%ScriptDrive%\globalScripts\setupFile.ins"
include_append "%ScriptDrive%\globalScripts\SubExitCode.ins"
winBatch_uninstall
Ich weiß, dass es bei vielen Dingen Anpassungen geben muss aber diese könnte man ja separat dokumentieren. Ich finde z.B. bei den meisten existierenden Installern die Überprüfung auf genug Plattenplatz relativ sinnfrei, da der Computer bei weniger als 40 MB Speicherplatz sehr ernste Probleme mit seinem Rechner hat. Aber auch diese Überprüfung könnte man auslagern.
Ich komme aus der Programmierschiene deshalb versuche ich auch hier so etwas wie "Funktionen" aus zu lagern. Ich weiß nicht ob das mit OPSI so geht und ob es Sinn macht, aber in jedem Installler 90% des Codes einfach zu kopieren erscheint mir auch nicht einleuchtend.
Mein Vorschlag wäre, dass wir diese zentrale Dateien im Wiki ablegen und diesen dann von den einzelnen Installern darauf verweisen.