2.6 KiB
2.6 KiB
garden
Hosts in this repo are named after plants and flowers.
hosts
poppy (active)
- role: MacBook Air M1, personal/work machine
- system: nix-darwin, aarch64-darwin
- location: daily driver
muscari (planned migration)
- role: linux server, k3s cluster
- system: NixOS, x86_64-linux
- location: iscg infra
rosemary (planned)
- role: backup VM
- system: NixOS, x86_64-linux
structure
flake.nix— entry point, dispatchesmkNixosandmkDarwinper hosthosts/<name>/default.nix— per-host confighosts/common/default.nix— shared NixOS confighosts/common-darwin/default.nix— shared darwin confighome/default.nix— shared home-manager config for usermichaotic(plan to migrate tomikllater)secrets/— sops-encrypted secrets per host
documentation
notes are split by topic under docs/:
docs/structure.md— high-level overview, where things godocs/poppy.md— MacBook specific (homebrew, system defaults)docs/muscari.md— server + k3s specificsdocs/shell.md— zsh, pure prompt, pluginsdocs/terminal.md— kitty + catppuccin themedocs/cheatsheet.md— quick commands reference
when adding a new host: copy docs/structure.md template, document hostname, role, packages unique to it.
migrations
nix-config-legacy/— previous muscari-only config (preserved for reference)
future plans
username migration
currently using michaotic as username (historical). plan to migrate to mikl across all hosts for consistency.
why not now:
- macOS: changing username requires careful handling of home folder, keychain, permissions
- linux: easier, but better to do in one coordinated change
when: after setting up proper backups and testing migration procedure
rosemary setup
currently flake.nix has rosemary commented out. need to:
- add disk config (likely similar to muscari)
- add users.users.michaotic.openssh.authorizedKeys
- test
nix flake check
documentation improvements
- create
docs/bootstrap.md— manual setup guide for fresh device without nix (emergency fallback)- list all CLI tools and how to install via brew/pnpm
- list all system defaults that need manual configuration
- explain which tools are nix-managed vs brew-managed
- create
docs/adding-host.md— checklist for adding a new host - create
docs/secrets.md— sops-nix setup when we get there - add migration notes to
docs/structure.mdas we learn patterns - screenshots/notes for things that aren't obvious (e.g. dock layout)