-
Notifications
You must be signed in to change notification settings - Fork 159
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
env/darwin/macstadium: rewrite setup notes
Generally clean up the notes: - Restructure them so there's less bouncing around between preferences and Terminal and stuff - include the stage0 script for non-VMs - Remove obsolete Xcode instructions - Convert to Markdown For golang/go#49149. Change-Id: I893ef85924fca552c8d179146f9db6b1b9b4912f Reviewed-on: https://go-review.googlesource.com/c/build/+/402737 Reviewed-by: Dmitri Shuralyov <[email protected]> Run-TryBot: Heschi Kreinick <[email protected]> Auto-Submit: Heschi Kreinick <[email protected]> Reviewed-by: Carlos Amedee <[email protected]> TryBot-Result: Gopher Robot <[email protected]>
- Loading branch information
Showing
4 changed files
with
96 additions
and
68 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,94 @@ | ||
# For VMs only # | ||
|
||
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 | ||
|
||
# For all machine types | ||
|
||
- 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 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 | ||
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 2 | ||
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 | ||
``` | ||
|
||
`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` | ||
|
||
Put a builder key in the usual spot. |