flake.nix- Entrypoint for hosts and user home configurationshosts- NixOS configurations accessible viasudo nixos-rebuild switch --flake .#<host>.common- Shared configurations consumed by the machine specific ones.core- Configurations present across all hosts. This is a hard rule! If something isn't core, it is optional.disks- Declarative disk partition and format specifications via disko.optional- Optional configurations present across more than one host.users- Host level user configurations present across at least one host.
altair- Destop PC (not fully configured yet)canopus- HP Laptoppolaris- Qemu VM Sandbox
home/<user>- Home-manager configurations, built automatically during host rebuilds.common- shared home-manager configurations consumed the user's machine specific ones.core- Home-manager configurations present for user across all machines. This is a hard rule! If something isn't core, it is optional.optional- Optional home-manager configurations that can be added for specific machines. The home-manager core and options are defined in host-specific .nix files housed inhome/<user>.
lib- Custom library used throughout the nix-config to make import paths more readable.modules- Custom modules to enable special functionality for nixos or home-manager oriented configurations.nixos-installer- A stripped down version of the main nix-config flake used exclusively for generating ISOs and during installation of NixOS and nix-config on hosts.overlays- Custom modifications to upstream packages.pkgs- Custom packages meant to be shared or upstreamed.vars- Custom variables used throughout the nix-config. Most of the variables are focused on the primary user across all hosts.scripts- Custom scripts for automation, including remote installation and bootstrapping of NixOS and nix-config.
Secrets for this config are stored in a private repository called nix-secrets that is pulled in as a flake input and managed using the sops-nix tool.