long
@thomas @Photor Hi, I've NixOS as my daily driver for quite a few years now - package availability isn't a problem at all really, as nearly everything is packaged in the very extensive nixpkgs, and appimages/flatpaks can also be used (but snaps are not yet supported). "Packaging" stuff yourself is also a lot simpler than on most distros.
The bigger problem however is that there are a *lot* of rough edges in the tooling - both in terms of UX and especially documentation. And that combined with it being a completely different approach to system/software management means that there's a *significant* learning curve, more than you might expect.
My opinion is that if you can afford the learning curve, it's very much worth it in the long run - but you should expect to be totally lost for at least a week, and still be re-learning system management stuff for much longer than that. The payoff is huge though; massive system reliability improvements, suddenly managing multiple systems is only a tiny step, you get a ton of neat stuff like rollbacks and ad-hoc VMs to test out new configs, etc.
Also, once you understand how it works, most everything else will start to look super fragile, but at the same time many 'traditional' tools currently provide a better UX than Nix, so you can end up in a situation where both options are annoying but for different reasons. Bit of a curse-of-knowledge thing.
Another option to look at may be Guix, which follows the same basic model as Nix/NixOS, but is its own stack with its own ecosystem and community (and is built around Guile instead of a purpose-specific language like Nix).
Bottom line: definitely worth it today if you can afford it, but there's a long way to go to make NixOS a serious general-purpose contender UX-wise. I would not yet recommend it to people who aren't interested in tinkering.