| Machine | Name | OS | System | Stable |
|---|---|---|---|---|
| B450M Pro4 | B450M-Pro4 | NixOS | x86_64-linux | ◎ |
| UM790 Pro | UM790-Pro | NixOS | x86_64-linux | ◎ |
| X870 Steel Legend WiFi | X870-Steel-Legend-WiFi | NixOS (WSL) | x86_64-linux | ◎ |
| Pi 5 | pi5 | NixOS | aarch64-linux | △ |
| OCI Ampere A1 VM | oci-a1 | NixOS | aarch64-linux | △ |
| M2 MacBook Air | M2-MacBook-Air | macOS | aarch64-darwin | ◎ |
| Galaxy S23 FE | Galaxy-S23FE | Android (nix-on-droid) | aarch64-linux | △ |
flake.nix # Entry point and host table
flake-module.nix # Generates nixos/darwin/nix-on-droid outputs from hosts
├── systems/
│ ├── common.nix # Shared system imports and activation hooks
│ ├── nixos/
│ │ ├── common.nix # Shared NixOS host imports
│ │ ├── desktop.nix # Shared NixOS desktop system settings
│ │ ├── fonts.nix # Shared NixOS font settings
│ │ ├── input-method.nix # Shared NixOS input method settings
│ │ ├── services/ # Host/system service bundles (microVMs, secrets, etc.)
│ │ ├── B450M-Pro4/ # NixOS host config (services, disko, impermanence)
│ │ ├── UM790-Pro/ # NixOS host config (boot, network, locale)
│ │ ├── X870-Steel-Legend-WiFi/ # NixOS-WSL host config (WSL, locale)
│ │ ├── pi5/ # NixOS host config (headless Pi 5)
│ │ └── oci-a1/ # OCI Ampere A1 NixOS host config (disko, boot, network)
│ ├── darwin/
│ │ ├── common.nix # Shared macOS host imports
│ │ ├── desktop.nix # Shared macOS desktop system settings
│ │ ├── homebrew.nix # Shared macOS Homebrew app set
│ │ └── M2-MacBook-Air/ # macOS host config
│ └── android/
│ └── Galaxy-S23FE/ # nix-on-droid host config
├── homes/
│ ├── common.nix # Shared Home Manager glue
│ ├── nixos/ # NixOS Home Manager host config
│ ├── darwin/ # macOS Home Manager host config
│ └── android/ # nix-on-droid home hook
├── applications/ # Directly imported Home Manager app configs (git, tmux, browsers, niri, misc)
├── modules/
│ ├── flake/ # Flake modules (registries, packages, devshell, treefmt)
│ ├── profiles/
│ │ ├── nixos/ # NixOS profiles (cli, cli-server, gui, laptop)
│ │ └── home/ # Home Manager profiles (base, terminal, cli, development, desktop)
│ ├── nixos/ # Reusable optioned NixOS modules (docker, tailscale, security, kubo)
│ ├── darwin/ # Reusable optioned nix-darwin modules
│ ├── shared/ # Shared system modules across platforms (nix, nixpkgs)
│ ├── nix-on-droid/ # nix-on-droid shared modules
│ └── home/ # Home Manager shared modules and optioned feature modules
├── overlays/ # Custom packages (overlay)
├── agents/ # Agent skills config docs (skills: github:yutakobayashidev/skills)
├── nvim/ # Neovim config (Lua)
└── zsh/ # Zsh config
- docs/systems/B450M-Pro4.md - NixOS installation guide
- docs/systems/UM790Pro.md - NixOS installation guide
- docs/systems/X870-Steel-Legend-WiFi.md - NixOS-WSL installation guide
- docs/systems/Pi5.md - NixOS installation guide for Raspberry Pi 5
- docs/systems/M2-MacBook-Air.md - nix-darwin installation guide for macOS
- docs/systems/Galaxy-S23FE.md - nix-on-droid installation guide for Android
- docs/B450M-Pro4-HDD-service-storage.md - B450M-Pro4 HDD service storage setup
- docs/B450M-Pro4-s3s.md - s3s (Splatoon 3 stats uploader) workflow
- docs/Ventoy-NixOS-Minimal.md - Ventoy USB for NixOS installation
- docs/music-workflow.md - CD ripping and music library management
# Apply changes (NixOS or macOS)
nix run .#switch
# Build without applying
nix run .#build
# Format all files (nix, lua, sh)
nix run .#fmt
# Update flake inputs
nix flake updatenix run .#switch- Build and apply NixOS + Home Manager configuration (sudo nixos-rebuild switch)nix run .#build- Build configuration without applyingnix run .#fmt- Format configured file types (Nix, Lua, shell, TOML, Python, etc.) via treefmt
nix run .#switch- Build and apply nix-darwin + Home Manager configuration (sudo darwin-rebuild switch)nix run .#build- Build configuration without applyingnix run .#fmt- Format configured file types (Nix, Lua, shell, TOML, Python, etc.) via treefmt
Both use nix-output-monitor for build output.
- WM: Niri (scrollable tiling Wayland compositor)
- IME: fcitx5 + hazkey (LLM-powered Japanese input)
- YubiKey: PAM U2F authentication (polkit, swaylock)
- Development: Docker, Tailscale, Android development environment, VirtualBox on UM790-Pro
- Self-hosted services: Nextcloud, Immich, Gitea, Home Assistant, ArchiveBox, n8n, Grafana, Prometheus, Loki, Claude Code telemetry, and comin on B450M-Pro4
- Agent microVMs: Hermes Agent on UM790-Pro and OpenClaw on B450M-Pro4 via microvm.nix
- Homebrew: GUI app management via casks (Ghostty, Chrome, OrbStack, etc.)
- brew-nix: Homebrew cask packages managed as Nix packages (version pinning & rollback)
- Touch ID: sudo authentication support
- 1Password: Shell Plugins (gh, awscli2)
- AI Development: claude-code, codex, grok, opencode, ccusage
- Version Control: git, lazygit, jujutsu (jj), git-lfs, git-wt
- Core CLI: ripgrep, fzf, jq, zoxide, lsd, btop, yazi, tmux
- Communication: halloy (IRC)
- Editors: Neovim, VSCode
- Terminal: Ghostty, Zsh + Oh My Zsh
- Network: nmap, bandwhich, speedtest-cli
Agent skills are managed via agent-skills-nix.
- Config:
modules/home/coding-agents/agent-skills - Local skills:
github:yutakobayashidev/skills(別リポジトリ) - External skills: anthropics/skills, vercel-labs/skills, ast-grep/claude-skill, mattpocock/skills, fa0311/twitter_api_safe_relay_skills, obra/superpowers
- Deploy targets:
~/.agents/skills,~/.config/claude/skills,~/.config/codex/skills, Hermes microVM/var/lib/hermes/.hermes/skills, OpenClaw microVM/persist/openclaw/.openclaw/workspace/skills
Avoid maintaining a fixed skill list here. Treat modules/home/coding-agents/agent-skills as the source of truth.
Generated with nix-topology.
nix build .#topology.x86_64-linux.config.output --out-link resultProject templates are managed in ashiba. See the repository for available templates.