My favorite is pacman because it is fast af but it has really weird syntax’s
You will all hate me but… Snaps! First time I could easily roll back a bad version of thunderbird (I use it for work -office 365) which got stuck in a oauth2 login loop. I had to roll back twice (again, single command, everything just worked) then finally an upgrade where the bug was fixed.
Don’t get me wrong I’ve pinned versions before with apt etc, but I always end up forgetting and having to remove them afterwards.
And… The only reason I was using the thunderbird snap was cause the regular apt thunderbird had some other annoying bug.
Yep… Snaps… (Shake my head and walk away)
Nix on NixOS - pin any version of a package you want, multiple versions of the same package, works on all Linux distros and MacOS, and with Home-Manager it can even manage your dotfiles.
Portage, naturally 😀
No one’s fielded this yet, so I’ll give it a shot.
Portage offers maximum configurability: you can switch optional package features on and off. If a package feature is off, you don’t need to install dependencies to support it, so it makes for a slimmer system.
You can upgrade many packages even if the distribution hasn’t by copying a single small file to a new name and running two commands.
Similarly, if you’re running a new or fringe architecture (like riscv) and want to try to install a package that isn’t officially available for it, you can do it fairly simply (minor edit to a text file or additional parameter at the command line). Doesn’t always work, but it’s still easier than the configure-make-make_install dance, and the dependencies are handled for you.
Portage also supports a bunch of other fringe use cases, like pulling source straight from git and building it. And you can create simple packages by writing <10 lines of text file (well, specialized bash shell script).
On the downside, Portage is S-L-O-W. It has more complicated dependency trees to resolve than other package managers, and installs most packages by building them from source (although this isn’t a requirement).
I like it, though.
I used to like portage a lot when I first tried gentoo. I was like dam I really have to build every single thing. I just want this. don’t get me wrong Gentoo keeps your system maintained clean and minimal but just the time compiling got my wife angry lol
It can get tedious on a single machine. Once you have enough for a binhost to start making sense… Now we’re talking 🤣
I kept hearing about a binhost. is that where you have it in a VM or something?
Nix, 100%
I use yay, it’s pacman with AUR support. :)
FYI: (Untrue! See response here). yay
is no longer maintainedUse Consider paru
insteadparu
as an alternative option; it’s written in Rust and has better version tracking for *-git
packages (won’t miss upgrades if the AUR version isn’t tracked, won’t do pointless upgrades if the AUR version changes but HEAD remains unchanged)
The latest release of yay
was 3 weeks ago. Where are you seeing that it’s not maintained anymore?
Huh! I appear to have fallen victim to misinformation. I stand corrected and I apologize for not properly confirm such a strong claim before repeating it like that.
I suppose a more accurate way to put it is that yay
has been slower to adopt new features (e.g.: yay#336 vs paru#260), but otherwise remains a current and well-maintained piece of software.