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?

  • Crazazy [hey hi! :D]
    link
    fedilink
    arrow-up
    1
    ·
    8 months ago

    ah I think that’s where I’m at odds with a lot of lemmy NixOS users then 😅, since I am and have always been pretty hesitant to recommend NixOS to anyone in particular. I find the upfront costs of NixOS too big for me to recommend the OS to anyone who wasn’t already looking into it and knows its downsides and upsides.

    I do agree however on the fact that using nix is purely beneficial. It doesn’t hurt if you just add a .nix file to your project, since it doesn’t do any harm to an already existing project. It can just install your build tools and then consider itself done, and if you don’t happen to like nix after all, the new installer makes uninstalling easier than ever. There is pretty much no downside to downloading the package manager, something I can’t say about the OS.

    Having said that, I don’t think nix should be the end-all be-all standard in package management. I’m sure there will be other package managers that will be better than “nix but with yaml sprinkled in”, and are capable of improving the state of the art. At least, that’s something I hope to happen. For example, I have reservations about using a full-blown programming language for doing my project configuration (see people’s problems with Gradle for why you might not want that). I think a maven-style approach (where you’d have just limited config options, but can expand the package manager’s capabilities by telling it to install certain plugins (in the same config file!)), could be worth looking into, and I’d be lying if I said I wasn’t on the look out for a potential better nix alternative

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

      For sure! I don’t think we’re actually in disagreement at all, just the limits of text communication :). NixOS is certainly less important to me and I don’t really care if people use it or not at all (it’s nice but there’s enough differences that you have to be aware of that it’d be frustrating to some people — even if ultimately those differences are something that can be worked around… If you’re well versed in nix and Linux NixOS is kind of a no brainer, though). Nix for development (or something like it) is legitimately enough of a game changer to warrant some of the evangelism in my opinion, particularly since as you mention it’s pretty much free to try on any (non-windows) system, and adding nix to a project doesn’t harm non-nix users (more than they’re already harmed anyway, haha). I’ll admit that I worry about how “nix ugly and unintuitive” seems to be a huge problem for adoption, and frankly I don’t blame people for bouncing off of nix (I bounced off of nix in 2011 or so and didn’t come back to it for like 10 years — though it was a bit of a brain worm nagging at me the whole time). That said I think the impression people have of nix being this horrible and completely ugly language (an impression I’ve had in the past as well) is also somewhat untrue. The nix language itself isn’t so bad, but the expectation is for it to just be yaml because “I just want to list dependencies”, which is fair and it might be nice if we had some better abstractions to make that more clear. All of the phases in a nix derivation are confusing and poorly documented, and some operations on attribute sets should probably just have nice special syntax instead of these fancy update fixpoints that the average developer isn’t going to understand… ultimately I’m a little unclear on how much of this is “the nix language sucks and needs to be thrown out” and how much is “we really need a better introduction to what this is and how to use it, especially with some beginner examples and best practices for different languages”. I worry a bit about non-nix nix package managers just from the perspective that it’s really nice to have the one tool to rule all development environments, but maybe fragmentation won’t be a huge problem.