Linked by Thom Holwerda on Fri 19th Jan 2007 21:33 UTC, submitted by twenex
Linux For independent software vendors, one of the major problems in supporting GNU/Linux is the variety of package management systems. However, if the Free Standards Group has its way, the next version of the Linux Standard Base will solve that problem by providing an application programming interface that acts as a bridge between the major package systems and software installers. Ian Murdock, CTO of the Free Standards Group, says the solution could be included in the most widely used distributions by early 2008.
Order by: Score:
Good Bless Those Guys
by merkoth on Fri 19th Jan 2007 21:50 UTC
merkoth
Member since:
2006-09-22

This is good news: We will be finally able to say "GNU/Linux" to refer to a certain amount of standard tools and systems and that we will be able to have a centralized point to get apps and libraries.

The problem is: I don't think that the distro makers really take care to make their products LSB-compliants. Time will tell I guess.

Anyway, I don't think that the people behind RPM, APT or klik will just say "There's a new package manager? 'nuff said" and dropt their projects. I, for one, really like APT, so I expect to be able to use it no matter what the LSB says.

Edit: Damn typo, it's God Bless... How come we can't change the subject?

Edited 2007-01-19 21:51

Reply Score: 5

RE: Good Bless Those Guys
by twenex on Sat 20th Jan 2007 22:28 UTC in reply to "Good Bless Those Guys"
twenex Member since:
2006-04-21

The problem is: I don't think that the distro makers really take care to make their products LSB-compliants. Time will tell I guess.

Anyway, I don't think that the people behind RPM, APT or klik will just say "There's a new package manager? 'nuff said" and dropt their projects. I, for one, really like APT, so I expect to be able to use it no matter what the LSB says.


Hi. Did you read the article? If so, I think you missed the bit where it was specifically pointed out that vendors would not accept a new package format, and that the lack of adoption vis-à-vis the LSB has a lot to do with the fact that it specifies RPM as its one and only recommended package format. Instead, the new standard is intended to be a compatibility layer between package managers (in rather the same way as POSIX is a compatibility layer between different vendors' implementations of Unix and not-Unix), [i]not a new package manager in itself.

Reply Score: 4

RE: Good Bless Those Guys
by tyrione on Sun 21st Jan 2007 21:39 UTC in reply to "Good Bless Those Guys"
tyrione Member since:
2005-11-21

You're right! All Hail Infinite Nothingness!

Reply Score: 1

Bundles
by Rlwimi on Fri 19th Jan 2007 21:53 UTC
Rlwimi
Member since:
2006-11-02

Wake me up when Linux supports this:

http://en.wikipedia.org/wiki/Bundle_(NEXTSTEP)

One unified desktop
One unified application bundling/package

Reply Score: 1

RE: Bundles
by AlexandreAM on Sat 20th Jan 2007 11:24 UTC in reply to "Bundles"
AlexandreAM Member since:
2006-02-06

One unified desktop
One unified application bundling/package


One size fits all.

No, thanks. Next, please!

Really, I like the idea of having a good package management system that can spread across many distributions, but one unified whatever is not the way for linux, at least not for me.

Reply Score: 2

RE: Bundles
by gilboa on Mon 22nd Jan 2007 16:16 UTC in reply to "Bundles"
gilboa Member since:
2005-07-06

... Wait.
Nope.

- Gilboa

Reply Score: 2

dont need new formats
by PipoDeClown on Fri 19th Jan 2007 21:58 UTC
PipoDeClown
Member since:
2005-07-19

package installers/software updaters should support cid (configuration installataion distribution)
and:
- backup / restore app systemwide settings
- backup / restore app user settings
- backup / restore the app itself (for migration)
- import / export settings to older or newer version of the same app
- automated unattended installs
- and what not else...

Reply Score: 0

ThankGOD!
by microFawad on Fri 19th Jan 2007 21:58 UTC
microFawad
Member since:
2005-12-09

When u install Fedora, u have different way of installing software. When u install Ubuntu, u have different. Similarly Gentoo...and many more. lol

Reply Score: 1

Protopackage
by John Nilsson on Fri 19th Jan 2007 22:02 UTC
John Nilsson
Member since:
2005-07-06

As I stated in TFA. What about a protopackage? A packageformat designed specifically to be transformed into a native package by distributors.

With this I don't mean only something aking to 'alien' but rather intended for real integration in their distribution repos. (Even if the alien route should be an option).

Reply Score: 5

This can't work
by bhearsum on Fri 19th Jan 2007 22:09 UTC
bhearsum
Member since:
2006-02-07

This can't work without distribution co-operation.

Reply Score: 3

RE: This can't work
by miscz on Fri 19th Jan 2007 23:15 UTC in reply to "This can't work"
miscz Member since:
2005-07-17

From the article:
The recent packaging summit was attended by representatives of the major distributions that use the two main packaging formats, with RPM represented by Red Hat, Mandriva, and Novell, and dpkg by Debian and Ubuntu. Murdock considers this attendance an encouraging sign. "If anything, the distributions are encouraged that we are taking this very simple, pragmatic approach."

Reply Score: 5

RE: This can't work
by butters on Sun 21st Jan 2007 05:35 UTC in reply to "This can't work"
butters Member since:
2005-07-08

This is a compatibility interface. The distros don't need to cooperate with each other, they just need to cooperate with the interface. And it will be in their best interest to do so. Much less work for them if they do.

Reply Score: 2

What about repository namespaces?
by diegocg on Fri 19th Jan 2007 22:09 UTC
diegocg
Member since:
2005-07-08

The top #1 problem that IMO stops linux distros from not being able to use the same packages is not so much the packaging format (although it's also a problem), but the fact that every distro names their packages in a different way.

For example, the X.org packages in ubuntu have a "xserver-xorg" name, but in fedora they have a "xorg" name IIRC. Even if both use the same packaing format, compatibility is not possible: Most packages are named differently, debian-based systems have very weird methods of naming libraries compared with rmp-derived systems. So dependencies will fail when you try to install a package from other distro.

So IMO just adopting a common package format is not going to help. We need that all distros name packages in the same way. And there's only a viable way to do that: encourage upstream developers to set the name and the dependencies themselves in a file somewhere, ie: encourage upstream developers to take part in the "packaging" work.

Reply Score: 5

Namespaces are not a problem
by Wes Felter on Fri 19th Jan 2007 23:26 UTC in reply to "What about repository namespaces?"
Wes Felter Member since:
2005-11-15

LSB RPMs contain third-party apps, not core parts of the distro, so the chance of name overlap is pretty small. An LSB RPM only has one dependency: a virtual package called "lsb" that indicates that the underlying distro is LSB-compatible. Thus, the names of individual packages in the distro (like the X server) don't matter.

Reply Score: 3

n0xx Member since:
2005-07-12

You're absolutely right... There should be a standard package naming scheme adopted by every LSB compliant distro. This would require the various distros to change, to some extent, their current dependency layout. It's undoubtedly a tricky process.

But then again, no one is saying the restructuring to be backported to infinity, or even backported at all. And the benefits should would be undoubtedly great. Packages would be basically distribution agnostic. You should be able to just download a package, any package in any format and install it on whatever distro.

eg: You're using Fedora... So, one fine day you try to install a package, but you don't have libdeprecated on your repositories. So, now you have to option to fire up aptitude from within yum to search Debian repositories, install the dependency and automagicaly return to yum to finish the package installation, adding both packagaes (the one you where trying to install and libdeprecated) to the system install packages list.

Reply Score: 2

DigitalAxis Member since:
2005-08-28

Oh, it's not just namespaces.

There's the names of the files (necessary to compare and make sure you have the right thing)

There's where the files go in the file system (/opt or /usr/bin, or is there an /usr/local/ and is it the same as /opt?, and is /bin the same as /usr/bin or not?)

What kind of package is it? Binary package, source package, install script?

Then there's what what patches the package has, what options it's compiled with (having used Gentoo, I realize options CAN make a difference)

What package versions was it compiled against?

What patches/options were those packages compiled with? (As far as I know this may matter a lot less, I doubt too many packages would require optional/nonstandard features of other libraries)


Off the top of my head, those are the various sources of minor incompatability. It's not insurmountable, but it would potentially require a lot of control information in the package.

Well, that's just my thoughts. The first three items could probably be dealt with without too much fuss; I'm not sure just how much damage the rest of them would cause. Maybe someone with more experience with Linux packaging could clear this up; I've almost exclusively used packages made for my distribution.

Edited 2007-01-19 23:50

Reply Score: 3

Package Management System
by vermaden on Fri 19th Jan 2007 22:40 UTC
vermaden
Member since:
2006-11-18

This idea is generally useless for source oriented distros like Gentoo/Lunar.

Also Debian based distros having so many packages will not bother such 'standards' since their repositories are so big that they do not need to get outside packages.

There is also initiative to make RPM the same [standarised] on all distros that use RPM packages: http://www.rpm.org. This seams really nice idea, but why so late?

Reply Score: 1

Much ado about nothing
by juvvadi on Fri 19th Jan 2007 22:43 UTC
juvvadi
Member since:
2006-01-19

Most RPM spec files are less than 100 lines. Gentoo ebuilds are even smaller. I never used apt but I am assuming it is not any more difficult than writing an RPM spec file. Any ISV who spent a lot of man hours developing a product surely can surely write an apt/RPM spec/ebuild file. A lot more difficult problem is that linux distributions let users upgrade system components also. An ISV who assumes that a user has KDE x.y because he has Mandriva version a.b will be surprised to find that user has upgraded to KDE x+1.0. Package managers don't help in that case.

A much better approach is to develop a tool that can sniff versions of dynamic libraries and any other dependency's that software may have and test for them explicitly. Going around testing on every distribution
in the planet is really a not a very efficient use of programmer time.

Reply Score: 1

Installers are bad
by Wes Felter on Fri 19th Jan 2007 23:31 UTC
Wes Felter
Member since:
2005-11-15

LSB already allows app vendors to package their apps in universally-compatible RPMs. This new API will allow app vendors to ship binary-only installers that do who-knows-what to your system, like in Windows. I simply don't see how this is an improvement for users or developers. Murdock claims that it is easier for vendors to write installers than to create RPMs, but I don't understand how this can be true.

Reply Score: 5

RE: Installers are bad
by PcGoober on Sun 21st Jan 2007 13:56 UTC in reply to "Installers are bad"
PcGoober Member since:
2006-03-03

Not when you are trying just to get $h|t done! There are times when I get ticked because say I run into a nasty bug in a analyzer while doing a network trace to find a fault in driver code. We can't afford to fiddle-f*ck around (non-productive work) for hours wasting time because current installers don't have the latest version (which contains the fix) in its repo. Here is when we need the app updated fast so we can get back to debugging code (productive work).

This is why companies don't like to support in house Linux development. Far too often simple obstacles like upgrading an analyzer can take forever when it should only take a couple of minutes. Boss comes over to see how that 30 minute bug fix is coming along but you are off spanking your johnson trying to get the analyzer updated just so you can get started.

The nightmare of installing updated software when binaries are not supplied by the distribution truly sucks! And really it sucks even if they do when it is a non-trivial app. I do like installers such as APT as it does ease the pain of fetching dependencies but it only works IF the planets are aligned just right in the repository ... this sucks!

Have you ever downloaded KDE in hopes to update to its latest version and tried to build from source? No? How about installing a new Subversion when you have KDevelop on your machine? No? Give it a whirl sometime, as you'll especially enjoy the apr0 vs apr1 library nightmare.

At the very least I would like to see it solve the dependency hell for user apps but the utimate end game for the new package manager interface needs to allow the UPDATE of any existing installed package with the ease of a click (or enter for you old-schoolers).

If the distribution doesn't provide you with a binary but the project site does .. no sweat! Just enter the URL of the project's download site and move on.

Reply Score: 1

NOW linux is ready for the desktop…
by SK8T on Fri 19th Jan 2007 23:32 UTC
SK8T
Member since:
2006-06-01

thank god! Long needed and now it's here! Great day!

Reply Score: 2

Great for small projects
by sadangel on Sat 20th Jan 2007 00:20 UTC
sadangel
Member since:
2006-11-04

This will be great for small projects whose basic installation to this point has been distributing source code. I don't know how they will handle incompatabilities with regard to location of certain configuration files and whatnot. There are standards for these, but rarely are they followed.

As for established distros with well-liked packaging systems, they will likely roll this api support into their tools and continue merrily including their own packages same as always.

I see no downside to this. Still, I wouldn't be surprised if this didn't attract enough attention to be really helpful. It requires effort on the part of distro developers who will likely take interest, but where I see it finding success is on small projects without inclusion in the standard set of most distro packages. That's a harder sell.

Reply Score: 1

RE[2]: What about repository namespaces?
by Wes Felter on Sat 20th Jan 2007 01:57 UTC
Wes Felter
Member since:
2005-11-15

Then there's what what patches the package has, what options it's compiled with (having used Gentoo, I realize options CAN make a difference)

What package versions was it compiled against?

What patches/options were those packages compiled with? (As far as I know this may matter a lot less, I doubt too many packages would require optional/nonstandard features of other libraries)


All this is covered by the LSB spec. If an application uses only LSB APIs then it will work on all LSB-compliant distros.

Reply Score: 4

RE[2]: Installers are bad
by Wes Felter on Sun 21st Jan 2007 17:51 UTC
Wes Felter
Member since:
2005-11-15

Nice rant, but the LSB has already solved that problem, because it allows the original developer to publish binary packages that work on any LSB-compliant distro. So a binary installer published by the original developer is worse than a binary RPM published by the original developer, and the LSB does users a disservice by promoting installers.

Reply Score: 2

RE[3]: Installers are bad
by PcGoober on Mon 22nd Jan 2007 05:07 UTC in reply to "RE[2]: Installers are bad"
PcGoober Member since:
2006-03-03

Yeah, that was a bit ranty, the comment caught me at a weak point ... but!

The point I obviously failed to make is that I (and many others) could care less if they use debs, rpms, on the fly source builds or installers. The key point here is when I select a *binary* package to install/upgrade that should be it. No extra downloading of pkgs, no version lockout because some obscure pkg on my system needs library xyz at version 123. Just upgrade my existing package or install it if the pkg isn't installed.

<Click-Click>
(progress bar)
/////////////////////////!
message: Application was installed successfully.
<Click>
Done! Off to use the updated pkg.

All I am saying is if I want to monkey with building the app myself I know where to get the source. But if I select a binary pkg to install then one can conclude that I just want it installed and as fast as possible. There's no need to make every upgrade a lab project on how to effectively search for dependent pkgs not provided by the distributor for the version of Linux you are currently running.

K.I.S.S. is not just for the ignorant, it also serves the impatient.

Reply Score: 1