Table of Contents
Wat is het?
Van de website WPKG:
“WPKG is an automated software deployment, upgrade and removal program for Windows.
It can be used to push/pull software packages, such as Service Packs, hotfixes, or program installations from a central server (for example, Samba or Active Directory) to a number of workstations.
It can run as a service to install software in the background (silent install), without user interaction.
It can install MSI, InstallShield, PackagefortheWeb, Inno Setup, Nullsoft, other software installers or .exe packages, .bat and .cmd scripts and similar: no more repackaging to perform software installation.
WPKG is open source software.”
Installatie(voorbeeld)
Maak op de server een WPKG share aan.
Pak WPKG-1.0.2.tar.bz2 uit naar die WPKG share.
Maak op de server een Software share aan en plaats hierin de installatiebestanden.
Maak op de server een account aan (vb. wpkguser) en geef deze account leesrechten op de Software en WPKG shares.
Hernoem packages.xml naar packages.xml.old.
Hernoem profiles.xml naar profiles.xml.old.
Maak een nieuwe packages.xml met inhoud:
<?xml version="1.0" encoding="UTF-8"?> <packages> </packages>
Maak een nieuwe profiles.xml met inhoud:
<profiles> </profiles>
Bovenstaande zorgt ervoor dat je per package en per profiel xml bestanden kunt aanmaken onder respectievelijk .\packages en .\profiles.
Download en installeer de WPKG Client op de client(s).
Voor de configuratie kan een XML bestand geïmporteerd worden, hieronder een voorbeeld van zo'n XML bestand.
Onderstaand XML bestand is verkregen door op een client de wpkginst.exe te starten, de configuratie hierin te zetten en vervolgens die configuratie te exporteren naar een XML bestand.
<?xml version="1.0" encoding="UTF-8"?> <configuration><file>\\server-01\WPKG\wpkg.js</file><path-user>server-01\wpkguser</path-user><path-password>J4fpDp9euF8=</path-password><exec-user>SYSTEM</exec-user><exec-password></exec-password><parameters>/synchronize /nonotify /quiet</parameters><silent>YES</silent><pre-action></pre-action><post-action></post-action><show-GUI>NO</show-GUI><logon-delay>10</logon-delay><logon-message-1>WPKG is installing applications and applying settings...</logon-message-1><logon-message-2>Please wait, don't restart or power off your computer...</logon-message-2><script-variable name="SOFTWARE">\\server-01\software</script-variable><priority>normal</priority><stop-service-after-done>NO</stop-service-after-done><laptop-mode>NO</laptop-mode><server-connecting-method>standard</server-connecting-method><server-connecting-ip></server-connecting-ip><server-connecting-timeout>3</server-connecting-timeout><server-connecting-script-timeout>3</server-connecting-script-timeout><server-connecting-script-file></server-connecting-script-file></configuration>
Gebruik het volgende script in een batchbestand voor een dryrun test:
set SOFTWARE=\\server-01\software net use \\server-01 /user:wpkguser wpkguser cscript \\server-01\wpkg\wpkg.js /synchronize /debug /dryrun
Gebruik het volgende script voor een debug installatie:
set SOFTWARE=\\server-01\software net use \\server-01 /user:wpkguser wpkguser cscript \\server-01\wpkg\wpkg.js /synchronize /debug
Voorbeelden van xml bestanden voor een aantal packages
<?xml version="1.0" encoding="UTF-8"?> <packages> <package id="futuriximager" name="FuturixImager" revision="588" reboot="false" priority="100"> <check type="uninstall" condition="exists" path="FuturixImager 5.8.8" /> <install cmd='%SOFTWARE%\futuriximager\futuriximager_v588.exe /S' /> <install cmd='%SOFTWARE%\futuriximager\futuriximager_extras_v588.exe /S' /> <install cmd='CMD /C copy "%SOFTWARE%\futuriximager\FuturixImager.lnk" "C:\Documents and Settings\All Users\Desktop"' /> <upgrade cmd='%SOFTWARE%\futuriximager\futuriximager_v588.exe /S' /> <upgrade cmd='%SOFTWARE%\futuriximager\futuriximager_extras_v588.exe /S' /> <upgrade cmd='CMD /C copy "%SOFTWARE%\futuriximager\FuturixImager.lnk" "C:\Documents and Settings\All Users\Desktop"' /> <remove cmd='"%PROGRAMFILES%\FuturixImager\uninstallfx.exe" /S' /> <remove cmd='CMD /C del /Q "C:\Documents and Settings\All Users\Desktop\FuturixImager.lnk"' /> </package> </packages>
<?xml version="1.0" encoding="UTF-8"?> <packages> <package id="firefox" name="Mozilla Firefox" revision="20014" reboot="false" priority="10"> <check type="uninstall" condition="exists" path="Mozilla Firefox (2.0.0.14)" /> <install cmd='"%SOFTWARE%\firefox\Firefox Setup 2.0.0.14 NL.exe" -ms' /> <upgrade cmd='"%SOFTWARE%\firefox\Firefox Setup 2.0.0.14 NL.exe" -ms' /> <remove cmd='"%PROGRAMFILES%\Mozilla Firefox\uninstall\helper.exe" /s' /> </package> </packages>
<?xml version="1.0" encoding="UTF-8"?> <packages> <package id="thunderbird" name="Mozilla Thunderbird" revision="20014" reboot="false" priority="10"> <check type="uninstall" condition="exists" path="Mozilla Thunderbird (2.0.0.14)" /> <install cmd='"%SOFTWARE%\thunderbird\Thunderbird Setup 2.0.0.14 NL.exe" -ms' /> <upgrade cmd='"%SOFTWARE%\thunderbird\Thunderbird Setup 2.0.0.14 NL.exe" -ms' /> <remove cmd='"%PROGRAMFILES%\Mozilla Thunderbird\uninstall\helper.exe" /s' /> </package> </packages>
Java Runtime Environment offline installer:
<?xml version="1.0" encoding="UTF-8"?> <packages> <package id="java6" name="Java Runtime Environment 6 Update 6" revision="6" reboot="false" priority="100"> <check type="uninstall" condition="exists" path="Java(TM) 6 Update 6" /> <install cmd='%SOFTWARE%\java\jre-6u6-windows-i586-p-s.exe /s IEXPLORER=1 MOZILLA=1 ADDLOCAL=ALL REBOOT=Suppress JAVAUPDATE=0 JU=0 AUTOUPDATECHECK=0' /> <upgrade cmd='%SOFTWARE%\java\jre-6u6-windows-i586-p-s.exe /s IEXPLORER=1 MOZILLA=1 ADDLOCAL=ALL REBOOT=Suppress JAVAUPDATE=0 JU=0 AUTOUPDATECHECK=0' /> <remove cmd='msiexec /qn /x {3248F0A8-6813-11D6-A77B-00B0D0160060}' /> </package> </packages>
Zie WPKG - Silent Installers voor meer voorbeelden.