1
Files
flake-nixinator/README.md
2022-08-11 14:35:36 +02:00

1.7 KiB

NixOS Configuration

To install remove everything from /etc/nixos and symlink the flake.nix to /etc/nixos/flake.nix. Because I am dumb many obvious things are explained here and in comments inside the configuration. This is very WIP and some parts are pretty dumb as I am still learning the NixOS ecosystem.

I heavily borrowed from:

./system

This folder contains all the system configurations.

  • There is a common configuration used for all systems: NixFlake/nixos
  • Every system has its own special configuration: NixFlake/nixos/<hostname>

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.

./home

This folder contains all the home-manager configurations.

  • There is a configuration for each user: NixFlake/home/<username>
  • There is a common configuration for all systems of this user: NixFlake/home/<username>/<hostname>

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.

Notes

  • I didn't organize the modules in folders with a default.nix for every module as this reduces readability
  • Modules are split into system modules and home modules
  • The NixFlake/overlays/default.nix imports all the derivations
  • NixFlake/config contains all the dotfiles that are symlinked by HomeManager