diff --git a/images/macos/provision/assets/select-xamarin-sdk.sh b/images/macos/provision/assets/select-xamarin-sdk.sh new file mode 100644 index 00000000..45adc969 --- /dev/null +++ b/images/macos/provision/assets/select-xamarin-sdk.sh @@ -0,0 +1,22 @@ +#!/bin/bash +if [ -z "$1" ]; then + echo "No Xamarin SDK specified." + exit 0 +fi + +XAMARIN_SDK=$1 + +echo "Set Xamarin SDK to ${XAMARIN_SDK}" +FOLDERS_LIST=( + '/Library/Frameworks/Mono.framework/Versions' + '/Library/Frameworks/Xamarin.iOS.framework/Versions' + '/Library/Frameworks/Xamarin.Android.framework/Versions' + '/Library/Frameworks/Xamarin.Mac.framework/Versions' + ) + +for FOLDER in "${FOLDERS_LIST[@]}" +do + echo "Set Current folder for ${FOLDER}" + sudo rm -f ${FOLDER}/Current + sudo ln -s ${FOLDER}/${XAMARIN_SDK} ${FOLDER}/Current +done \ No newline at end of file diff --git a/images/macos/provision/configuration/finalize-vm.sh b/images/macos/provision/configuration/finalize-vm.sh index b7cef4db..2cbcc2d3 100644 --- a/images/macos/provision/configuration/finalize-vm.sh +++ b/images/macos/provision/configuration/finalize-vm.sh @@ -16,6 +16,12 @@ fi # Put documentation to $HOME root cp $HOME/image-generation/output/software-report/systeminfo.txt $HOME/image-generation/output/software-report/systeminfo.md $HOME/ +# Put build vm assets scripts to proper directory +mkdir -p /usr/local/opt/$USER/scripts +mv $HOME/image-generation/assets/* /usr/local/opt/$USER/scripts + +find /usr/local/opt/$USER/scripts -type f -name "*\.sh" -exec chmod +x {} \; + # Clean up npm cache which collected during image-generation # we have to do that here because `npm install` is run in a few different places during image-generation npm cache clean --force diff --git a/images/macos/templates/macOS-10.13.json b/images/macos/templates/macOS-10.13.json index 9ebd56e6..3eda456d 100644 --- a/images/macos/templates/macOS-10.13.json +++ b/images/macos/templates/macOS-10.13.json @@ -43,6 +43,11 @@ "type": "shell", "inline": "mkdir ~/image-generation" }, + { + "type": "file", + "source": "./provision/assets", + "destination": "~/image-generation/" + }, { "type": "file", "source": "./tests", diff --git a/images/macos/templates/macOS-10.14.json b/images/macos/templates/macOS-10.14.json index c03cc72a..06e4dc7b 100644 --- a/images/macos/templates/macOS-10.14.json +++ b/images/macos/templates/macOS-10.14.json @@ -43,6 +43,11 @@ "type": "shell", "inline": "mkdir ~/image-generation" }, + { + "type": "file", + "source": "./provision/assets", + "destination": "~/image-generation/" + }, { "type": "file", "source": "./tests", diff --git a/images/macos/templates/macOS-10.15.json b/images/macos/templates/macOS-10.15.json index cf49ef57..554ad026 100644 --- a/images/macos/templates/macOS-10.15.json +++ b/images/macos/templates/macOS-10.15.json @@ -43,6 +43,11 @@ "type": "shell", "inline": "mkdir ~/image-generation" }, + { + "type": "file", + "source": "./provision/assets", + "destination": "~/image-generation/" + }, { "type": "file", "source": "./tests", diff --git a/images/macos/templates/macOS-11.0.json b/images/macos/templates/macOS-11.0.json index 585a9354..2a9b691b 100644 --- a/images/macos/templates/macOS-11.0.json +++ b/images/macos/templates/macOS-11.0.json @@ -43,6 +43,11 @@ "type": "shell", "inline": "mkdir ~/image-generation" }, + { + "type": "file", + "source": "./provision/assets", + "destination": "~/image-generation/" + }, { "type": "file", "source": "./tests", diff --git a/images/win/scripts/Installers/Finalize-VM.ps1 b/images/win/scripts/Installers/Finalize-VM.ps1 index 4e7a260c..d0bb3d26 100644 --- a/images/win/scripts/Installers/Finalize-VM.ps1 +++ b/images/win/scripts/Installers/Finalize-VM.ps1 @@ -30,3 +30,7 @@ New-Item -Path $winInstallDir -ItemType Directory -Force # Remove AllUsersAllHosts profile Remove-Item $profile.AllUsersAllHosts -Force + +# Clean yarn and npm cache +yarn cache clean +npm cache clean --force \ No newline at end of file