install.fairie/home/.chezmoiscripts_disabled/disabled/executable_post-xcode.sh
2024-05-28 03:50:11 +00:00

55 lines
No EOL
2.4 KiB
Bash

#!/usr/bin/env bash
### Load AWS secrets
if [ -d /Applications ] && [ -d /System ] && [ ! -d /Applications/Xcode.app ]; then
### Remove old files
gum log -sl info 'Removing old ~/.xcodeinstall folder' && rm -rf ~/.xcodeinstall
### Ensure xcodeinstall installed
if ! command -v xcodeinstall > /dev/null; then
gum log -sl info 'Installing xcodeinstall'
brew install sebsto/macos/xcodeinstall
fi
### Authenticate
gum log -sl info 'Authenticating with AWS via xcodeinstall'
xcodeinstall authenticate -s "$AWS_DEFAULT_REGION"
### Download files
while read XCODE_DOWNLOAD_ITEM; do
if [[ "$XCODE_DOWNLOAD_ITEM" != *"Command Line Tools"* ]]; then
DOWNLOAD_ID="$(echo "$XCODE_DOWNLOAD_ITEM" | sed 's/^\[\(.*\)\] .*/\1/')"
gum log -sl info "Downloading $XCODE_DOWNLOAD_ITEM"
echo "$DOWNLOAD_ID" | xcodeinstall download -s "$AWS_DEFAULT_REGION"
fi
done < <(xcodeinstall list -s "$AWS_DEFAULT_REGION" | grep --invert-match 'Release Candidate' | grep --invert-match ' beta ' | grep ' Xcode \d\d ')
### Install Xcode
gum log -sl info 'Installing Xcode'
xcodeinstall install --name "$(basename "$(find ~/.xcodeinstall/download -maxdepth 1 -name "*.xip")")"
### Install Command Line Tools
# Commentted out because it is already installed by xcode-select in the provision.sh script
# xcodeinstall install --name "$(basename "$(find ~/.xcodeinstall/download -maxdepth 1 -name "*Command Line Tools*")")"
### Install Additional Tools
gum log -sl info 'Installing Additional Tools'
while read ADDITIONAL_TOOLS; do
hdiutil attach "$ADDITIONAL_TOOLS"
rm -rf "/Applications/Additional Tools"
cp -rf "/Volumes/Additional Tools" "/Applications/Additional Tools"
hdiutil detach "$(find /Volumes -name "Additional Tools")"
done < <(find ~/.xcodeinstall/download -name "Additional Tools*")
### Install Font Tools
gum log -sl info 'Installing Font Tools'
while read FONT_TOOLS; do
hdiutil attach "$FONT_TOOLS"
cd "$(find /Volumes -maxdepth 1 -name "*Font Tools*")"
sudo installer -pkg "$(find . -maxdepth 1 -name "*Font Tools*.pkg")" -target /
cd / && hdiutil detach "$(find /Volumes -maxdepth 1 -name "*Font Tools*")"
done < <(find ~/.xcodeinstall/download -name "Font Tools*")
### Remove cache / downloaded files
rm -rf ~/.xcodeinstall
fi