the Win 8.0 and win 8.1 .net trees can be combined into one tree so no check for win8.x incarnation needed for running dism

This commit is contained in:
Mario Fetka 2013-07-28 17:20:25 +02:00
parent c8c30be146
commit 1cc2f6abf4
1 changed files with 15 additions and 32 deletions

View File

@ -46,19 +46,13 @@ function create() {
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
# extract .net 8.0 now so the unix2dos dont change the extracted files
mkdir -p $INST_DIR/CLIENT_DATA/X86/win80dotnet35
7z x -o$INST_DIR/CLIENT_DATA/X86/win80dotnet35 $INST_DIR/CLIENT_DATA/X86/${DL_FILE[6]}
# 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/win80dotnet35/sources/sxs $INST_DIR/CLIENT_DATA/Install/NET/WIN8.0
# extract .net 8.1 now so the unix2dos dont change the extracted files
mkdir -p $INST_DIR/CLIENT_DATA/X86/win81dotnet35
7z x -o$INST_DIR/CLIENT_DATA/X86/win81dotnet35 $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/win81dotnet35/sources/sxs $INST_DIR/CLIENT_DATA/Install/NET/WIN8.1
mv -v $INST_DIR/CLIENT_DATA/X86/win8xdotnet35/sources/sxs $INST_DIR/CLIENT_DATA/Install/NET/WIN8.X
# 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
@ -95,34 +89,23 @@ function create() {
# remove the installer and package end tags
sed -e '/^\t<\/install>/d' -i $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
sed -e '/^<\/package>/d' -i $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
# append the win 8.0 install cmd via a cmd script that runns it
echo "<cmd path=\"_Install80.bat\" >" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
echo "<check type=\"os\" condition=\">\" value=\"6.2.9200.0\" />" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
echo "<check type=\"os\" condition=\"<\" value=\"6.3.9400.0\" />" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
echo "</cmd>" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
# append the win 8.1 install cmd via a cmd script that runns it
echo "<cmd path=\"_Install81.bat\" >" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
echo "<check type=\"os\" condition=\">\" value=\"6.3.9400.0\" />" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
# append the win 8.x install cmd via a cmd script that runs it
echo "<cmd path=\"_Install8X.bat\" >" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
echo "<check type=\"os\" condition=\">\" value=\"6.2.9200.0\" />" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
echo "</cmd>" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
# add back the install and package end tags
echo "</install>" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
echo "</package>" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/package.xml
# create the needed install cmd script for win 8.0
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install80.bat
echo "SET NETDIR=%~dp0" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install80.bat
echo "cd %NETDIR%\.." >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install80.bat
echo "SET NETPARENTDIR=%cd%" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install80.bat
echo "dism /online /enable-feature /featurename:NetFx3 /All /Source:%NETPARENTDIR%\WIN8.0 /LimitAccess" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install80.bat
# create the needed install cmd script for win 8.1
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install81.bat
echo "SET NETDIR=%~dp0" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install81.bat
echo "cd %NETDIR%\.." >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install81.bat
echo "SET NETPARENTDIR=%cd%" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install81.bat
echo "dism /online /enable-feature /featurename:NetFx3 /All /Source:%NETPARENTDIR%\WIN8.1 /LimitAccess" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install81.bat
# create the needed install cmd script for win 8.x
echo "@echo off" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install8X.bat
echo "SET NETDIR=%~dp0" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install8X.bat
echo "cd %NETDIR%\.." >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install8X.bat
echo "SET NETPARENTDIR=%cd%" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install8X.bat
echo "echo Installing .NET Framwork $NETVER" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install8X.bat
echo "dism /online /enable-feature /featurename:NetFx3 /All /Source:%NETPARENTDIR%\WIN8.X /LimitAccess" >> $INST_DIR/CLIENT_DATA/Install/NET/$NETVER/_Install8X.bat
done
# sed everything to disabled