Episode: 733
Title: HPR0733: Linux Packaging Systems (too many)
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr0733/hpr0733.mp3
Transcribed: 2025-10-08 01:40:06

---

.
Hey, this is Marcos. This is my second podcast for hacker public radio. I hope you guys like it.
It's something that's kind of a matter that's become a little more important to me lately because they've been looking around.
It's actually package managers. I know I know everybody's favorite and I got the wonder.
So, you know, the joke used to be a piece of software is not done until it had an embedded email client.
And then the joke turned into a software is not done until it had an embedded web client.
And now the joke seems to be becoming piece of software is not done until it has an embedded package manager.
There seems to be a great proliferation of package managers. Every distro has got its own.
And there is only a handful of formats behind them, but every distro has got its own front end, the package manager.
What does the Linux user do when they find a typo in a Linux package?
Why they forked their package manager and they create a new one because this time they will do it right.
Yeah, not the finished joke in the world, but it does really seem to be accurate and seems to reflect what we're seeing.
I'm seeing in the Linux community. So anyway, I'm just a user.
I don't have any great, you know, contributions to Linux.
I've been in Linux since 96 since kernel version 2.0.36, I think.
I started out on Slackware back then and over the years I've used Red Hat, Ubuntu, now geez.
Sorry, Red Hat, Ubuntu, Gen2, Fedora, Unity Linux, Manjury of a devian.
I'm sure there are some other stewards who can't think of them at the moment.
And I found it's pretty regularly between like five different distros, all of which use different package managers, of course.
And it started to become kind of annoying, actually.
It seems to get in my way of both getting work done at work.
Since one of my jobs is I work, I get to spend a lot of my time during the day on Linux.
Like 95% of my time spent on Linux, well, this is really nice.
And my company works with other companies and sometimes they ask us to help out with some of the admin stuff.
And I'm comfortable doing that. So I spend some time doing that.
And all the customers, there's no one flavor of all the customers use.
So I have to kind of be familiar with Red Hat, devian, mint, scent, actually not so much mint.
But definitely scent, a little Ubuntu.
So I'm familiar across, I'm not great at any of them, but I can definitely get around all of them.
And it seems to me that none of them have any real features that the other ones either don't already have or couldn't be added fairly regularly.
So this seems to be a lot of duplication after you end the package management system.
It's annoying because if I'm working on a system, then one I have to know what system it is because I have to know what package manager to use.
So if I got a type Yum and it's a devian system, obviously that's not going to work.
And vice versa.
And then going to track down packages for a specific version of a distro, things like that add up.
It gets annoying and it gets in my way.
I have to spend time doing all this, tracking out packages and a lot of stuff rather than actually getting my work done.
It's really annoying and it's starting to get old.
Especially when no package manager seems to be any better than any others.
The second thing is when I'm on my own time and I'm just going around on the next.
I don't want to try things or play or do different things or whatever.
I have the same problem, is I got to fight the package manager or the packaging system to get anything done.
It's annoying.
It really is.
Sometimes I don't have a lot of time.
Sometimes I go, oh, I got a half hour free here.
I like to do something.
I have to spend 25 minutes just getting some dependencies installed so I can try something.
Well, that basically eats up all my time.
I can't do anything.
So it's just frustrating.
And I'm tired of that.
I don't know if I'm the only one in the world that actually cares about this.
But anyway, that's my little France.
So I was talking to, I was on the Unity Linux form.
And I, one of the devs there sent me a link to packagekit.org's package manager feature comparison matrix.
It's www.packagekit.org slash pk-matrix.html.
There are 17 package managers listed.
17.
Are you kidding me?
Come on, people.
You have nothing better to do but create yet another package manager?
Do everything does the same.
Like there's no package managers that I've run across.
And I think I've used a total of seven or eight different package managers.
None of them are really any better than any others.
So I don't get what the whole deal is.
This seems like everyone, it seems like it's, I don't want to insult people here.
But it really does seem like it's just a bunch of developers who decide that,
oh, I don't want anyone else does it.
I want to do it my way.
And that's what they do.
They create their own system.
And since Linux is all about choice, they're fully free to do that.
The thing is, is then you split the community.
We only have so many people actively doing the work.
Even companies like Red Hat, Canonical, we have X number of people doing the work.
And so when you create yet another packaging system,
or you insist on doing things your way rather than sharing,
you get in the way of getting things done.
So packaging system today is just like the sound system was 10 years ago.
Back when we had ESD, we had ART.
Do you guys remember those fun days?
Getting sound to work on Linux was a pain in the butt.
If you wanted to play two different music things that had two different applications
play sound at the same time, that was black magic.
Yeah, I'm glad those days are gone.
Even if you don't like pulse audio, you have to admit that the sound now
we're in much better position and we're in much better condition now when we're 10 years ago.
And there's no arguing that.
That's a fact.
And I'm happy that that's the case.
Can you imagine if sound and printing and authentication were just like package management is?
It would be a nightmare.
We wouldn't be anywhere.
We would be a trouble.
So, anyway, I think package management now is like sound was 10 years ago.
And it really would be nice if the groups could either get together
or have a benevolent dictator step up and basically drive everything to one.
Package managers aren't about choice.
I can't be on a devian box and say, oh, here's an RPM.
I want to install.
I can't be on an RPM.
I read that box and say, oh, here's a dev or an e-build.
Here's a package I want to install.
That's not choice.
It's like, I'm going to disser what I have to use their packaging system.
Choice is like, hey, I'm on a Linux box.
Pick any distribution.
I can't, I need a script that'll do something.
Oh, I can write it in Perl.
I can write it in Bash.
I can write it in Python or Ruby or PHP or C show or
whatever, you know, that's choice.
Package managers are not about choice.
They're basically about their vendor lock-in is what they are.
And I don't like that.
I think it's going to get us into trouble and it's preventing us from moving forward on some things.
You know, I worry.
I really try to add to the community.
I really do.
I try to grow it.
I try to get people involved.
I try to get back more than I take.
I really do.
And it feels like package managers are just the opposite.
They will, they see, they'll see the same picture.
And I think there's very smart people involved in package management.
They'll see the same problem and they want to solve it.
But they want to solve it their way.
They want to be the ones that solve this problem.
And the problem is, is we've got a bunch of people doing this,
so we don't end up with one solution.
We end up with a bunch of solutions.
And since none of them are really compatible,
it doesn't help us anywhere.
It splits us.
You know, it's like, what'd it be nice if you could just say,
like, you got to say when those, like, oh,
here's a download package or a Mac.
Like, hey, here's your one package that will run everywhere.
Right?
It's like, okay.
Would it be nice on the make sure I was like, well,
what this, are you?
Oh, I need an RPM.
Oh, it's redhead 5.5.
We're sure to have 5 versus redhead 6.
Oh, I need these RPMs.
Oh, hey, it's a Devinian Boxer.
Oh, I'm going to jump to.
What do I do?
Well, you can run your program called, you know,
RPM to e-builder or RPM CPI.
Whatever the program is.
Just strip it out and converge.
That doesn't help us in it.
Right?
Being able to convert between packages doesn't help us
because it doesn't take care of the dependency issues.
Now, I know there's a lot of devels are smart and, yeah,
they got it, yeah, they got it.
And I'm running a thing, so I'll shut up.
I had a couple of concerns though.
One, there's a certain number of people who do the package it.
Right?
These are packageers.
They're the unsung heroes.
Right?
They're the ones who take the software and update the packages.
Make sure the dependencies are there.
Make sure it builds and compiles.
This is installable and they do the testing.
These people burn out.
They don't last forever.
How many times have you heard, well, we do more if we had more
packageers, right?
But people burn out and they go away and do other things.
Or, I was like, well, our distro just doesn't have enough
manpower.
We can't do all these packages.
Like, oh, he's only just released a new version of Firefox.
We've got to go create the new RPMs.
All right?
We've got to create new tarballs.
If you're a large distro with lots of manpower, that's great.
But you're telling me your package people don't turn over.
Wouldn't be better if we could pool the resources and just have one
package to worry about.
Wouldn't it be so nice?
So, anyway, that's that little rant.
So I've mentioned that I believe the packaging systems now are like
sound was 10 years ago.
Pulse Audio has put us in much better place than Arts, ESD,
and all those other little warring sound systems did 10 years ago.
Now, I'm not saying Pulse Audio is great and I'm saying we're
a great shape because specifically of Pulse Audio.
The main thing about Pulse Audio is it's one system that everyone
seems to be pulling together to use.
That is where the strength is.
I believe there are some issues with Pulse Audio.
I have issues with, but I'm still glad it's here.
Also, I believe the packaging systems are about vendor lock-in.
Not about choice.
If you can, I do, I think, that's what it's going to turn into.
It's about locking people into using, like, you try to get people
to use, oh, well, you have to use our devians or our dead
packages.
Oh, hey, I have to use these Europeans.
Oh, you need to use the e-bills.
It's like, come on.
That's just about locking people into your distro.
A lot of packaging, people who write packaging systems seem to
think that their way is better than the other way.
I've heard this a couple times and I find it silly.
There's a lot of smart people working on packaging systems to
think any one of you know better than all the rest of it is silly.
And it's a little bit arrogance.
A lot of you guys are really smart.
So I think you can probably put something over, actually, work.
I really too.
Let's see.
I also think that in about 10 years or less, we're going to start
seeing the distros use those packaging systems as clubs to beat
other distros.
Now, given us GPL or everything's out there and things like that,
it probably won't be quite that easy to do.
But I do believe that when non-technic people start taking
over some of the bigger distros, which currently right now are red-hat
and Ubuntu in 10 years who knows.
But I think when the non-technical people get into position and start
making decisions, they're going to start using whatever resources they
have available to start making money.
Because that's what it's about for those distros.
That's when the trouble's going to start.
I think is there going to use whatever lock-in they can to keep the
customers with them.
And since most things are, since everything's open source,
the few things remaining are, you know, one of them is the package system.
And so this worries me a little bit, long-term.
It's just such a duplication of effort.
It's like, yeah, you got this, you got to make all these different
packages for the same software.
And yeah, I know dependencies work different, there's little issues
to that.
But those are excuses.
You know, we have a Linux kernel that runs on everything from wristwatches
to mainframes, to supercomputers, to tablets.
And you're telling me we can't come up with a packaging system?
Come on.
I'm not.
I was born in the dark, but it was on last night.
Don't give me that crap.
Anyway, I guess that's better for this podcast.
Anything is, I didn't want people to get caught up on the semantics.
And I tried out to be a rant too much.
My point is, why do we have so many packaging systems and package managers?
Now, the big ones are RPM and depth for Red Hat and Debian.
Those probably, I'd say, between 16 and 70% of the splitting market.
Now, there's others, right?
They eat up the rest of that, 20 or 30%.
There's e-builds for, you bunch it, I'm sorry, for Gen2.
There's tarballs, you know, slackware.
Vecta Linux uses these TLC files.
Arch Linux uses its thing.
They're compressed files.
There's a distro called PZ, which is a Turkish distro.
And it's its own format.
And that's just the formats, right?
That's not even included in the package managers.
You know, we got apt, canary, entropy, old package,
Pac-Man, p-root, PZ, pole deck, portage, slapped, smart snap.
They hurt me, you know, zipper.
And there's others out there too.
These links are all in the show notes.
But it's like, am I the only one who thinks that all these package managers
is just a waste of effort?
Package management has been around since the 90s.
We're going into the second decade, actually third decade,
of package management on Linux.
And you're telling me that we haven't come up with a better way of doing this,
that's still all these little fiefdoms of people wanting to do it their way?
Come on, let's move into the 2011.
Can you imagine the sound was still this way?
Please, this is a plea.
My point is, I want to build, to be part of a community,
to make it better.
And all these different package managers,
it's not helping things, basically.
It's just people doing things their way because they can.
It's not about choice.
The choice thing is, I'm trying to help make Linux better.
And having 20 different ways to install a package
and needing to know 20 different methods across all Linux to do something,
is hurting us.
So anyway, this turned into a bit of a rant and a plea.
It wasn't my original intent.
But this is my podcast, I hope you all liked it.
Look at the show notes, if you're interested in that stuff,
I will do my part.
I said, I'm trying not to be one of those people who just comes in
and say, oh, you guys should do this when you leave.
If I can help, cut down on the number of packaging systems on Linux,
send me an email.
Let me know how.
I mean, it'd be great if we could have any end one that would work across everything.
Yeah, Debian, RPM, whatever, they can still keep their formats.
But if we had one system, the two, the big guys would agree to start using,
that would be great.
Anyway, I'm not a packageer.
I can't do everything I need help.
I'm just a member part of the community.
Anyway, see you all later.
This mark goes.
Bye-bye.
Bye-bye.
Bye-bye.
