So I started using nixos as a daily driver several months ago.
At first it was nice using the life disk to install it. I really liked the options you could choose. The only the thing it misses is the information that it will install systemd bootloader and I don't have the option to install grub2.
Then when I used it I had to learn that I needed to switch my flatpaks back to the system packages since nix had almost all of them too. And nix packages work better in nix. Even though flatpak is sandboxed sth. in nixos makes some of them break.
I could usually install my software just by using the existing packages, but if not available I started learning nix-shell amd nix in general.
This is when I realised I can't recommend nixos to normal people. If for any reason you need to install sth. that is not in the packages you are fucked. Usually it is easier to get a docker running than to learn nixos and setup a working nix-shell. However once you have a nix-shell to compile some c program you definitely have a deeper understanding of nixos and the program.
I often break my systems by tinkering around. So this was a great experience in nixos since I could go back several generations to a working one and continue from there.
However the last weeks I managed to break nixos!
Even going back several generations didn't help. Probably going back several weeks may have worked, but I decided to reinstall instead.
So my problem was basically that I updated from 23.11 to 24.05.
I wanted to update since I was on unstable for razer stuff since I need current drivers.
However once I managed to get the update working i wasn't able to login into x11 anymore and Wayland seems inperformant in gaming. I also have other issues with Wayland.
The next thing was that I wanted to use an amd gpu for gpu-passthrough in a vm and therefore had a Nvidia and amd gpu present. However the system booted into the amd gpu and only after login switched to the Nvidia one.
If I blacklisted the drivers of amd I would not get a sddm log in screen anymore. Nothing I did fixed that. Removing the amd gpu didn't help. Going back to the novau drivers worked but I couldn't use them since they are broken as well.
After tinkering around a lot I finally decided to reinstall the current nixos image.
So life image it is again. Automatically loads Wayland. If I assume correctly with novau drivers. I installed everything however during the installation process the gui broke. (Wayland and novau don't work well I guess. Fuck Nvidia)
And even though through tty I could see when it was finished I couldn't boot into the system.
So I rebooted the life disk and then logged out switched to x11 and reinstalled again. This time it worked. I then used my old configuration and only updated to plasma6 since I already installed that on the new installation.
And to my surprise it just worked. Everything was like before. X11 working and so on.
So while I managed to break nixos it is in fact just as easy to reinstall again and configure like before.
https://www.youtube.com/watch?v=yup8gIXxWDU
HelloWorld.java