The Disk should be formatted with a case insensitive file system (default).
Install VMWare tools daemon.
The UI is supposed to be able to do this automatically, but it's broken as of writing.
Instead, mount darwin.iso from ISO/VMWARE TOOLS and run the installer from there.
open security preferences and click “Allow” on blocked software install from VMware
reboot
make sure you can run and see:
$ /Library/Application Support/VMware Tools/vmware-tools-daemon --cmd “info-get guestinfo.name” No value found
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 VMWare VMs
#!/bin/bash while true; do (curl -v http://172.17.20.2:8713/stage0/$(sw_vers -productVersion) | sh); sleep 5; done **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` - Run Automator. - Create a new Application. - Add a "run shell script" item with the command: `open -a Terminal.app $HOME/stage0.sh` - Save it to the desktop as "run-builder". In System Preferences: - Software Update > Advanced > disable checking for updates - Desktop & Screensaver > uncheck show screensaver - Energy Saver > never turn off display, don't automatically sleep, start up after power failure - Sharing > enable ssh (leave the default administrators setting) - Users & Groups > Gopher Gopherson > Login Items > add run-builder - Users & Groups > Login Options > auto-login Gopher Gopherson Install XCode: - Download Xcode from the Apple Developer site: https://stackoverflow.com/questions/10335747/how-to-download-xcode-dmg-or-xip-file. https://developer.apple.com/support/xcode/ is a more authoritative list of versions. (You don't want to log in to your account on the machine, so don't use the App Store.) - Extract it and move the resulting Xcode folder to Applications - run xcode-select: `sudo xcode-select --switch /Applications/Xcode.app` - run `xcodebuild -version` and wait for Xcode to be verified, which will take a long time. - accept the license: `sudo xcodebuild -license accept` - install the command line tools: `sudo xcode-select --install` - run xcode-select: `sudo xcode-select --switch /Library/Developer/CommandLineTools` Put a builder key in the usual spot.