Nix Flake configuration for my Linux machines running NixOS.
The directory structure is organized as follows:
flake.nix
: Main entrypoint for the configuration.- hosts/hostname: Host-specific configuration by setting options. Each host has its own folder.
- modules: Declarations of configuration options.
- overlays: Attribute overrides for Nix Packages.
- secrets: Encrypted files that store sensitive information, such as SSH private keys.
- users/username: User-specific configuration. Users are defined as modules, so they can be enabled or disabled on a host machine.
Modules are a key component of NixOS. They encapsulate various configuration options, which should make it easy for you to integrate it into your specific configuration.