1
Files
flake-nixinator/README.md

1.7 KiB

NixOS Configuration

Modular NixOS configuration, using Hyprland for a lightweight desktop.

To install, run nixos-rebuild with the --flake parameter from the NixFlake directory: nixos-rebuild switch --flake .#nixinator.

NixFlake/system

Contains all the system configurations.

  • There is a common configuration used for all systems: NixFlake/system/default.nix
  • Every system has its own special configuration: NixFlake/system/<hostname>/default.nix
  • System modules are located in NixFlake/system/modules

When creating a NixOS configuration inside the NixFlake/flake.nix the common configuration is imported. Because the hostname is propagated to the common configuration, it can import the host-specific config by itself.

NixFlake/home

Contains all the home-manager configurations.

  • There is a common configuration for each user: NixFlake/home/<username>/default.nix
  • There is a configuration for a single system of this user: NixFlake/home/<username>/<hostname>/default.nix
  • Home-Manager modules are located in NixFlake/home/modules

When creating a NixOS configuration inside the NixFlake/flake.nix the common configuration is imported. Because the hostname is propagated to the common configuration, it can import the host-specific config by itself.

NixFlake/derivations

Contains all the stuff I packaged. Each derivation is loaded into NixFlake/derivations/default.nix.

NixFlake/overlays

Contains (not at the moment) all overlays. The NixFlake/overlays/default.nix imports all of the overlays and all of the derivations. It is then imported by the toplevel NixFlake/flake.nix, to make everything available to the system/home configurations.