############################################################################## # This optional file "builder-targets-cb.sh" will be called by builder.sh # # The targets will be called from thde opsi-builder using the following # order: config, prepare, retrieve, create, package, publish, commit, cleanup # You can overwrite the target functions in builder-targets-cb.sh # # You can define callback functions. The functions are called from # opsi-builder within processing a target # cb_package_makeproductfile # # You can use every variable defined in any configuration file or by # the defined builder script itself. Also, calling the predefined # targets builder_ is possible. # # Abstract: # target order: config, prepare, retrieve, create, package, publish, commit, cleanup # callbacks: # ############################################################################## function cleanup() { echo "Cleanup" builder_cleanup } function retrieve() { echo "Retrieve" # work around big file download for verison change local olddir=`echo $DIST_CACHE_DIR | sed -e 's/\/[^\/]*$//'` echo $olddir mv $olddir/${PN}-* tempsereby mv tempsereby $DIST_CACHE_DIR builder_retrieve } write_svcpack_file() { local control_file=$1 local control_section=$2 local control_option=$3 local control_value=$4 sed -i -e "/^\[$control_section\]/,/^\[.*\]/ s|^\($control_option[ \t]*=[ \t]*\).*$|\1$control_value|" "$control_file" } patch_package_xml() { local xml_file=$1 local xml_path=$2 local xml_value=$3 mv ${xml_file} ${xml_file}.old cat ${xml_file}.old | tidy -utf8 -xml -w 255 -i -c -q -asxml | xmlstarlet ed -O -u "${xml_path}" -v "${xml_value}" | sed -e 's!>!>!g' -e 's!<! ${xml_file} rm ${xml_file}.old } patch_delete_xml() { local xml_file=$1 local xml_path=$2 mv ${xml_file} ${xml_file}.old cat ${xml_file}.old | tidy -utf8 -xml -w 255 -i -c -q -asxml | xmlstarlet ed -O -d "${xml_path}" | sed -e 's!>!>!g' -e 's!<! ${xml_file} rm ${xml_file}.old } tidy_xml() { local xml_file=$1 local xml_path=$2 local xml_value=$3 echo ${xml_file} mv ${xml_file} ${xml_file}.old cat ${xml_file}.old | tidy -utf8 -xml -w 255 -i -c -q -asxml | sed -e 's!>!>!g' -e 's!<! ${xml_file} rm ${xml_file}.old } function create() { echo "Create" builder_create # ========================================================================================================== # 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/${DL_FILE[7]} # ========================================================================================================== # Place some tools for later use into the packages dir # ========================================================================================================== mv -v $INST_DIR/CLIENT_DATA/X86/GNU $INST_DIR/CLIENT_DATA/Install/Packages/GNU mv -v $INST_DIR/CLIENT_DATA/X86/Unlocker $INST_DIR/CLIENT_DATA/Install/Packages/Unlocker # ========================================================================================================== # sed everything to disabled # ========================================================================================================== sed -e 's!\"1\"!\"0\"!g' -e 's!maximized=\"0\"!maximized=\"1\"!' $INST_DIR/CLIENT_DATA/WinPKG.xml > $INST_DIR/CLIENT_DATA/Config/WinPKG.xml rm $INST_DIR/CLIENT_DATA/WinPKG.xml # ========================================================================================================== # 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[8]} sources/sxs -r 7z x -o$INST_DIR/CLIENT_DATA/X86/win8xdotnet35 $INST_DIR/CLIENT_DATA/X86/${DL_FILE[8]} #7z x -o$INST_DIR/CLIENT_DATA/X86/win8xdotnet35/sources/sxs $INST_DIR/CLIENT_DATA/X86/win8xdotnet35/sources/sxs/microsoft-windows-netfx3-ondemand-package.cab #7z x -y -o$INST_DIR/CLIENT_DATA/X86/win8xdotnet35 $INST_DIR/CLIENT_DATA/X86/${DL_FILE[9]} sources/sxs -r 7z x -y -o$INST_DIR/CLIENT_DATA/X86/win8xdotnet35 $INST_DIR/CLIENT_DATA/X86/${DL_FILE[9]} #7z x -y -o$INST_DIR/CLIENT_DATA/X86/win8xdotnet35/sources/sxs $INST_DIR/CLIENT_DATA/X86/win8xdotnet35/sources/sxs/microsoft-windows-netfx3-ondemand-package.cab #rm -f $INST_DIR/CLIENT_DATA/X86/win8xdotnet35/sources/sxs/microsoft-windows-netfx3-ondemand-package.cab # 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 mv -v $INST_DIR/CLIENT_DATA/X86/win8xdotnet35 $INST_DIR/CLIENT_DATA/Install/NET/WIN8.X # ========================================================================================================== # 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[22]} # ========================================================================================================== # Integrate .net for win 8.0 into winpkg # ========================================================================================================== # create the needed install cmd script for win 8.x echo "@echo off" > $INST_DIR/CLIENT_DATA/Install/NET/NETforWin8/NETEnable.bat echo "SET NETDIR=%~dp0" >> $INST_DIR/CLIENT_DATA/Install/NET/NETforWin8/NETEnable.bat echo "cd %NETDIR%\.." >> $INST_DIR/CLIENT_DATA/Install/NET/NETforWin8/NETEnable.bat echo "SET NETPARENTDIR=%cd%" >> $INST_DIR/CLIENT_DATA/Install/NET/NETforWin8/NETEnable.bat echo "echo Installing .NET Framwork 2.0 - 3.5.1" >> $INST_DIR/CLIENT_DATA/Install/NET/NETforWin8/NETEnable.bat #echo "dism /online /enable-feature /featurename:NetFx3 /All /Source:%NETPARENTDIR%\WIN8.X /LimitAccess" >> $INST_DIR/CLIENT_DATA/Install/NET/NETforWin8/NETEnable.bat echo "%NETPARENTDIR%\WIN8.X/dotNetFx35_WX_8_x86_x64.exe /ai" >> $INST_DIR/CLIENT_DATA/Install/NET/NETforWin8/NETEnable.bat echo "" >> $INST_DIR/CLIENT_DATA/Install/NET/NETforWin8/NETEnable.bat # ========================================================================================================== # Replace the General Runtimes with the Msi version off GeosOne # ========================================================================================================== if [ "$GENERALUPDATE" = "1" ]; then rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes mv -v $INST_DIR/CLIENT_DATA/X86/Basic $INST_DIR/CLIENT_DATA/Install/Packages/BasicRuntimes/ fi # ========================================================================================================== # integrate Adobe AIR # ========================================================================================================== mv -v $INST_DIR/CLIENT_DATA/X86/air_${AIRVERSION}_win.exe $INST_DIR/CLIENT_DATA/Install/Packages/Air/air_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 sed -e 's/.*<\/settings>.*/\t\n&/' -i $INST_DIR/CLIENT_DATA/Config/WinPKG.xml patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/Air/package.xml "/package/check[@type='file']/@value" "${AIRVERSION}" patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/Air/package.xml "/package[@id='AdobeAir']/@name" "Adobe AIR v${AIRVERSION}" # Adobe AIR Installer not working very good from network share so create a sfx file that places the installer into a temp and let it run locally 7z a $INST_DIR/CLIENT_DATA/Install/Packages/Air/AdobeAIR.7z $INST_DIR/CLIENT_DATA/Install/Packages/Air/air_win.exe 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/air_win.exe $INST_DIR/CLIENT_DATA/Install/Packages/Air/7zip_config.txt $INST_DIR/CLIENT_DATA/Install/Packages/Air/AdobeAIR.7z # ========================================================================================================== # Update Java # ========================================================================================================== if [ "$JRE8UPDATE" = "1" ]; then mkdir -p $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/{x86,x64} rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/*/*.exe rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/*/jre.msi rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/*/silent.bat rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/*.xml mv -v $INST_DIR/CLIENT_DATA/Sereby_JRE8_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/package.xml mv -v $INST_DIR/CLIENT_DATA/Sereby_JRE8_x86_silent.bat $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/x86/silent.bat mv $INST_DIR/CLIENT_DATA/X86/jre8u${JRE8UVERSION}-b${JRE8BUILD}-x86.msi $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/x86/jre.msi mv -v $INST_DIR/CLIENT_DATA/Sereby_JRE8_x64_silent.bat $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/x64/silent.bat mv $INST_DIR/CLIENT_DATA/X86/jre8u${JRE8UVERSION}-b${JRE8BUILD}-x64.msi $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/x64/jre.msi patch_delete_xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/package.xml "/package/check[@type='os']" patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/package.xml "/package/variable[@name='NAME']/@value" "OpenJDK Runtime Environment 8 Update ${JRE8UVERSION}" patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/package.xml "/package/variable[@name='BUILD']/@value" "${JRE8VERSION}" fi sed -e 's!/s!/s REBOOT=Suppress!' -i $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/package.xml sed -e 's/.*<\/settings>.*/\t\n&/' -i $INST_DIR/CLIENT_DATA/Config/WinPKG.xml if [ "$JRE11UPDATE" = "1" ]; then mkdir -p $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/{x86,x64} rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/*.exe rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/silent.bat rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/*/*.exe rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/*/jre.msi rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/*/silent.bat rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/*.xml mv -v $INST_DIR/CLIENT_DATA/Sereby_JRE11_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/package.xml mv -v $INST_DIR/CLIENT_DATA/Sereby_JRE11_x86_silent.bat $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/x86/silent.bat mv $INST_DIR/CLIENT_DATA/X86/jre${JRE11UVERSION}-b${JRE11BUILD}-x86.msi $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/x86/jre.msi mv -v $INST_DIR/CLIENT_DATA/Sereby_JRE11_x64_silent.bat $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/x64/silent.bat mv $INST_DIR/CLIENT_DATA/X86/jre${JRE11UVERSION}-b${JRE11BUILD}-x64.msi $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/x64/jre.msi patch_delete_xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/package.xml "/package/check[@type='os']" patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/package.xml "/package/variable[@name='NAME']/@value" "OpenJDK Runtime Environment ${JRE11UVERSION}" patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/package.xml "/package/variable[@name='BUILD']/@value" "${JRE11VERSION}" fi sed -e 's!/s!/s REBOOT=Suppress!' -i $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/package.xml sed -e '/wmic.*/a wmic product where \"Name like \x27%%Hotspot %1%%\x27\" call uninstall' -i $INST_DIR/CLIENT_DATA/Install/Packages/JRE/uninstall.bat # ========================================================================================================== # Update Flash # ========================================================================================================== if [ "$FLASHUPDATE" = "1" ]; then rm -f $INST_DIR/CLIENT_DATA/Install/Packages/Flash/*.exe mv $INST_DIR/CLIENT_DATA/X86/install_flash_player-${FLASHVERSION}.exe $INST_DIR/CLIENT_DATA/Install/Packages/Flash/install_flash_player.exe mv $INST_DIR/CLIENT_DATA/X86/install_flash_player_ax-${FLASHAXVERSION}.exe $INST_DIR/CLIENT_DATA/Install/Packages/Flash/install_flash_player_ax.exe patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml "/package/variable[@name='VERSION']/@value" "${FLASHVERSION}" patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml "/package/variable[@name='VERSION_FILE']/@value" "${FLASHVERSION//./_}" patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml "/package/variable[@name='VERSION_FILE_AX']/@value" "${FLASHAXVERSION//./_}" 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 mkdir -p $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave rm -f $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/*.msi mv -v $INST_DIR/CLIENT_DATA/AdobeSW_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/package.xml mv $INST_DIR/CLIENT_DATA/X86/sw_lic_full_installer-${SHOCKVERSION}.msi $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/sw_lic_full_installer.msi patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/package.xml "/package/variable[@name='BUILD']/@value" "${SHOCKVERSION//./}" patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave/package.xml "/package[@id='AdobeShock']/@name" "Adobe Shockwave Player v${SHOCKVERSION}" fi # ========================================================================================================== # Update Silverlight # ========================================================================================================== if [ "$SILVERUPDATE" = "1" ]; then rm -f $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/*.exe mv $INST_DIR/CLIENT_DATA/X86/Silverlight-${SILVERVERSION}.exe $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/Silverlight.exe mv $INST_DIR/CLIENT_DATA/X86/Silverlight_x64-${SILVERVERSION}.exe $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/Silverlight_x64.exe patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/package.xml "/package/variable[@name='NAME']/@value" "Microsoft Silverlight v${SILVERVERSION}" patch_package_xml $INST_DIR/CLIENT_DATA/Install/Packages/Silverlight/package.xml "/package/variable[@name='VERSION']/@value" "${SILVERVERSION}" fi # ========================================================================================================== # Update J Sharp and add F Sharp # ========================================================================================================== if [ "$RICKTENDOJSHARPUPDATE" = "1" ]; then rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/jsredist mv $INST_DIR/CLIENT_DATA/X86/Ricktendo/vjsharp $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 mv $INST_DIR/CLIENT_DATA/X86/Ricktendo/fsharp $INST_DIR/CLIENT_DATA/Install/Packages/fsredist/ mv -v $INST_DIR/CLIENT_DATA/Ricktendo_FS_package.xml $INST_DIR/CLIENT_DATA/Install/Packages/fsredist/package.xml sed -e 's/.*<\/settings>.*/\t\n&/' -i $INST_DIR/CLIENT_DATA/Config/WinPKG.xml # ========================================================================================================== # Update .NET 4.6 with Ricktendo # ========================================================================================================== if [ "$RICKTENDONET46UPDATE" = "1" ]; then rm -rf $INST_DIR/CLIENT_DATA/Install/NET/4.6* mkdir -p $INST_DIR/CLIENT_DATA/Install/NET/4.6 #mkdir -p $INST_DIR/CLIENT_DATA/X86/net46 #7z x -o$INST_DIR/CLIENT_DATA/X86/net46 $INST_DIR/CLIENT_DATA/X86/${DL_FILE[23]} 7z x -o$INST_DIR/CLIENT_DATA/Install/NET/4.6 $INST_DIR/CLIENT_DATA/X86/${DL_FILE[23]} #7z x -o$INST_DIR/CLIENT_DATA/Install/NET/4.6 $INST_DIR/CLIENT_DATA/X86/net46/*.exe 7z x -y -o$INST_DIR/CLIENT_DATA/Install/NET/4.6 $INST_DIR/CLIENT_DATA/X86/${DL_FILE[24]} mv -v $INST_DIR/CLIENT_DATA/Ricktendo_NET46_package.xml $INST_DIR/CLIENT_DATA/Install/NET/4.6/package.xml #else #rm $INST_DIR/CLIENT_DATA/Ricktendo_NET46_package.xml #mv -v $INST_DIR/CLIENT_DATA/Sereby_NET_package.xml $INST_DIR/CLIENT_DATA/Install/NET/4.8/package.xml fi # ========================================================================================================== # Update MSVC # ========================================================================================================== if [ "$MSVCUPDATE" = "1" ]; then rm -rf $INST_DIR/CLIENT_DATA/Install/Packages/MSVC mv -v $INST_DIR/CLIENT_DATA/X86/MSVC $INST_DIR/CLIENT_DATA/Install/Packages/MSVC #else #patch_delete_xml $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml "/package/install/cmd[@param='2005']" #patch_delete_xml $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml "/package/install/cmd[@param='2008']" #sed -e 's!vcredist.msi!Install.cmd!' -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml #mv -v $INST_DIR/CLIENT_DATA/MSVC05_x64_Install.cmd $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/x64/msvc_05/Install.cmd #mv -v $INST_DIR/CLIENT_DATA/MSVC05_x86_Install.cmd $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/x86/msvc_05/Install.cmd #sed -e 's!vc_red.msi!Install.cmd!' -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/package.xml #mv -v $INST_DIR/CLIENT_DATA/MSVC08_x64_Install.cmd $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/x64/msvc_08/Install.cmd #mv -v $INST_DIR/CLIENT_DATA/MSVC08_x86_Install.cmd $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/x86/msvc_08/Install.cmd #sed -e 's!2008!2013!' -i $INST_DIR/CLIENT_DATA/Install/Packages/MSVC/uninstall_all.bat 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/ # ========================================================================================================== # Correct linefeed in config # ========================================================================================================== for file in `find $INST_DIR/CLIENT_DATA/Install -type f -name "package.xml"` do echo "Cleanup $file" tidy_xml $file unix2dos $file done tidy_xml $INST_DIR/CLIENT_DATA/Config/WinPKG.xml unix2dos $INST_DIR/CLIENT_DATA/Config/WinPKG.xml # ========================================================================================================== # 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/Install/WinPKG.xml 7z a $INST_DIR/CLIENT_DATA/X86/sereby/aio-runtimes.7z $INST_DIR/CLIENT_DATA/Install/* rm $INST_DIR/CLIENT_DATA/Install/WinPKG.xml mv -v $INST_DIR/CLIENT_DATA/AIO_7zip_config.txt $INST_DIR/CLIENT_DATA/X86/sereby/7zip_config.txt mkdir -p $OPSI_REPOS_PRODUCT_DIR cat $INST_DIR/CLIENT_DATA/X86/7ZipSFX/7zsd_All.sfx $INST_DIR/CLIENT_DATA/X86/sereby/7zip_config.txt $INST_DIR/CLIENT_DATA/X86/sereby/aio-runtimes.7z > $OPSI_REPOS_PRODUCT_DIR/$OPSI_REPOS_FILE_PATTERN.exe fi # ========================================================================================================== # Disable Java Update check # ========================================================================================================== echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/disable.bat echo "if exist \"%PROGRAMFILES%\Java\jre8\bin\jqs.exe\" \"%PROGRAMFILES%\Java\jre8\bin\jqs.exe\" -unregister" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/disable.bat echo "if exist \"%PROGRAMFILES(x86)%\Java\jre8\bin\jqs.exe\" \"%PROGRAMFILES(x86)%\Java\jre8\bin\jqs.exe\" -unregister" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/disable.bat echo "REG DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v SunJavaUpdateSched /f" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/disable.bat echo "REG DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run /v SunJavaUpdateSched /f" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/disable.bat echo "verify" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/disable.bat echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/disable.bat sed -e 's/.*<\/install>.*/\t\t\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/package.xml tidy_xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v8/package.xml echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/disable.bat echo "if exist \"%PROGRAMFILES%\Java\jre11\bin\jqs.exe\" \"%PROGRAMFILES%\Java\jre11\bin\jqs.exe\" -unregister" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/disable.bat echo "if exist \"%PROGRAMFILES(x86)%\Java\jre11\bin\jqs.exe\" \"%PROGRAMFILES(x86)%\Java\jre11\bin\jqs.exe\" -unregister" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/disable.bat echo "REG DELETE HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v SunJavaUpdateSched /f" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/disable.bat echo "REG DELETE HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Run /v SunJavaUpdateSched /f" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/disable.bat echo "verify" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/disable.bat echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/disable.bat sed -e 's/.*<\/install>.*/\t\t\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/package.xml tidy_xml $INST_DIR/CLIENT_DATA/Install/Packages/JRE/v11/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 -e 's/.*<\/install>.*/\t\t\n\n<\/cmd>\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml sed -e 's/.*<\/install>.*/\t\t\n\n<\/cmd>\n&/' -i $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/Flash/disable32.bat echo "copy /y /v \"%~dp0mms.cfg\" \"%WINDIR%\system32\Macromed\Flash\mms.cfg\"" >> $INST_DIR/CLIENT_DATA/Install/Packages/Flash/disable32.bat echo "" >> $INST_DIR/CLIENT_DATA/Install/Packages/Flash/disable32.bat echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/Packages/Flash/disable64.bat 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 tidy_xml $INST_DIR/CLIENT_DATA/Install/Packages/Flash/package.xml # ========================================================================================================== # Posthooks: change linefeed, Set exec bit, delete temp # ========================================================================================================== find $INST_DIR/CLIENT_DATA -name *.bat -print0 | xargs -0 unix2dos find $INST_DIR/CLIENT_DATA -name *.cmd -print0 | xargs -0 unix2dos find $INST_DIR/CLIENT_DATA -name package.xml -print0 | xargs -0 unix2dos # set exec bit on executeables find $INST_DIR/CLIENT_DATA/Install/ -type f -print0 | xargs -0 chmod +x find $INST_DIR/CLIENT_DATA/UnInstall/ -type f -print0 | xargs -0 chmod +x find $INST_DIR/CLIENT_DATA -type d -print0 | xargs -0 chmod 755 -v # delete the temp directory rm -rf $INST_DIR/CLIENT_DATA/X86 }