my nixos/nix-darwin stuff :)
hosts/- host-specific configurationnixos-modules/- nixos modules and profilesdarwin-modules/- nix-darwin moduleshome-manager/- home-manager modulesshared-modules/- modules shared between nixos and darwinlib/- flake output generationsecrets/- agenix secrets
flake outputs are determined by the hosts/ directory structure. each
subdirectory is a host, and the config filename determines the system type:
configuration.nix→ nixosdarwin-configuration.nix→ darwin
custom options live under one root per layer:
host.*(nixos) - host-level toggles set inconfiguration.nix:host.profile.*system profileshost.deploy.enablewhether its a deploy-rs target
services.*(nixos/darwin) - custom system services (avoiding upstream collision)sam.*(home-manager only) - per-program user config
hosts with host.deploy.enable = true can be deployed via deploy-rs:
nix develop
deploy .#hostname