←back to thread

306 points dxs | 2 comments | | HN request time: 0.417s | source
Show context
AStonesThrow ◴[] No.44069190[source]
20 years ago: "Oh no, the distros are struggling over packaging! We've got apt, yum, dnf, rpm, nix, docker..."

https://m.xkcd.com/927/

For a long time, there was a pax debiana in my world. I used Ubuntu mostly (swapped to Debian and added Fedora towards the end) and the package management was really good. APT was a great tool and I got quite chummy with its ways. It was straightforward to keep my system updated and resolve dependencies. It was way smoother than any other updater system had been, even across major system upgrades.

I sort of lost it when snap started usurping stuff. I knew it was coming, because docker was already making inroads. Then we had flatpak and company. As an admin, as a system architect, I felt that's the point when I lost control of my system. It wasn't possible to know its update state anymore. It wasn't possible to centrally manage or monitor those updates. It became a free-for-all of self-updates and shadow updates. Ubuntu was also introducing livepatch and kernel updates that went outside the apt model.

I think that perhaps it became too great a burden for the major distros to be packaging all of their own downstream packages. Perhaps they saw the opportunity to offload some of that packaging burden on a really pro service that could just package everything, and make pan-distro packages available. If Debian and RHEL packagers are doing less downstream packaging, then perhaps they could focus on their core competencies. I noticed that nearly every Ubuntu package needed to include Ubuntu-specific tweaks, and basically when Ubuntu was already downstream from Debian, why should Canonical be maintaining every damn package themselves as well?

So what's the endgame for all this? Would apt or dnf/rpm eventually get abandoned and have them go all-in on a new system? Or does the proliferation and splintering continue? Many of us said that the beauty of Linux is our freedom of choice. Well there's too much choice. Look at Distrowatch and be paralyzed by not knowing what to choose. Windows or macOS on your desktop is easy to choose because there's... one of each.

When I visited Catalonia my friend took me to Carrefour. We strolled the aisles and I spotted pig-legs (jamon serrano) on every counter. A huge selection of eggs. Everything my stomach could desire. She led me into the olives aisle and gestured around to all the olives there. She said pick whichever I want. There were so many. They were all in fancy jars. I knew nothing of olives. I left without choosing any.

Linux will die a death of a thousand cuts, until some consolidation and unification can happen that's beyond the kernel.

replies(3): >>44069425 #>>44070182 #>>44072482 #
1. miladyincontrol ◴[] No.44070182[source]
>APT was a great tool you had me up until this bit lol apt's spaghetti of software and state assumptions is horrendous. the software itself functions mostly fine for those who havent used more modern package managers, but the user experience itself is a nightmare as soon as you start needing anything outside the distro's default repos
replies(1): >>44070945 #
2. AStonesThrow ◴[] No.44070945[source]
Look, no illusions or exaggerations here; APT is an imperfect tool and it's intricate, complex and unwieldy sometimes. But please consider the status quo ante. I've run Minix-286, OpenBSD, NetBSD, SunOS, HP/UX, and Linux, and in the years between 1990-2003, there were zero package managers in use.

Like literally APT did not exist, no predecessor existed, there was absolutely no package management for those systems. Or if there was, it was by script or some bespoke framework that came with the app you downloaded. There was 100% no system-wide management of what was installed on my computers.

I've been in states of recompiling the kernel from source. I've run those "./configure" scripts that came with GNU. I've fiddled with custom kernel configuration files and Tripwire databases that tried to keep track of everything there. I've applied patches issued by Sun Microsystems.

Absolutely none of that above jumble can hold a candle to the way we use APT today. I'm sorry you suffered nightmares and needed 3rd-party stuff. But it was a dream come true to type out a one-liner and have the system upgrade itself, accounting for all dependencies, replacing all necessary files, being aware of all config updates, leaving audit trails and versioned files. Simply like falling off a log at this point.

Who would ever go back? What can be simpler? It was simply the degrading of this unified control and the loss of a singular point of management that has begun to dismay us.