Linux-Tech-Tips/Scripts/install-brew.sh

51 lines
1.5 KiB
Bash
Raw Normal View History

2024-04-15 14:08:28 +02:00
#!/bin/bash
# This script uses the unsupported installation method descripted here:
# https://docs.brew.sh/Installation#untar-anywhere-unsupported
# This makes it possible to run this script as root and non-interactive.
# Script must be run as root
if [ "$(id -u)" != "0" ]; then
echo "This script must be run as root. Exiting.." 1>&2
exit 1
fi
# Define current user and home directory
user=$(stat -f%Su /dev/console)
HOME=/Users/$user
# Create homebrew directory in /opt
cd /opt
mkdir ./homebrew
# Download and extract homebrew
curl -L https://github.com/Homebrew/brew/tarball/master | tar xz --strip 1 -C homebrew
# Change ownership to current user
chown -R $user /opt/homebrew
# Update brew
sudo -u $user /opt/homebrew/bin/brew update --force --quite
# Export env
echo "export PATH=$PATH:/opt/homebrew/bin" >> "$HOME/.zshrc"
## Optional: Install XCode Command Line Tools
# Temporary file to make 'softwareupdate' list the Command Line Tools
touch /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
# Get the latest version of the Command Line Tools
latest="/usr/sbin/softwareupdate -l | grep -B 1 -E 'Command Line Tools' | awk -F '*' '/^ *\\*/ {print $2}' | sed -e 's/^ *Label: //' -e 's/^ *//' | sort -V | tail -n1"
# Install latest version
/usr/sbin/softwareupdate -i "${latest}"
# Set correct path
/usr/bin/xcode-select --switch /Library/Developer/CommandLineTools
# Delete temporary file
rm /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
exit 0