Turn on the computer.
Click through setup, connect to wifi, etc.
Full name: Gopher Gopherson
Account name: gopher
Password: with an exclamation mark
Decline as much as possible.
Set time zone to NY.
Open a terminal.
sudo visudo
Change %admin ALL=(ALL) ALL to %admin ALL=(ALL) NOPASSWD: ALL.
sudo nvram boot-args="-v"
Install Go: download the latest tarball from go.dev/dl.
tar -xf Downloads/go*.darwin-*.tar
mv go $HOME/goboot
Create $HOME/stage0.sh.
For physical machines
#!/bin/bash
set -x
mkdir -p ~/go/bin;
while true; do
rm -f ~/go/bin/buildlet
url="https://storage.googleapis.com/go-builder-data/buildlet.darwin-arm64"
while ! curl -f -o ~/go/bin/buildlet "$url"; do
echo
echo "curl failed to fetch $url"
echo "Sleeping before retrying..."
sleep 5
done
chmod +x ~/go/bin/buildlet
mkdir -p /tmp/buildlet
~/go/bin/buildlet --coordinator=farmer.golang.org --reverse-type host-darwin-arm64-XX_0 --halt=false --workdir=/tmp/buildlet;
sleep 2;
done
For QEMU VMs
#!/bin/bash
set -x
export GO_BUILDER_ENV=qemu_vm
mkdir -p ~/go/bin;
while true; do
rm -f ~/go/bin/buildlet
url="https://storage.googleapis.com/go-builder-data/buildlet.darwin-arm64"
while ! curl -f -o ~/go/bin/buildlet "$url"; do
echo
echo "curl failed to fetch $url"
echo "Sleeping before retrying..."
sleep 5
done
chmod +x ~/go/bin/buildlet
mkdir -p /tmp/buildlet
~/go/bin/buildlet --coordinator=farmer.golang.org --reverse-type host-darwin-arm64-XX-aws --halt=true --workdir=/tmp/buildlet;
sleep 2;
done
chmod +x $HOME/stage0.sh
open -a Terminal.app $HOME/stage0.shIn System Preferences:
Install XCode:
xip -x file.xip) and move the resulting Xcode folder to Applicationssudo xcode-select --switch /Applications/Xcode.appxcodebuild -version and wait for Xcode to be verified, which will take a long time.sudo xcodebuild -license acceptsudo xcode-select --installsudo xcode-select --switch /Library/Developer/CommandLineToolsInstall crypto/x509 test root:
curl -f -o /tmp/test_root.pem "https://storage.googleapis.com/go-builder-data/platform_root_cert.pem" security add-trusted-cert -d -r trustRoot -p ssl -k /Library/Keychains/System.keychain /tmp/test_root.pem
Put a builder key in the usual spot.