hardware - afaik only lenovo(some say asus is worth to try - but no official linux support, framework is sturdy but feels cheap) is well know for quality hardware - others are questionable.
unfortunately AMD AI Max 390/2/5+ nor Qualcomm Elite 2 Lenovos are not here.
it kind of 'just works' if someone already wrote the nix code to do what you want it to do and put it in nixpkgs and you manage to find it and figure out how to use it. but if that isn't the case, good luck. i once spent almost a week trying to get a program to build and run properly under nix that could probably be installed in around 20 seconds on a osx/windows machine.
The quality of the managed / packages software, however, is still a bit subpar compared to Debian and Redhat.
2. nix is just package manager and configurator of sh which forces to write idempotent sh code with explicit dependencies(just good practices right? check guidelines of any non nix solutions and you will find out that 90% of these rules are just nix). nixos, nix darwin, nix home manager final artifacts are just just idiomatic dotfiles, so nix does not exist.
OTOH, I want subpixel rendering on my big screens, and you can't have it with a Mac.
> But HW is at least improving (eg. they added anti-reflective screen option), and SW is very much not.
And I would disagree with the idea that I should be running Linux on my primary machine. As a developer, I've faced enough "death by a thousand cuts" situations from running Linux on my personal router and servers to let it anywhere close to my main computer.
Don't even get me started on the hardware quality of Mac laptop including their stellar trackpads, screens and the smallest details like the quality of the hinge. I can still open my 5 year old Mac with a single finger and the hinge is as solid as the day I bought it.
As someone who's also particular about user experience, Linux always fails at this. If you have good UX, that means you can critically think for what a user wants from a computer, and can determine what should and shouldn’t be prioritized. UX is never a first-class citizen on Linux, and for all the issues with Tahoe, macOS still has enough residual quality left in it to not feel like I'm constantly fighting the operating system.
Simple example: I want HDR on Linux. Should be easy right? Just switch to Plasma under Wayland? Then do a one time config so mpv can play HDR. Oh and no browsers support it so good luck. Games need gamescope and flags to be set.
I want my computer to work, not for me to work as an integration engineer. So I use my Mac and it just works™. So I just let Linux live where I feel it works best, in servers and headless environments.