btrfs + snapper can easily achieve the same thing. You can checkout OpenSUSE.
I only use nixos for my base configuration. All GUI desktop applications are installed through flatpak and development is done through distrobox.
I installed and used ModelSim and Intel Quartus for a couple of hardware courses that I had.
I would just buy a cheap RAM stick and install one of the mainstream distrobutions with KDE Plasma on it. You can turn off most of the desktop effects and unnecessary background services.
Fish and its search functionality work great for me.
If you want to go for traditional distributions that don't have native rollback mechanisms, I would suggest using btrfs along with something like snapper.
Updating individual applications is a pain on NixOS. You'd either have to override the attributes of the package (which can get quite ugly and complicated and does not always work) or pull in a new commit of nixpkgs that has the version you want which requires the download of a ton of other dependencies that were compiled for that specific commit of nixpkgs.
Flatpaks solved this problem for me and helped reduce the download size every time I wanted to update something.
I've been using NixOS with flatpaks and distrobox and have had pretty much the same experience. NixOS provides rock solid base system, services, and CLI tools that are easy to configure and flatpaks provide the rest of the desktop applications.
One neat feature of installing eveything through flatpak is that you can update applications individually without having to upgrade the whole system.
Desktop:
- distrobox
- brave
- flatpak
- neovim
- nix
- fish
- tmux
I'd suggest going through the logs and seeing if anything seems amiss. On a fresh boot, run the following: