Use own General runtimes and change layout of the scripts

This commit is contained in:
Mario Fetka 2013-08-31 17:07:40 +02:00
parent 42ef53d42a
commit 719f30fba1
15 changed files with 267 additions and 190 deletions

View File

@ -0,0 +1,6 @@
;!@Install@!UTF-8!
RunProgram="opsi-WinPKG.exe"
ExtractTitle="Sereby AIO with Geos One Mods Installer"
ExtractDialogText="Extracting Sereby AIO with Geos One Mods"
GUIMode="1"
;!@InstallEnd@!

View File

@ -0,0 +1,6 @@
<package id="basicruntimes" name="Allgemeine Runtime Dateien" group="System Runtimes">
<check type="file" condition="<" path="%windir%\system32\AiORuntimes.dll" value="1.0.3.6" />
<install>
<cmd path="Geos_One_General_Runtimes_Installer.msi" param="/qb!"/>
</install>
</package>

Binary file not shown.

View File

@ -1,7 +0,0 @@
<package id="msvb" name="%NAME% Runtimes" group="Standard Programme" priority="1">
<variable name="NAME" value="Visual Basic and C" />
<install>
<cmd path="Opsi_extra.exe" param="/SILENT /NORESTART" />
</install>
</package>

View File

@ -108,11 +108,6 @@ if ($sereby_msvc$ = "reinstall")
opsiservicecall_msvc_uninstall
Set $reboot$ = "true"
endif
if ($sereby_msvb$ = "reinstall")
Winbatch_msvb_uninstall
opsiservicecall_msvb_uninstall
Set $reboot$ = "true"
endif
if ($sereby_AdobeFlash$ = "reinstall")
Winbatch_AdobeFlash_uninstall
opsiservicecall_AdobeFlash_uninstall
@ -298,17 +293,6 @@ cscript /nologo "%ScriptPath%\UnInstall\Packages\JRE\JavaUninstallScript.vbs" /k
"%opsiserviceUser%"
]
[Winbatch_msvb_uninstall]
[opsiservicecall_msvb_uninstall]
"method": "setProductProperty"
"params": [
"$ProductId$",
"sereby_msvb",
"install",
"%opsiserviceUser%"
]
[Winbatch_AdobeFlash_uninstall]
$UninstallFlashExe$ -uninstall

View File

@ -43,9 +43,6 @@ endif
if ($sereby_msvc$ = "install")
DosInAnIcon_msvc_config
endif
if ($sereby_msvb$ = "install")
DosInAnIcon_msvb_config
endif
if ($sereby_AdobeFlash$ = "install")
DosInAnIcon_AdobeFlash_config
endif
@ -120,10 +117,6 @@ xml ed -O -u "/settings/set[@component='msdxm']/@checked" -v 1 "$LogDir$\WinPKG.
copy "$LogDir$\WinPKG.xml" "$LogDir$\WinPKG.xml.old"
xml ed -O -u "/settings/set[@component='msvc']/@checked" -v 1 "$LogDir$\WinPKG.xml.old" > "$LogDir$\WinPKG.xml"
[DosInAnIcon_msvb_config]
copy "$LogDir$\WinPKG.xml" "$LogDir$\WinPKG.xml.old"
xml ed -O -u "/settings/set[@component='msvb']/@checked" -v 1 "$LogDir$\WinPKG.xml.old" > "$LogDir$\WinPKG.xml"
[DosInAnIcon_AdobeFlash_config]
copy "$LogDir$\WinPKG.xml" "$LogDir$\WinPKG.xml.old"
xml ed -O -u "/settings/set[@component='AdobeFlash']/@checked" -v 1 "$LogDir$\WinPKG.xml.old" > "$LogDir$\WinPKG.xml"

View File

@ -32,8 +32,6 @@ DefVar $sereby_msdxm$
Set $sereby_msdxm$ = GetProductProperty("sereby_msdxm", "install")
DefVar $sereby_msvc$
Set $sereby_msvc$ = GetProductProperty("sereby_msvc", "install")
DefVar $sereby_msvb$
Set $sereby_msvb$ = GetProductProperty("sereby_msvb", "install")
DefVar $sereby_AdobeFlash$
Set $sereby_AdobeFlash$ = GetProductProperty("sereby_AdobeFlash", "install")
DefVar $sereby_AdobeAir$

View File

@ -1 +0,0 @@
b0b6e3561887feea686ae6e8c2aeab166952124e /home/mario/.opsi-dist-cache/sereby.aio-2.0.7.2/X86/Dimpel-aio-runtimes_v2.0.7.2.7z

View File

@ -0,0 +1 @@
86e3ce1bce4becebb809b3568d7a53aeaf61e396 /home/mario/.opsi-dist-cache/sereby.aio-2.0.7.2/X86/Geos_One_General_Runtimes_Installer_1.1.0.0.msi

View File

@ -180,15 +180,6 @@ description: Install Microsoft Visual C++ Runtimes
values: ["install", "none", "reinstall"]
default: ["install"]
[ProductProperty]
type: unicode
name: sereby_msvb
multivalue: False
editable: False
description: Install Microsoft Visual Basic and C Runtimes
values: ["install", "none", "reinstall"]
default: ["install"]
[ProductProperty]
type: unicode
name: sereby_AdobeFlash

Binary file not shown.

Binary file not shown.

View File

@ -3,13 +3,73 @@
############################
VENDOR="sereby.org"
PN="sereby.aio"
NAME="All in One Runtimes "
NAME="All in One Runtimes"
DESCRIPTION="Das All in One Runtimes Paket buendelt alle wichtigen Runtime Pakete die benoetigt werden um sicherzustellen, dass alle Programme auch reibungslos funktionieren."
VERSION="2.0.7.2"
RELEASE="1"
PRIORITY="0"
ADVICE=""
# ==================================
# create a new sereby
# ==================================
CREATENEWSEREBY=1
# ==================================
# Adobe Air Verison
# ==================================
AIRVERSION="3.8.0.1290"
# ==================================
# Update Java
# ==================================
JREUPDATE="0"
JREUVERSION="25"
JREVERSION="7.0.250.17"
# ==================================
# Update Adobe Flash
# ==================================
FLASHUPDATE="1"
FLASHVERSION="11.8.800.94"
# ==================================
# Update Adobe Schockave
# ==================================
SHOCKUPDATE="1"
SHOCKVERSION="12.0.3r133"
# ==================================
# Update Microsoft Silverlight
# ==================================
SILVERUPDATE="1"
SILVERVERSION="5.1.20513.0"
# ==================================
# Take Parts of Ricktendo Update
# ==================================
RICKTENDOMSVCUPDATE="0"
RICKTENDOJSHARPUPDATE="1"
RICKTENDOAIO="2013.8.22"
MSVC2005VER="8.00.50727.6229"
MSVC2008VER="9.00.30729.7523"
MSVC2010VER="10.00.40219.01"
MSVC2012VER="11.0.60610.1"
# ==================================
# General Runtimes Verison
# ==================================
GENERALVERSION="1.1.0.0"
# TYPE - defines, if the install files are public or restricteded.
# Valid value: restricted | public
@ -31,6 +91,7 @@ DL_FILE[5]="aio-runtimes_v${VERSION}.7z"
DL_SOURCE[5]="http://www.computerbase.de/downloads/system/all-in-one-runtimes/64076/?download"
DL_ARCH[5]="X86"
DL_EXTRACT_FORMAT[5]="7zip"
DL_EXTRACT_TO[5]="sereby"
# The DL_FILE[6] is also used in the builder-target-cb.sh
# if you change also change there
@ -56,8 +117,6 @@ DL_WINST_NAME[7]=DotNet81Source
# DL_ARCH[7]="X86"
# DL_WINST_NAME[7]=DotNet81Source
AIRVERSION="3.8.0.1290"
DL_FILE[8]="air_${AIRVERSION}_win.exe"
DL_SOURCE[8]="http://labsdownload.adobe.com/pub/labs/flashruntimes/air/air3-8_win.exe"
DL_ARCH[8]="X86"
@ -69,10 +128,6 @@ DL_ARCH[9]="X86"
DL_EXTRACT_FORMAT[9]="7zip"
DL_EXTRACT_TO[9]="7ZipSFX"
JREUVERSION="25"
JREVERSION="7.0.250.17"
JREUPDATE="0"
DL_FILE[10]="jre7u${JREUVERSION}-x86.exe"
DL_SOURCE[10]="http://javadl.sun.com/webapps/download/AutoDL?BundleId=79063"
DL_ARCH[10]="X86"
@ -83,9 +138,6 @@ DL_SOURCE[11]="http://javadl.sun.com/webapps/download/AutoDL?BundleId=79065"
DL_ARCH[11]="X86"
DL_WINST_NAME[11]=InstallJre64Exe
FLASHVERSION="11.8.800.94"
FLASHUPDATE="1"
DL_FILE[12]="install_flash_player-${FLASHVERSION}.exe"
DL_SOURCE[12]="http://fpdownload.macromedia.com/get/flashplayer/pdc/${FLASHVERSION}/install_flash_player.exe"
DL_ARCH[12]="X86"
@ -96,17 +148,11 @@ DL_SOURCE[13]="http://fpdownload.macromedia.com/get/flashplayer/pdc/${FLASHVERSI
DL_ARCH[13]="X86"
DL_WINST_NAME[13]=InstallFlashIeExe
SHOCKVERSION="12.0.3r133"
SHOCKUPDATE="1"
DL_FILE[14]="sw_lic_full_installer-${SHOCKVERSION}.msi"
DL_SOURCE[14]="http://fpdownload.macromedia.com/get/shockwave/default/english/win95nt/latest/sw_lic_full_installer.msi"
DL_ARCH[14]="X86"
DL_WINST_NAME[14]=InstallShockMsi
SILVERVERSION="5.1.20513.0"
SILVERUPDATE="1"
DL_FILE[15]="Silverlight-${SILVERVERSION}.exe"
DL_SOURCE[15]="http://download.microsoft.com/download/B/3/C/B3CF6815-40B1-4E36-8746-C4A0381AD260/20513.00/runtime/Silverlight.exe"
DL_ARCH[15]="X86"
@ -123,28 +169,16 @@ DL_ARCH[17]="X86"
DL_EXTRACT_TO[17]="Unlocker"
DL_EXTRACT_FORMAT[17]="7zip"
RICKTENDOAIO="2013.8.22"
RICKTENDOMSVCUPDATE="0"
RICKTENDOJSHARPUPDATE="1"
MSVC2005VER="8.00.50727.6229"
MSVC2008VER="9.00.30729.7523"
MSVC2010VER="10.00.40219.01"
MSVC2012VER="11.0.60610.1"
DL_FILE[18]="VBCFJRedist_AIO_x86_x64_${RICKTENDOAIO}.exe"
DL_SOURCE[18]="http://brianspcrepair.com/ricktendo/Setup/VBCFJRedist_AIO_x86_x64.exe"
DL_ARCH[18]="X86"
DL_WINST_NAME[18]=RicktendoAioExe
MSVBVERSION="11.0.60610.1"
# Dimple pack für deutsches msvb
DL_FILE[19]="Dimpel-aio-runtimes_v${VERSION}.7z"
DL_SOURCE[19]="http://german-unattended.de/~dimpel/Addons/aio-runtimes_v${VERSION}.7z"
# General Runtimes
DL_FILE[19]="Geos_One_General_Runtimes_Installer_${GENERALVERSION}.msi"
DL_SOURCE[19]="http://ftp.disconnected-by-peer.at/AIO/Geos_One_General_Runtimes_Installer_${GENERALVERSION}.msi"
DL_ARCH[19]="X86"
DL_EXTRACT_TO[19]="Dimpel"
DL_EXTRACT_FORMAT[19]="7zip"
DL_WINST_NAME[19]=InstallGeneralMsi
##################
### Uninstallers

View File

@ -41,55 +41,41 @@ function create() {
echo "Create"
builder_create
# create directories and extract the runtime packages
# ==========================================================================================================
# create directories and extract the runtime packages
# ==========================================================================================================
mkdir -p $INST_DIR/CLIENT_DATA/{Install/Packages/BasicRuntimes,Install/Packages/Air,Config}
mkdir -p $INST_DIR/CLIENT_DATA/UnInstall/Packages/{Flash,Shockwave,Silverlight}
7z x -o$INST_DIR/CLIENT_DATA/Install $INST_DIR/CLIENT_DATA/X86/svcpack/aio-runtimes.exe
7z x -o$INST_DIR/CLIENT_DATA/Install $INST_DIR/CLIENT_DATA/X86/sereby/svcpack/aio-runtimes.exe
# ==========================================================================================================
# sed everything to disabled
# ==========================================================================================================
sed -e "s!\"1\"!\"0\"!g" -e "s!maximized=\"0\"!maximized=\"1\"!" $INST_DIR/CLIENT_DATA/X86/sereby/WinPKG.xml > $INST_DIR/CLIENT_DATA/Config/WinPKG.xml
# ==========================================================================================================
# extract .net 8.0 & 8.1 now so the unix2dos dont change the extracted files
# ==========================================================================================================
# extract .net 8.0 & 8.1 now so the unix2dos dont change the extracted files
mkdir -p $INST_DIR/CLIENT_DATA/X86/win8xdotnet35
7z x -o$INST_DIR/CLIENT_DATA/X86/win8xdotnet35 $INST_DIR/CLIENT_DATA/X86/${DL_FILE[6]}
7z x -y -o$INST_DIR/CLIENT_DATA/X86/win8xdotnet35 $INST_DIR/CLIENT_DATA/X86/${DL_FILE[7]}
# move the Windows 8 dotnet 2 - 3.5 in place
mv -v $INST_DIR/CLIENT_DATA/X86/win8xdotnet35/sources/sxs $INST_DIR/CLIENT_DATA/Install/NET/WIN8.X
# ==========================================================================================================
# extract Ricktendo AIO now so the unix2dos dont change the extracted files
# ==========================================================================================================
# extract Ricktendo AIO now so the unix2dos dont change the extracted files
mkdir -p $INST_DIR/CLIENT_DATA/X86/Ricktendo
7z x -o$INST_DIR/CLIENT_DATA/X86/Ricktendo $INST_DIR/CLIENT_DATA/X86/${DL_FILE[18]}
# extract Dimpel AIO now so the unix2dos dont change the extracted files
7z x -o$INST_DIR/CLIENT_DATA/X86/Dimpel $INST_DIR/CLIENT_DATA/X86/Dimpel/svcpack/aio-runtimes.exe
# ==========================================================================================================
# Integrate .net for win 8.0 into winpkg
# ==========================================================================================================
# move the Windows 8 dotnet 2 - 3.5 in place
mv -v $INST_DIR/CLIENT_DATA/X86/win8xdotnet35/sources/sxs $INST_DIR/CLIENT_DATA/Install/NET/WIN8.X
# move the Portbale Unlocker in Place
mv -v $INST_DIR/CLIENT_DATA/X86/Unlocker $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/
# Serby and its hacks workaround (sereby pack wants to copy a file on install but thats not possible on a readonly device in opsi
# move the combined x86/x64 to a common name
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5 $INST_DIR/CLIENT_DATA/Install/NET/35
# recreate the new dir
mkdir -p $INST_DIR/CLIENT_DATA/Install/NET/3.5
# move the common dir to the x86 name under the new dir
mv $INST_DIR/CLIENT_DATA/Install/NET/35 $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86
# remove the copy from the install.bat
sed -e '/^copy/d' -i $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/_Install.bat
# move the package.xml un dir up
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/package.xml $INST_DIR/CLIENT_DATA/Install/NET/3.5
# now link copy the x86 dir to x64
cp -al $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86 $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64
# do the copy for x86 (seded away erlyer)
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/vs_setup_x86.msi $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/vs_setup.msi
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/setup_x86.sdb $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/setup.sdb
# do the copy for x64 (seded away erlyer)
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64/vs_setup_x64.msi $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64/vs_setup.msi
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64/setup_x64.sdb $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64/setup.sdb
# create a new install.bat that calls the right setup from the right dir
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/NET/3.5/_Install.bat
echo "set arch=%1" >> $INST_DIR/CLIENT_DATA/Install/NET/3.5/_Install.bat
echo "call %~dp0\%arch%\_Install.bat" >> $INST_DIR/CLIENT_DATA/Install/NET/3.5/_Install.bat
echo "" >> $INST_DIR/CLIENT_DATA/Install/NET/3.5/_Install.bat
# Integrate .net for win 8.0 into winpkg
for NETVER in 2.0 3.0 3.5
do
# convert all the cmd's to axept check entities
@ -120,26 +106,22 @@ function create() {
echo "" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install8X.bat
done
# sed everything to disabled
sed -e "s!\"1\"!\"0\"!g" -e "s!maximized=\"0\"!maximized=\"1\"!" $INST_DIR/CLIENT_DATA/X86/WinPKG.xml > $INST_DIR/CLIENT_DATA/Config/WinPKG.xml
# sed force update on flash
sed -e "s!-install!-force -install!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml
# Workaround update bugs of the sereby Basic Runtimes
# ==========================================================================================================
# Replace the General Runtimes with the Msi version fo GeosOne
# ==========================================================================================================
# Unlocker loads a kernel driver to find out the locking programms and forces them to spawn to memeory so that the lock gets removed and the file can be deleted
# so we need to load the right unlocker for the arch x86 or x64
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp32.bat
echo "%~dp0\Unlocker\x86\Unlocker.exe %WINDIR%\System32\zlib1.dll /D /S" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp32.bat
echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp32.bat
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp64.bat
echo "%~dp0\Unlocker\x64\Unlocker.exe %WINDIR%\System32\zlib1.dll /D /S" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp64.bat
echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp64.bat
sed 's/.*\t\t<cmd.*/\t\t<cmd path="CleanUp32.bat" name="Workaround update bugs x86" arch="x86" \/>\n\t\t<cmd path="CleanUp64.bat" name="Workaround update bugs x64" arch="x64" \/>\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/package.xml
mv -v $INST_DIR/CLIENT_DATA/Opsi_General_Runtimes_Installer.exe $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/
sed "s!General_Runtimes_Installer.exe!Opsi_General_Runtimes_Installer.exe!" -i $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/package.xml
rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/*
mv -v $INST_DIR/CLIENT_DATA/GeosOne_BR_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/package.xml
mv -v $INST_DIR/CLIENT_DATA/X86/Geos_One_General_Runtimes_Installer_${GENERALVERSION}.msi $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/Geos_One_General_Runtimes_Installer.msi
sed "s!.\..\..\..!${GENERALVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/package.xml
# ==========================================================================================================
# integrate Adobe AIR
# ==========================================================================================================
# Move Adobe Air and sereby config in place
mv -v $INST_DIR/CLIENT_DATA/X86/air_${AIRVERSION}_win.exe $INST_DIR/CLIENT_DATA/Install/Packages/Air/air3-8_win.exe
mv -v $INST_DIR/CLIENT_DATA/AdobeAIR_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/Air/package.xml
mv -v $INST_DIR/CLIENT_DATA/AdobeAIR_7zip_config.txt $INST_DIR/CLIENT_DATA/Install/Packages/Air/7zip_config.txt
@ -151,7 +133,10 @@ function create() {
cat $INST_DIR/CLIENT_DATA/X86/7ZipSFX/7zsd_All.sfx $INST_DIR/CLIENT_DATA/Install/Packages/Air/7zip_config.txt $INST_DIR/CLIENT_DATA/Install/Packages/Air/AdobeAIR.7z > $INST_DIR/CLIENT_DATA/Install/Packages/Air/AdobeAIR.exe
rm $INST_DIR/CLIENT_DATA/Install/Packages/Air/air3-8_win.exe $INST_DIR/CLIENT_DATA/Install/Packages/Air/7zip_config.txt $INST_DIR/CLIENT_DATA/Install/Packages/Air/AdobeAIR.7z
# Update Java
# ==========================================================================================================
# Update Java
# ==========================================================================================================
if [ "$JREUPDATE" = "1" ]; then
rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/*/jre.exe
mv $INST_DIR/CLIENT_DATA/X86/jre7u${JREUVERSION}-x86.exe $INST_DIR/CLIENT_DATA/Install/Packages/JRE/x86/jre.exe
@ -160,14 +145,11 @@ function create() {
sed "s!.\..\....\...!${JREVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/JRE/package.xml
fi
sed "s!/s!/s REBOOT=Suppress!" -i $INST_DIR/CLIENT_DATA/Install/Packages/JRE/package.xml
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
echo "if exist \"%PROGRAMFILES%\Java\jre7\bin\jqs.exe\" \"%PROGRAMFILES%\Java\jre7\bin\jqs.exe\" -unregister" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
echo "if exist \"%PROGRAMFILES(x86)%\Java\jre7\bin\jqs.exe\" \"%PROGRAMFILES(x86)%\Java\jre7\bin\jqs.exe\" -unregister" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
# echo "REG DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v SunJavaUpdateSched /f" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
sed 's/.*\t<\/install>.*/\t\t<cmd path="disable.bat" name="Disable Java Update Check " \/>\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/JRE/package.xml
# Update Flash
# ==========================================================================================================
# Update Flash
# ==========================================================================================================
if [ "$FLASHUPDATE" = "1" ]; then
rm -f $INST_DIR/CLIENT_DATA/Install/Packages/Flash/*.exe
cp $INST_DIR/CLIENT_DATA/X86/install_flash_player-${FLASHVERSION}.exe $INST_DIR/CLIENT_DATA/Install/Packages/Flash/install_flash_player.exe
@ -175,6 +157,146 @@ function create() {
sed "s!..\..\....\....!${FLASHVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml
sed "s!.._._..._...!${FLASHVERSION//./_}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml
fi
# sed force update on flash
sed -e "s!-install!-force -install!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml
# ==========================================================================================================
# Update Shockwave
# ==========================================================================================================
if [ "$SHOCKUPDATE" = "1" ]; then
rm -f $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/*.msi
cp $INST_DIR/CLIENT_DATA/X86/sw_lic_full_installer-${SHOCKVERSION}.msi $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/sw_lic_full_installer.msi
sed "s!..\..\..r...!${SHOCKVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/package.xml
sed "s!v12!v${SHOCKVERSION//r/.}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/package.xml
fi
# ==========================================================================================================
# Update Silverlight
# ==========================================================================================================
if [ "$SILVERUPDATE" = "1" ]; then
rm -f $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/*.exe
cp $INST_DIR/CLIENT_DATA/X86/Silverlight-${SILVERVERSION}.exe $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/Silverlight.exe
cp $INST_DIR/CLIENT_DATA/X86/Silverlight_x64-${SILVERVERSION}.exe $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/Silverlight_x64.exe
sed "s!.\..\......\..!${SILVERVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/package.xml
sed "s!v5!v${SILVERVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/package.xml
fi
# ==========================================================================================================
# Update MSCV & J/F Sharp
# ==========================================================================================================
if [ "$RICKTENDOMSVCUPDATE" = "1" ]; then
rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/*
mv $INST_DIR/CLIENT_DATA/X86/Ricktendo/20* $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/
mv -v $INST_DIR/CLIENT_DATA/Ricktendo_VC_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
sed "/msdia80.dll/ s!.\..\......\.....!${MSVC2005VER}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
sed "/msdia90.dll/ s!.\..\......\.....!${MSVC2008VER}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
sed "/msdia100.dll/ s!..\..\......\..!${MSVC2010VER}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
sed "/atl110.dll/ s!..\..\......\..!${MSVC2012VER}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
else
rm $INST_DIR/CLIENT_DATA/Ricktendo_VC_package.xml
fi
if [ "$RICKTENDOJSHARPUPDATE" = "1" ]; then
rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/jsredist/*
mv $INST_DIR/CLIENT_DATA/X86/Ricktendo/*sharp $INST_DIR/CLIENT_DATA/Install/Packages/jsredist/
mv -v $INST_DIR/CLIENT_DATA/Ricktendo_JS_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/jsredist/package.xml
else
rm $INST_DIR/CLIENT_DATA/Ricktendo_JS_package.xml
fi
# ==========================================================================================================
# move the uninstallers in place (directory layout like the sereby package)
# ==========================================================================================================
mv -v $INST_DIR/CLIENT_DATA/X86/JavaRa $INST_DIR/CLIENT_DATA/UnInstall/Packages/JRE
mv -v $INST_DIR/CLIENT_DATA/JavaUninstallScript.vbs $INST_DIR/CLIENT_DATA/UnInstall/Packages/JRE
mv -v $INST_DIR/CLIENT_DATA/CleanSilverlight.cmd $INST_DIR/CLIENT_DATA/UnInstall/Packages/Silverlight
mv -v $INST_DIR/CLIENT_DATA/X86/dotnet $INST_DIR/CLIENT_DATA/UnInstall/NET
mv -v $INST_DIR/CLIENT_DATA/X86/uninstall_flash_player-${FLASHVERSION}.exe $INST_DIR/CLIENT_DATA/UnInstall/Packages/Flash/uninstall_flash_player.exe
mv -v $INST_DIR/CLIENT_DATA/X86/uninstall_shock_player-${SHOCKVERSION}.exe $INST_DIR/CLIENT_DATA/UnInstall/Packages/Shockwave/uninstall_shock_player.exe
# ==========================================================================================================
# move the opsi wrapper to the right dir (close the error window if nothing needs to be done)
# ==========================================================================================================
mv -v $INST_DIR/CLIENT_DATA/opsi-WinPKG.exe $INST_DIR/CLIENT_DATA/Install/
# ==========================================================================================================
# Create a new sereby aio pack
# ==========================================================================================================
if [ "$CREATENEWSEREBY" = "1" ]; then
sed -e "s!\"0\"!\"1\"!g" $INST_DIR/CLIENT_DATA/Config/WinPKG.xml > $INST_DIR/CLIENT_DATA/X86/sereby/WinPKG.xml
7z a $INST_DIR/CLIENT_DATA/X86/sereby/svcpack/aio-runtimes.7z $INST_DIR/CLIENT_DATA/Install/*
mv -v $INST_DIR/CLIENT_DATA/AIO_7zip_config.txt $INST_DIR/CLIENT_DATA/X86/sereby/svcpack/7zip_config.txt
cat $INST_DIR/CLIENT_DATA/X86/7ZipSFX/7zsd_All.sfx $INST_DIR/CLIENT_DATA/X86/sereby/svcpack/7zip_config.txt $INST_DIR/CLIENT_DATA/X86/sereby/svcpack/aio-runtimes.7z > $INST_DIR/CLIENT_DATA/X86/sereby/svcpack/aio-runtimes.exe
rm $INST_DIR/CLIENT_DATA/X86/sereby/svcpack/7zip_config.txt $INST_DIR/CLIENT_DATA/X86/sereby/svcpack/aio-runtimes.7z
ini-set $INST_DIR/CLIENT_DATA/X86/sereby/entries_AiORuntimes.ini --general builddate=`date +"%d.%m.%Y"` version=$VERSION title="Sereby's AiO Runtimes with Geos One's Mods" website=http://opsi.disconnected-by-peer.at
mkdir -p $OPSI_REPOS_PRODUCT_DIR
7z a $OPSI_REPOS_PRODUCT_DIR/$OPSI_REPOS_FILE_PATTERN.7z $INST_DIR/CLIENT_DATA/X86/sereby/*
fi
# ==========================================================================================================
# correct sereby .net 3.5 for opsi use
# ==========================================================================================================
# Serby and its hacks workaround (sereby pack wants to copy a file on install but thats not possible on a readonly device in opsi
# move the combined x86/x64 to a common name
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5 $INST_DIR/CLIENT_DATA/Install/NET/35
# recreate the new dir
mkdir -p $INST_DIR/CLIENT_DATA/Install/NET/3.5
# move the common dir to the x86 name under the new dir
mv $INST_DIR/CLIENT_DATA/Install/NET/35 $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86
# remove the copy from the install.bat
sed -e '/^copy/d' -i $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/_Install.bat
# move the package.xml un dir up
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/package.xml $INST_DIR/CLIENT_DATA/Install/NET/3.5
# now link copy the x86 dir to x64
cp -al $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86 $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64
# do the copy for x86 (seded away erlyer)
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/vs_setup_x86.msi $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/vs_setup.msi
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/setup_x86.sdb $INST_DIR/CLIENT_DATA/Install/NET/3.5/x86/setup.sdb
# do the copy for x64 (seded away erlyer)
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64/vs_setup_x64.msi $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64/vs_setup.msi
mv $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64/setup_x64.sdb $INST_DIR/CLIENT_DATA/Install/NET/3.5/x64/setup.sdb
# create a new install.bat that calls the right setup from the right dir
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/NET/3.5/_Install.bat
echo "set arch=%1" >> $INST_DIR/CLIENT_DATA/Install/NET/3.5/_Install.bat
echo "call %~dp0\%arch%\_Install.bat" >> $INST_DIR/CLIENT_DATA/Install/NET/3.5/_Install.bat
echo "" >> $INST_DIR/CLIENT_DATA/Install/NET/3.5/_Install.bat
# ==========================================================================================================
# Disable zlib1.dll warning General Runtimes
# ==========================================================================================================
# move the Portbale Unlocker in Place
mv -v $INST_DIR/CLIENT_DATA/X86/Unlocker $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp32.bat
echo "%~dp0\Unlocker\x86\Unlocker.exe %WINDIR%\System32\zlib1.dll /D /S" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp32.bat
echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp32.bat
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp64.bat
echo "%~dp0\Unlocker\x64\Unlocker.exe %WINDIR%\System32\zlib1.dll /D /S" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp64.bat
echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/CleanUp64.bat
sed 's/.*\t\t<cmd.*/\t\t<cmd path="CleanUp32.bat" name="Workaround update bugs x86" arch="x86" \/>\n\t\t<cmd path="CleanUp64.bat" name="Workaround update bugs x64" arch="x64" \/>\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/package.xml
# ==========================================================================================================
# Disable Java Update check
# ==========================================================================================================
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
echo "if exist \"%PROGRAMFILES%\Java\jre7\bin\jqs.exe\" \"%PROGRAMFILES%\Java\jre7\bin\jqs.exe\" -unregister" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
echo "if exist \"%PROGRAMFILES(x86)%\Java\jre7\bin\jqs.exe\" \"%PROGRAMFILES(x86)%\Java\jre7\bin\jqs.exe\" -unregister" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
# echo "REG DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v SunJavaUpdateSched /f" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/disable.bat
sed 's/.*\t<\/install>.*/\t\t<cmd path="disable.bat" name="Disable Java Update Check " \/>\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/JRE/package.xml
# ==========================================================================================================
# Disable Flash Update Check
# ==========================================================================================================
mv -v $INST_DIR/CLIENT_DATA/AdobeFlash_mms.cfg $INST_DIR/CLIENT_DATA/Install/Packages/Flash/mms.cfg
sed 's/.*\t<\/install>.*/\t\t<cmd path="disable32.bat" name="Disable Flash Update Check x86" >\n<check type="file" condition="notexist" path="%Windir%\\system32\\Macromed\\Flash\\NPSWF32_%VERSION_FILE%.dll" \/>\n<\/cmd>\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml
sed 's/.*\t<\/install>.*/\t\t<cmd path="disable64.bat" name="Disable Flash Update Check x64" arch="x64" \/>\n<check type="file" condition="notexist" path="%Windir%\\SysWOW64\\Macromed\\Flash\\NPSWF32_%VERSION_FILE%.dll" arch="x64" \/>\n<\/cmd>\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml
@ -185,60 +307,10 @@ function create() {
echo "copy /y /v \"%~dp0mms.cfg\" \"%WINDIR%\SysWOW64\Macromed\Flash\mms.cfg\"" >> $INST_DIR/CLIENT_DATA/Install/Packages/Flash/disable64.bat
echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/Flash/disable64.bat
# Update Shockwave
if [ "$SHOCKUPDATE" = "1" ]; then
rm -f $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/*.msi
cp $INST_DIR/CLIENT_DATA/X86/sw_lic_full_installer-${SHOCKVERSION}.msi $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/sw_lic_full_installer.msi
sed "s!..\..\..r...!${SHOCKVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/package.xml
sed "s!v12!v${SHOCKVERSION//r/.}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/package.xml
fi
# ==========================================================================================================
# Posthooks: change linefeed, Set exec bit, delete temp
# ==========================================================================================================
# Update Silverlight
if [ "$SILVERUPDATE" = "1" ]; then
rm -f $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/*.exe
cp $INST_DIR/CLIENT_DATA/X86/Silverlight-${SILVERVERSION}.exe $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/Silverlight.exe
cp $INST_DIR/CLIENT_DATA/X86/Silverlight_x64-${SILVERVERSION}.exe $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/Silverlight_x64.exe
sed "s!.\..\......\..!${SILVERVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/package.xml
sed "s!v5!v${SILVERVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/package.xml
fi
# MSCV & J/F Sharp
if [ "$RICKTENDOMSVCUPDATE" = "1" ]; then
rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/*
mv $INST_DIR/CLIENT_DATA/X86/Ricktendo/20* $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/
mv -v $INST_DIR/CLIENT_DATA/Ricktendo_VC_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
sed "/msdia80.dll/ s!.\..\......\.....!${MSVC2005VER}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
sed "/msdia90.dll/ s!.\..\......\.....!${MSVC2008VER}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
sed "/msdia100.dll/ s!..\..\......\..!${MSVC2010VER}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
sed "/atl110.dll/ s!..\..\......\..!${MSVC2012VER}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml
fi
if [ "$RICKTENDOJSHARPUPDATE" = "1" ]; then
rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/jsredist/*
mv $INST_DIR/CLIENT_DATA/X86/Ricktendo/*sharp $INST_DIR/CLIENT_DATA/Install/Packages/jsredist/
mv -v $INST_DIR/CLIENT_DATA/Ricktendo_JS_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/jsredist/package.xml
fi
# Integrate MS VB & C Runtimes from Dimpel
mkdir -p $INST_DIR/CLIENT_DATA/Install/Packages/MSVB
mv $INST_DIR/CLIENT_DATA/X86/Dimpel/Packages/BasicRuntimes/extra.exe $INST_DIR/CLIENT_DATA/Install/Packages/MSVB/
mv -v $INST_DIR/CLIENT_DATA/Opsi_extra.exe $INST_DIR/CLIENT_DATA/Install/Packages/MSVB/
mv -v $INST_DIR/CLIENT_DATA/Ricktendo_VB_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/MSVB/package.xml
sed 's/.*<\/settings>.*/\t<set component="msvb" checked="0" \/>\n&/' -i $INST_DIR/CLIENT_DATA/Config/WinPKG.xml
sed "s!.\..\..\....!${MSVBVERSION}!" -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVB/package.xml
# move the uninstallers in place (directory layout like the sereby package)
mv -v $INST_DIR/CLIENT_DATA/X86/JavaRa $INST_DIR/CLIENT_DATA/UnInstall/Packages/JRE
mv -v $INST_DIR/CLIENT_DATA/JavaUninstallScript.vbs $INST_DIR/CLIENT_DATA/UnInstall/Packages/JRE
mv -v $INST_DIR/CLIENT_DATA/CleanSilverlight.cmd $INST_DIR/CLIENT_DATA/UnInstall/Packages/Silverlight
mv -v $INST_DIR/CLIENT_DATA/X86/dotnet $INST_DIR/CLIENT_DATA/UnInstall/NET
mv -v $INST_DIR/CLIENT_DATA/X86/uninstall_flash_player-${FLASHVERSION}.exe $INST_DIR/CLIENT_DATA/UnInstall/Packages/Flash/uninstall_flash_player.exe
mv -v $INST_DIR/CLIENT_DATA/X86/uninstall_shock_player-${SHOCKVERSION}.exe $INST_DIR/CLIENT_DATA/UnInstall/Packages/Shockwave/uninstall_shock_player.exe
# move the opsi wrapper to the right dir (close the error window if nothing needs to be done)
mv -v $INST_DIR/CLIENT_DATA/opsi-WinPKG.exe $INST_DIR/CLIENT_DATA/Install/
# change linefeed of bat & xml files to work correctly
find $INST_DIR/CLIENT_DATA -name *.bat -print0 | xargs -0 unix2dos
find $INST_DIR/CLIENT_DATA -name package.xml -print0 | xargs -0 unix2dos