Goal
Make the Mac Studio the primary home machine and compute host, keep Ubuntu as the primary development workstation inside the Studio, keep the M4 Mac mini as the Hermes runtime, and use the future MacBook Air as the mobile gateway into the home lab.
Current state: Pre-arrival staging only. PR #116 adds the guarded mac-studio profile. No live host, VM, route, service, Apple Account, Tailscale state, or Ollama model should change before the hardware-arrival gate opens.
Target topology
MacBook Air [mobile gateway]
|-- SSH / Screen Sharing --> Mac Studio
|-- SSH / Screen Sharing --> Mac Mini
|-- Tailscale SSH ---------> Mac Studio (as well as all VMs that are on Mac Studio)
`-- Tailscale SSH ---------> M4 Mac mini
Mac Studio [primary controller and compute]
|-- VMware + Vagrant ------> Ubuntu VM [inside Studio] playground
|
|-- Primary dev machine will Mac Studio itself (we will install dependencies using brew and mise, similar to the mac-mini)
|-- native macOS ----------> Ollama [local AI]
`-- SSH / Screen Sharing --> M4 Mac mini [Hermes runtime]
`-- Hermes operations --> Home lab
Rollout path (need to update the roll out path because at moment do not have a mac air)
[PR #116 stages the profile]
|
v
{Has Studio arrived?} -- no --> [STOP: preview and docs only]
|
yes
v
[Manual macOS + network setup]
|
v
[Apply with ARRIVED gate]
|
v
[Studio doctor]
|
v
[Back up + halt old Ubuntu VM]
|
v
[Rebuild Ubuntu inside Studio]
|
v
[Validate locally before Tailscale]
|
v
[Retire old node + enroll ubuntu-dev]
|
v
[CUTOVER doctor]
|
v
[MacBook Air remote QA]
|
v
[Activate four-host topology + sync]
Ownership map
| Device |
Primary role |
Dotfiles own |
Machine-owned state |
| Mac Studio |
Main controller, VM host, local AI |
mac-studio profile, shell, packages, VM commands, doctors |
Apple Account, Remote Login, Screen Sharing, Tailscale enrollment, SSH keys, Ollama models |
| Ubuntu VM |
Primary development workstation inside Studio |
Vagrant definition, guest provisioning, development config |
Project secrets, databases, VM-local credentials and data |
| MacBook Air |
Mobile gateway while away |
Existing mac-thin profile |
Apple Account, Tailscale enrollment, SSH keys |
| M4 Mac mini |
Hermes production runtime |
Existing guarded mac-mini profile |
Dedicated Apple Account, Hermes runtime state, production secrets |
Phase 0: finish staging
Phase 1: prepare the Studio
Phase 2: apply and verify the Studio profile
Phase 3: move Ubuntu into the Studio
Phase 4: remote-controller QA
Phase 5: activate the new topology
Acceptance criteria
Out of scope
- Additional VM definitions beyond Ubuntu.
- Switching the Mac mini Apple Account.
- Automatic Ollama model downloads or service startup.
- Production Hermes or home-lab service changes.
- Copying private keys, credentials, databases, or mutable application state between hosts.
Related
Goal
Make the Mac Studio the primary home machine and compute host, keep Ubuntu as the primary development workstation inside the Studio, keep the M4 Mac mini as the Hermes runtime, and use the future MacBook Air as the mobile gateway into the home lab.
Target topology
Rollout path (need to update the roll out path because at moment do not have a mac air)
Ownership map
mac-studioprofile, shell, packages, VM commands, doctorsmac-thinprofilemac-miniprofilePhase 0: finish staging
hd719approves its current head.machine-topology,dotfiles-sync,personal-ready, andsync-coding-promptsdefinitions on the current three-host topology until cutover.Phase 1: prepare the Studio
.envfiles, or production secrets between hosts.Phase 2: apply and verify the Studio profile
dotfiles-hdat~/Developer/dotfiles-hd.mac-studiodry-run and check.DOTFILES_MAC_STUDIO_ARRIVED=1.hosts/shared/macos/doctor.sh --profile mac-studio.~/.ollamamachine-owned.Phase 3: move Ubuntu into the Studio
ubuntu-devidentities together.ubuntu-dev, and verify the new host fingerprint.DOTFILES_MAC_STUDIO_CUTOVER=1 hosts/shared/macos/doctor.sh --profile mac-studio.Phase 4: remote-controller QA
mac-thinprofile and personal Apple Account.Phase 5: activate the new topology
machine-topologyrule after live cutover.dotfiles-sync,personal-ready, andsync-coding-promptsfor the verified four-host topology.Acceptance criteria
Out of scope
Related
hosts/mac-studio/README.mdhosts/ubuntu-dev/README.md