About
A NixOS configuration for the computer lab of eth0's school. Currently unused, but it may be perfect for those who are interested in setting up a similar environment.
Install
For the installation guide, go to Installation
Reviewing the flake
To check that the flake evaluates without installing or switching the system:
nix --extra-experimental-features "nix-command flakes" flake metadata --no-write-lock-file .
nix --extra-experimental-features "nix-command flakes" flake show --no-write-lock-file .
nix --extra-experimental-features "nix-command flakes" flake check --no-build --no-write-lock-file .
For a deeper no-install check of what the NixOS system build would need, run:
nix --extra-experimental-features "nix-command flakes" build --dry-run --no-link --no-write-lock-file .#nixosConfigurations.nixos.config.system.build.toplevel
This prints the store paths that would be built or downloaded. That output is expected; it is not installing or switching the system.
The machine-specific hardware-configuration.nix and install-local.nix files
are generated during installation. They are not required for the no-install
review commands above, but activation will fail with a clear message if someone
tries to install or switch without them.
Why Nix?
NixOS is a Linux distribution that uses the Nix package manager to provide a declarative and reproducible configuration system. This means that you can define your entire system configuration in a single file, and Nix will take care of installing and configuring everything for you.
This makes it easy to set up and maintain a consistent environment across multiple machines, which is ideal for a computer lab setting, where not always you want to install programs on every machine manually.