diff --git a/docs/k8s-migration.md b/docs/k8s-migration.md
index 24527d5..20ec9e0 100644
--- a/docs/k8s-migration.md
+++ b/docs/k8s-migration.md
@@ -152,6 +152,20 @@ tailscale status | grep registry
### Step 0.3: Create Zot Registry Ansible Role
+**Note:** Zot is NOT in homebrew (no formula or tap). Clone to `~/code/3rd/` on indri and build from source (requires Go).
+
+**Prerequisites on indri:**
+```bash
+# Ensure Go is installed (via mise or homebrew)
+ssh indri 'go version'
+
+# Clone zot repository
+ssh indri 'git clone https://github.com/project-zot/zot.git ~/code/3rd/zot'
+
+# Build (creates bin/zot-darwin-arm64)
+ssh indri 'cd ~/code/3rd/zot && make binary'
+```
+
**New files:**
```
ansible/roles/zot/
@@ -165,7 +179,8 @@ ansible/roles/zot/
**Key configuration (defaults/main.yml):**
```yaml
-zot_version: "2.1.0"
+zot_repo_dir: "/Users/erichblume/code/3rd/zot"
+zot_binary: "{{ zot_repo_dir }}/bin/zot-darwin-arm64"
zot_data_dir: "/Users/erichblume/zot"
zot_config_dir: "/Users/erichblume/.config/zot"
zot_port: 5000
@@ -238,8 +253,8 @@ zot_sync_registries:
mcquack.eblume.zot
ProgramArguments
-
- /opt/homebrew/bin/zot
+
+ {{ zot_binary }}
serve
{{ zot_config_dir }}/config.json