NixOS
We're trying to explore different options for running services, and NixOS on Proxmox containers is one of them. Here's how it is supposed to work:
- Malleable: it should be relatively easy to modify an existing service config, update software version, and migrate one software to another, as everything are written in Nix configuration files.
- Recoverable: NixOS keeps old copies of the system, which can be reverted if we see any immediate issues.
- Discoverable: Services are located in one canonical, centralized location. This reduces the time needed to find the specific config for a specific software, and also makes it easy for someone to know what services are running.
- Replicable: As NixOS service configuration files are written in a human readable format, anyone wishing to use the "normal" way to configure their service should be able to understand how to setup their service in a similar way.
- Trackable: Easy to manage and track changes using Git, maybe even with CI.
Setting up a Proxmox VM
If there isn't a template already, use https://hydra.nixos.org/job/nixos/release-25.05/nixos.proxmoxLXC.x86_64-linux (replace 25.05 with the latest release)
Use "Create CT", do not use the SSH config, and setup a root password. Then use the console on the web interface to login as root (press enter if you see a blank screen) and configure SSH from there.