This repository manages the configuration for my personal and work infrastructure using Nix Flakes. It unifies system administration (NixOS, nix-darwin) and user environments (Home Manager) into a single, declarative codebase.
systems/: Contains host-specific configurations.common/: Shared modules, overlays, and configuration patterns.images/: Flake for generating installation media (e.g., SD card images).| Hostname | Type | Hardware | Description |
|---|---|---|---|
| zw | NixOS | IBM ThinkPad | Primary work laptop. Uses manual ZFS partitioning. |
| homebee | NixOS | Beelink Mini S12 | Home media server running Jellyfin. |
| jellybee | NixOS | Beelink U59 Pro | Mobile media server (RV) running Jellyfin. Uses disko for partitioning. |
Note: older systems like
z1,pi, andhomepiare deprecated or inactive.
Secrets are managed using agenix and agenix-rekey. The master private key is stored in gopass under the entry systems/age.master.
Encrypt a new secret using the master public key:
echo "my-super-secret-password" | age -r age13sgljsr9srgxjxncl49qsn9dkkstcqct3ck9s7n2yu4lzelgp4uqcajgtj -o ./path/to/my-secret.age
Add to Nix configuration:
age.secrets.my-secret = {
rekeyFile = ./secrets/my-secret.age;
# mode = "600"; # Optional, default is 400
# owner = "root"; # Optional
};
Rekey for specific hosts:
This decrypts the secret using the master key (via gopass) and re-encrypts it for the target hosts.
nix run .#rekey
zw)sudo -i.zw, use the script in systems/zw/nixos-zfs-setup.sh.DISK.nixos-generate-config --root /mnt
nixos-install --flake .#zw
If using a minimal installer, you may need to manually configure Wi-Fi:
systemctl start wpa_supplicantwpa_cli:
> add_network
0
> set_network 0 ssid "MY_SSID"
OK
> set_network 0 psk "MY_PASSWORD"
OK
> enable_network 0
OK
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub acaloiaro/nixos-system --plugin update-my-skillsRewrite prose in Adriano Caloiaro's communication style
Scaffold a new skill in the my-skills marketplace
Write code comments in Adriano Caloiaro's code-comment voice
Whenever version control is used, use jujutsu instead of git
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Frontend design skill for UI/UX implementation
Comprehensive UI/UX design plugin for mobile (iOS, Android, React Native) and web applications with design systems, accessibility, and modern patterns
Memory compression system for Claude Code - persist context across sessions
Marketing skills for AI agents — conversion optimization, copywriting, SEO, paid ads, ad creative, and growth
Standalone image generation plugin using Nano Banana MCP server. Generates and edits images, icons, diagrams, patterns, and visual assets via Gemini image models. No Gemini CLI dependency required.