At the moment i am actually quite a happy 🐧 with Gentoo. While the update "experience" is much worse than everything i know, i think source based distributions are just next-level open source (though compiling is too resource intensive for office computers).
And because my PC is really fast, i let it update every weekend for like 1h or so while i am cooking (food, not myself with the heat of my PC).
There is just one nagging thought always in my mind: What if the istallation breaks, and i am unable to fix it? I will never remember all the changes i made to all the config files, which packages i installed and in which order i installed them. It's going to take months to get to where i am now.
That's why i have been thinking about using NixOS ❄ next time, once Gentoo breaks. The idea of configuring everything from one location and just having to copy one configuration file/folder seems almost to good to be true.
The internet even claims NixOS to be source based, however when i installed it in a VM, the installation was way to fast to be source based.
Maybe i was missing something in the configuration. i will definitely look into it once my beloved current install falls apart.
The internet even claims NixOS to be source based.
What's not in Nixpkgs is built from source. Everything else are binaries either from the binary cache, like Nixpkgs, or Cachix.
There is just one nagging thought always in my mind: What if the istallation breaks, and i am unable to fix it? I will never remember all the changes i made to all the config files, which packages i installed and in which order i installed them. It’s going to take months to get to where i am now.
Oh, and you don't actually have to use NixOS to have a reproducible system. You can learn Ansible and self-provision your system on any distro that exists. Though if you personally hate :redhat: then you can write your setup script in any programming language, if you know some. Or just back them up. You can abuse GitHub for a complete backup of your system, since they don't care how much space you've taken on your git repo.