So I’ve recently taken an interest in these three distros:

All of these offer something very interesting:
Access to (basically) all Linux-capable software, no matter from what repo.

Both NixOS and blendOS are based on config files, from which your system is basically derived from, and Vanilla OS uses a package manager apx to install from any given repo, regardless of distribution.

While I’ve looked into Fedora Silverblue, that distro is limited to only install Flatpaks (edit: no, not really), which is fine for “apps”, but seems to be more of a problem with managing system- and CLI tools.

I haven’t distro hopped yet, as I’m still on Manjaro GNOME on my devices.


What are your thoughts on the three distros mentioned above?
Which ones are the most interesting, and for what reasons?

Personally, I’m mostly interested in NixOS & blendOS, as I believe they may have more advantages compared to Arch;

What do you think?

    • OmnipotentEntity@beehaw.org
      link
      fedilink
      arrow-up
      5
      ·
      11 months ago

      The single killer feature that convinced me to move to NixOS is the ability to very easily keep separate development environments separate. For instance, if you’re working on multiple dev projects that have different minimum requirements, and you want to ensure that (for instance) you don’t accidentally use features from after boost 1.61 for project A, because that’s the stated requirement, but you need features from boost 1.75 in project B.

      In a normal distribution, in order to set up an environment that has the proper version for project A you’d need to set up a chroot, a virtual machine, a complicated set of environment variables in a bespoke script with custom installation paths that you need to set up manually and remember to source, or just install a newer version of boost and rely on continuous integration to catch it if you screw up.

      In NixOS, you can set up different shells which all reference the exact correct version of the libraries required for every project, you can have them installed simultaneously and without conflicts, and there’s even a shell hooking program that will automatically load and unload this configuration when you change directories into and out of the project folder. It makes managing many different projects much easier. It’s like a better version of venv, but for everything.

    • lily33@lemm.ee
      link
      fedilink
      arrow-up
      3
      ·
      11 months ago

      Well, for playing games I use the flatpak version of steam and it works OK.

      For dev work, it’s great overall. Especially its ability to create separate reproducible environments with whatever dependencies you need for every project. However, there are some tools (rare, but they exist) that don’t work well with it, and if your dev work happens to need them, it can becomes a problem.

      For day to day (i.e. web browsing), it works the same as anything, with one disadvantage: there is a disadvantage here: it downloads a lot more than other distros on update, and uses more disk space. The biggest difference between NixOS, and say Arch, is not how it behaves once it’s up and running, but in how you configure it. Specifically, you have to invest a lot of time to learn how, and set up your system initially. But then reinstalls, and (some of) the maintenance, become easier.

        • Octorine@midwest.social
          link
          fedilink
          English
          arrow-up
          2
          ·
          11 months ago

          The way nix deals with packages is very different from most distros. If you install a newer version of a package, the older version just gets hidden, not removed. This makes it very easy to rollback or recover from errors, but it does mean you tend to use more space.

    • Chobbes@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      11 months ago

      It’s the probably the best distro for dev work imo. Nix in general is really nice for development. Games work fine — you can just install steam or putrid or whatever, and you can run normal binaries with steam-run.