sereby.aio/builder-targets-cb.sh

70 lines
3.0 KiB
Bash

##############################################################################
# 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_<targetname> is possible.
#
# Abstract:
# target order: config, prepare, retrieve, create, package, publish, commit, cleanup
# callbacks: <none>
#
##############################################################################
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
}
function create() {
echo "Create"
builder_create
# create directories and extract the runtime packages
mkdir -p $INST_DIR/CLIENT_DATA/{Install,Config,X86/Dimpel}
mkdir -p $INST_DIR/CLIENT_DATA/UnInstall/Packages/{Flash,Shockwave}
7z x -o$INST_DIR/CLIENT_DATA/Install $INST_DIR/CLIENT_DATA/X86/svcpack/aio-runtimes.exe
7z x -o$INST_DIR/CLIENT_DATA/X86/Dimpel $INST_DIR/CLIENT_DATA/X86/dimpel/svcpack/aio-runtimes.exe
# update parts of the sereby with the Dimple package
# rsync -a $INST_DIR/CLIENT_DATA/X86/Dimpel/Packages/JRE/* $INST_DIR/CLIENT_DATA/Install/Packages/JRE
rsync -a $INST_DIR/CLIENT_DATA/X86/Dimpel/Packages/Flash/* $INST_DIR/CLIENT_DATA/Install/Packages/Flash
# rsync -a $INST_DIR/CLIENT_DATA/X86/Dimpel/Packages/Shockwave/* $INST_DIR/CLIENT_DATA/Install/Packages/Shockwave
# move the Windows 8 dotnet 2 - 3.5 in place
mv -v $INST_DIR/CLIENT_DATA/X86/win8dotnet35/sources/sxs $INST_DIR/CLIENT_DATA/Install/NET8
# 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
# 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/X86/dotnet $INST_DIR/CLIENT_DATA/UnInstall/NET
mv -v $INST_DIR/CLIENT_DATA/X86/uninstall_flash_player.exe $INST_DIR/CLIENT_DATA/UnInstall/Packages/Flash
mv -v $INST_DIR/CLIENT_DATA/X86/uninstall_shock_player.exe $INST_DIR/CLIENT_DATA/UnInstall/Packages/Shockwave
# delete the temp directory
rm -rf $INST_DIR/CLIENT_DATA/X86
}