2022-04-17 20:52:22 +02:00
|
|
|
#!/bin/sh
|
|
|
|
|
2024-12-03 00:16:34 +01:00
|
|
|
# Exit on error
|
|
|
|
set -e
|
|
|
|
|
2022-04-23 00:55:01 +02:00
|
|
|
# Path to your dotfiles.
|
|
|
|
export DOTFILES=$HOME/.dotfiles
|
2022-04-17 20:52:22 +02:00
|
|
|
|
|
|
|
echo "Setting up your Mac..."
|
|
|
|
|
|
|
|
# Check for Homebrew and install if we don't have it
|
|
|
|
if test ! $(which brew); then
|
|
|
|
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
|
|
|
|
2023-11-03 10:09:45 +01:00
|
|
|
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> $HOME/.zprofile
|
|
|
|
eval "$(/opt/homebrew/bin/brew shellenv)"
|
2022-04-17 20:52:22 +02:00
|
|
|
fi
|
|
|
|
|
|
|
|
# Update Homebrew recipes
|
|
|
|
brew update
|
|
|
|
|
|
|
|
# Install all our dependencies with bundle (See Brewfile)
|
|
|
|
brew tap homebrew/bundle
|
|
|
|
|
2023-10-29 17:50:49 +01:00
|
|
|
brew bundle --file ${DOTFILES}/macos/Brewfile
|
2022-04-17 20:52:22 +02:00
|
|
|
|
2022-05-21 22:03:56 +02:00
|
|
|
# Fix for https://github.com/Homebrew/homebrew-core/issues/74447
|
|
|
|
# gnupg is not really needed but marked as a dependency for pass
|
|
|
|
brew unlink gnupg
|
|
|
|
|
2024-12-02 23:16:21 +01:00
|
|
|
# Activate asimov to automatically exclude node_modules from TM backup
|
|
|
|
sudo brew services start asimov
|
|
|
|
|
2024-06-12 18:57:47 +02:00
|
|
|
# Enable corepack
|
|
|
|
corepack enable
|
|
|
|
|
2024-12-02 23:16:21 +01:00
|
|
|
# Herd setup
|
|
|
|
herd -n tld localhost
|
2022-04-17 20:52:22 +02:00
|
|
|
|
|
|
|
# Create a Sites directory
|
|
|
|
mkdir -p $HOME/git/clickbar
|
|
|
|
mkdir -p $HOME/git/konaktiva
|
|
|
|
mkdir -p $HOME/git/private
|
|
|
|
|
2024-12-02 23:16:21 +01:00
|
|
|
# Mark directories for herd
|
|
|
|
herd park $HOME/git/clickbar
|
|
|
|
herd park $HOME/git/private
|
2024-04-02 09:11:42 +02:00
|
|
|
|
2024-12-02 23:16:21 +01:00
|
|
|
# Install global Composer packages
|
|
|
|
composer global require tightenco/takeout
|
2023-01-15 00:41:32 +01:00
|
|
|
|
2024-04-02 03:21:46 +02:00
|
|
|
read -p "Enter a name for your MacBook, typically 'MacBook YOURNAME' [default: MacBook cb.]: " computername
|
|
|
|
computername=${computername:-MacBook cb.}
|
|
|
|
echo "Setting hostname to $computername"
|
|
|
|
|
|
|
|
# Set computer name (as done via System Preferences → Sharing)
|
|
|
|
sudo scutil --set ComputerName "$computername"
|
|
|
|
sudo scutil --set HostName "$computername"
|
|
|
|
sudo scutil --set LocalHostName "$computername"
|
|
|
|
sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.smb.server NetBIOSName -string "$computername"
|
|
|
|
|
2022-04-17 20:52:22 +02:00
|
|
|
# Call the general install script to setup zsh etc.
|
|
|
|
source install.sh
|
2024-12-03 00:03:15 +01:00
|
|
|
|
|
|
|
echo "> FINISHED 🏁 The setup will now set some macOS preferences and exit afterwards."
|
|
|
|
read -p "Press enter to continue"
|
|
|
|
|
|
|
|
# Set macOS preferences - we will run this last because this will reload the shell
|
|
|
|
source ${DOTFILES}/macos/.macos
|