cross-posted from: https://lemmy.ml/post/17288716

This project is a port of the Proxmox Hypervisor on NixOS.

⚠️ Proxmox-NixOS is still experimental and we do not advise running it on production machines. Do it at your own risk and only if you are ready to fix issues by yourself.

📬 Help / Discussions

There is a matrix room for discussions about Proxmox-NixOS.

Thanks This project has received support from NLNet.

  • HeartyOfGlass@lemm.ee
    link
    fedilink
    English
    arrow-up
    13
    ·
    6 months ago

    I don’t get NixOS

    It’s not for everyone. The idea is to have your entire system reproducible with a few configuration files, which you’d then ideally store in a VCS like git.

    I haven’t messed with it, but there is something appealing about the ability to reboot to an older snapshot of the system if an update breaks something, or being able to use a config file to restore your system to the exact OS version and exact versions of whatever apps you use.

    • geography082@lemm.ee
      link
      fedilink
      arrow-up
      2
      ·
      6 months ago

      I see . Seems suitable for infras with thousand of servers and is not the same backing up configuration files than whole snapshots of the OS. Don’t know how works with installed apps like nginx and their configurations.

      • Laser
        link
        fedilink
        arrow-up
        1
        ·
        6 months ago

        I guess that’s where the advantages come into play the most. I only use it for a handful of machines (2 notebooks, one workstation, an SBC and 2 VPSs) and it’s still a great solution, though there is quite the overhead for the first setup.

        Anyhow, that doesn’t mean that it’s more work in total than other distributions. The module system catches a lot of configuration errors for you which means you basically never and up with a “broken” configuration, and even if you did, you could select an older generation (more correct way to say rolling back on NixOS). Sure, the configuration might not do want you intended, but it will most likely be functional.

        This even goes so far that some modules detect common configuration pitfalls for applications, like headers not being inherited because they got redefined.