I just finished reading Mike Hearn’s article The user interface vision. It’s an interesting read on his views of what the UI for package management can evolve into. I like the ideas, although some things need fleshing out more (as he also states).
If we really want to get Linux on the desktop, this is an area that needs to be tackled. Sure, Gentoo’s method works great for Gentoo. Debian’s method for Debian… The thing is, the average person who buys a computer for school or entertainment or whatever shouldn’t have to care what distribution they’re using. I’ve seen this many times in Gaim. A person will come in asking how to install Gaim, saying he downloaded “the file” from our site, but can’t run it. We then have to explain package management, the commands required, and tailor it to the distribution they’re using. A better solution is needed, and it’s about time we figured something out.
About a year ago, various people who were/are involved in package management (Mike Hearn from autopackage, Jeff Johnson from rpm, Alain Penders from Gentoo, myself from GNUpdate, and many others got together to discuss package management and a way to standardize on meta-data (such naming conventions, dependencies, etc.). We had some good discussions, but in the end, not a whole lot came from it. Although disappointing, it wasn’t unexpected. The differences between various package systems is not only technical, it’s political in some cases.
So far, Mike’s autopackage is the first possible solution that has impressed me. While it has a ways to go, it’s providing an interesting distro-neutral form of packaging, and appears to be well thought-out. I’ll be supporting autopackage in the first release of the Galago software.
I guess only time will tell. A lot of effort will be needed, as well as cooperation, if we’re going to solve this problem.
I’ve thought about this a lot and come to a simple conclusion: There is no solution. When you talk about package management being political, you are right on the mark. People choose different systems because they don’t like the other guys. Autopackage is just one more in the mix for some people to dislike. People use a distribution because they like that distributions way better. If we reduce all the differences between distros down to null, then why were we using them in the first place?
Linux is fragmented. Face it. It will probably always be fragmented. It’s good. Yes, you are absolutly right it isn’t convienent to users. However, that’s why company’s like RedHat and groups like Debian try to make theirs the best experience for their respective user groups.
The best you can do as a developer is to provide packages in the formats you want to, and always provide the source…. not so that users can compile the source, but so that distros can and include it.
Microsoft never got together with Apple to decide how to make a common software package format. Sun never talked to SGI. Deal with it. A user choose to use his systems for his own reasons. Or that user buys his system preinstalled from a vendor he trusts, and that vendor can deal with it.
And no, that’s not an ideal situation. You just have to consider there never will be one and see it’s the best situation.