• rozodru@piefed.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      3 hours ago

      from a sys admins perspective it’s painfully easy to deploy across hundreds of machines. NixOS is declaritive and immutable. you can take one system configuration of NixOS and throw the same config on as many machines as you want. packages, dotfiles, whatever are all replicated the exact same way on each machine. You can lock all the packages/apps, configs, kernels, etc to a specific version therefore a sysadmin may only need to upgrade the lot once a year. if a user some how breaks their system it’s as easy a fix as rolling back to the previous generation with a single menu option.

      So basically say you have your computer and you want to replicate your exact setup to hundreds of other computers. with NixOS it’s as simple as setting up a git repo for your nixos config, pushing to it, installing nixos on every other computer then cloning your repo to all the machines and rebuilding. done. now you have hundreds of other computers that all behave and work the same way your computer does.

      If something needs updating or a fix needs to be rolled out all a sysadmin has to do is fix it on one machine, push the change, pull it for every other machine and rebuild. done.

    • BrianTheeBiscuiteer@lemmy.world
      link
      fedilink
      English
      arrow-up
      39
      ·
      6 hours ago

      My guess would be the deterministic configuration management. If it’s for a personal machine then do what you want to make it your own but if it’s an organization (e.g. government) you want the machines to be as similar as possible to reduce maintenance. Think cattle, not pets.

      • 0x4f1@lemmy.world
        link
        fedilink
        English
        arrow-up
        6
        arrow-down
        6
        ·
        6 hours ago

        Ansible is a thing though. It is also a more complete, mature and easily substitutable solution vs pinning your hopes on a single distro.

        Programmers like NixOS because they are programmers.

        • Godort@lemmy.ca
          link
          fedilink
          English
          arrow-up
          23
          ·
          edit-2
          5 hours ago

          Ansible is US-owned. Even though it’s open source, Redhat, a US company, is the one that controls its lifecycle.

          NixOS is based out of the EU.

        • 7EP6vuI@feddit.org
          link
          fedilink
          English
          arrow-up
          5
          ·
          4 hours ago

          i used ansible some years ago and i’m using nixos currently and you can not compare those two.

          i was not fluent in ansible and i’m not fluent in nixos. yes you have to leave your comfort zone for nixos, but your get so so much more.

          the jinja templates in yaml feel like a big hack if you used nixos.

          would really be interesting to hear someone talk who is comfortable to use both of them.

        • NewOldGuard@lemmy.ml
          link
          fedilink
          English
          arrow-up
          8
          ·
          edit-2
          5 hours ago

          I mean they sort of serve different purposes. You can build a NixOS ISO running your exact desired configuration that is good to go immediately upon install. Ansible would require post install configuration, yes it is scripted but it is additional overhead and time. I think a better alternative would be an OCI based distro with a Packer build pipeline, which could include Ansible steps higher up in the build process. But that’s more complexity that Nix wouldn’t require