Hi everyone, someone can explain, in simple words, why considering to switch on NixOs over other distro? And the use case? I think would help a lot of people (including me) to understand it better :D

  • Triton@lemm.ee
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    The main difference of NixOS to other distros is that you configure your system declaratively. This means that installed system settings (e.g. user accounts, enabled drivers, etc.) programs and potentially also configuration for individual programs is all defined in a single place. The disadvantage of this is that a lot of stuff works differently than on “normal” distros and that it tends to have a rather steep learning curve. Unless you’re prepared to invest a significant amount of time into it, you should not install NixOS.

    That being said, the topic is a lot more complex (for example, one can also use the Nix package manager on other distros than NixOS), so if you’re interested, here is some more discussion on the topic:

  • flashgnash@lemm.ee
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    The reason I really like NixOS is it’s by nature very robust. Your config is the almost universal truth about what’s installed on your machine and if it works

    For example, if I make some change that breaks my whole system, I simply boot off the last working build, then revert my config to the previous version in git

    Also, if there’s a package in the nix package manager you can say with 99% certainty it will just work out of the box, and if it doesn’t there’ll be a config option you can enable to get it to work

    Also also if you move to a new machine you can copy over your config and the machine is built up just how you like it right out of the gate

    Also also also if you do software dev you can have development environments that have all the packages you need for that project and only those packages

    Also also also also you’re not gonna run into the issue later down the line of having loads of random shit installed on your system in 3 different package managers and 9 different places, cleaning up your machine is as simple as just removing the entries from your application list

    Stupidly easy to install things too. If you want to install gnome desktop as an example it’s as simple as adding

    services.xserver.enable = true; services.xserver.displayManager.gdm.enable = true; services.xserver.desktopManager.gnome.enable = true;

    To your config

  • ScotinDub@lemm.ee
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    I wonder in practice how easy it is to copy your nix config to another machine. Sounds amazing but aren’t the configurations very hardware dependent?

    • flashgnash@lemm.ee
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      Having tried it on multiple different it’s not seamless but it’s a damn sight better than setting up many machines manually

      The configurations are not particularly hardware dependant as for the most part NixOS handles drivers and such transparently and just gets whatever it decides is best for your hardware (unless you override it)

      The main hardware specific config I have is to use Nvidia proprietary drivers, as it defaults to nouvea

      Tl:Dr 90% of your config will transfer and you have to do a little fiddling to get it all up and running but it’s all way easier than building from scratch