Every few weeks, when I try to update my gentoo system, I get cryptic errors that it takes a while to figure out.
Gentoo’s package management system is complex.
I’m tired of having to run haskell-updater and perl-updater and emacs-updater after system update. I’m tired of waiting 7 ~ 8 hours until qtwebengine is compiled.
Or, will gnu guix system just give me another set of problems?
I think I will gradually move to guix system because it is unified under one language and has a simpler packaging model. It doesn’t have gentoo’s USE flags.
I like software packages that are unified under one good language. Emacs, lem editor, qutebrowser, nyxt browser, guix system, …
In these software systems, the implementation language is the scripting language. There is no embedded scripting language. There are not multiple languages to learn.
The second best thing is domain-specific languages if I don’t want or need programmability.
The use flags are the main reason why Gentoo takes so long as not all possible binaries can be cached on a build server.
It’s quite possible to modify Guix packages and no longer get precompiled packages. Also things like the official version of Firefox and Thunderbird will take a long time to build and have frequent changes so I recommend the de branded version.
Guix can also have some problems - see this forum for examples. Most of the time it worked a while later after someone fixed the bad commit or a problem with some misbehaving server.
As Guix is reproducible one can fix the first problem by explicitly stating a commit in the channels file.
Today, my gentoo system could not update because sys-fs/zfs-kmod and sys-kernel/gentoo-kernel-bin were in a deadlock.
I had to remove them manually and install sys-fs/zfs-kmod manually. The right version of gentoo-kernel-bin was installed through zfs-kmod.
Figuring this out took hours. I hate gentoo now. I don’t want to know how difficult things can be on guix. I’m tired of fighting technical fires. I shouldn’t have to do this.
Occasionally having to build some packages due to lack of substitutes is not a blocking issue because it can take time for servers to build substitutes.