edit: for anyone curious, the problem was Xorg wasnt loading or something (stuck on systemd 'graphical interface target reached' with no graphical interface). because of a typo in a config file.
I have nix on a VM where I am tuning a config. It seems like a total pain in the ass to have to get everything set up using their scripting language. Things you just take for granted with a normal distro now require you to know the arcane language of Nix to get running.
I can absolutely see the advantage of it though. I would love nothing more than to take my current popOS install, settings, configs, etc and be able to port that literally anywhere.
I mean, I use NixOS daily, and aside from installing the occasional package or setting up some dot files, I don’t really touch my Nix config. NixOS was my first daily driver Linux distro and it has a lot of features that I probably take for granted. Early on, I felt like switching from GNOME to KDE. Two lines. Later on installed Hyprland, no problem, then switched to XMonad(had some Wayland issues) and it was stupidly painless.
Sure, Nix has its “fuck you” moments too, but those are usually never anything truly system-breaking, and can be fixed after an hour or two of Discord support chats. In my eyes, the benefits of Nix definitely outweigh the flaws. Do I wish it was a slightly more sane language? Perhaps. But it’s really when you start using it that you learn to appreciate everything you get. Seriously, I much prefer editing a couple of lines in a config file to pasting commands off the Internet in hopes to achieve what I’m looking for.
NixOS is, imho, the best Linux distro for programmers or anyone with a decent understanding of Linux (obviously not for computer noobs, and that’s totally fine).
Wow first Linux distro, not bad, it's not particularly beginner friendly (you'll have to know how linux works and learn all the Nix related stuff), for me it's the last distro though^^
I’d had a decent understanding of Linux going in, tbf. Mostly from hanging out on Discord with tons of Linux users. My Nix system is still quite young (a little over 2 months old), but it’s great.
Getting off the ground was kinda hard though. Luckily, I’ve been using flakes from the very beginning and always setup my dot files with home manager, so I’ve kept the system nice and reproducible.
It's not for everyone. I think it's almost a requirement to be a programmer, and to be familiar with functional programming.
It also has quite a few (necessary?) quirks/magic (module system, overlays, typing, config overrides etc.).
Actually one of my colleagues just switched from Pop OS! since System76 put all focus into their new desktop environment (while the current distro is barely maintained), which will be available on NixOS too, when it's ready (which is his plan to use, and mine too).
As long as you arent doing anything to advanced nix is basically only a configuration languages. You probably have to make heavy use of the option search to know where and what to configure
ChatGPT is not yet really good for Nix, probably because the training set consists of not that much nix yet. So yeah browsing in nixpkgs and either the options or package search is the way to go IMO.
Please, always use a dedicated hard drive to tinker with LFS, never ever try anything on a machine that's suppose to be used for work or do anything else. You'll think this is common sense, but it's anything but. LFS is involved, complex and takes a significant chunk of time. Make sure you don't need that machine you're tinkering on.