|
|
|
|
|
by DivineBicycle
1184 days ago
|
|
> incomplete, brittle, and clunky. I don’t see where you might experience incompleteness in pacman, although I might see how you could experience it to be clunky. Do you mind humouring me and explaining this further? > flexibility I’m also not sure where dnf is more flexible, although I probably never explored it fully. What do you find about pacman to be inflexible? > nicer CLI This I most definitely understand. Even after over a year of using pacman I don’t try to understand why flags are named what they are (looking at you —-Sync), but having memorised them I do quite enjoy pacman. > I’m fairly sure I created at least some of their spec files from scratch It could just be my low intellect manifesting itself I suppose, so next time I have a Linux install using rpm I’ll try again. Thanks for replying to my questions, it’s always interesting to hear from Linux veterans! |
|
No, I think I have a high pain tolerance for Linux stuff in general and packaging stuff in particular. I got into Linux before I started high school, and Linux package management immediately struck me as something beautiful, powerful, and almost magical at that age. That sustained fascination has meant that I can tolerate different learning curves in that domain than in others.
Additionally, by the time I started messing with RPM packaging, I had already packaged for Gentoo, Arch, and Ubuntu, so I think I had already developed some intuitions for how to explore packaging systems and their documentation.
> I don’t see where you might experience incompleteness in pacman, although I might see how you could experience it to be clunky. Do you mind humouring me and explaining this further?
Tbh, here I'm probably holding old shit against Pacman that no longer applies. But when I daily drove Arch and later Chakra Linux many years ago, I remember these things being absent when zypper (and others) had them
but all of those were added to pacman within 2 or 3 years of when I stopped daily driving Arch-based distros.I would still characterize pacman as missing one or two sensible built-ins, although this is a matter of preference— anywhere in the Pacman Rosetta where you see pacman piped back into itself... that should just be a built-in, imo.
> I’m also not sure where dnf is more flexible, although I probably never explored it fully. What do you find about pacman to be inflexible?
Sure, I can give some examples. This also relates to some of the brittleness. Pacman's dependency resolver doesn't consider installed packages in a first-class way— it only examines version constraints for new stuff or updates it's grabbing from the repo. This is part of why 'partial upgrades' aren't supported and all of why your AUR-installed packages are liable to break after `pacman -Syu`, requiring sane AUR wrappers to rebuild your AUR packages after each system upgrade.
Package managers like dnf and zypper make it possible to group specific repos together and mark them as interchangeable when evaluating updates. They also have facilities for tracking which repos (or classes of equivalent repos) you've gotten packages from and make it easy to tell when an upgrade or installation might require you to change the 'supplier' of a given package. It's easy to prioritize and layer multiple repos together in a sane way without breaking your system with them, but with pacman all you have to will with is a total order for whole repositories, and the Ignore(Pkg|Group) configurations.
Honestly I should probably try running Arch again for a while to help update what I think of pacman.