Ian Murdock posted part two of the analysis of Linux Software installation issue done at the FSG package summit. It doesn’t make sense to repeat anything he has written, but I do want to discuss some core points.
First of all: the analysis came to the conclusion that we need an evolutionary process to solve the problem. While it is tempting to throw in something entirely new the main problem is that is not clear at all when the main distributions would pick this up:
No, to find a way forward, we need an evolutionary step from where we are today. From there, perhaps we can do more, but even the first steps can be quite valuable in their own right.
This can be reached by implementing an API to the underlying package system – something which was already mentioned by Michael Leibowiz. The API itself should be as simple as possible because normally the ISVs don’t need to have all the flexibility of RPM or deb/dpkg. But they do need a way to tell the system which kinds of files they have included, and they need a way to query which LSB version is supported by the underlying system. Interesting here is that the analysis says that we do not have to worry about dependencies:
Importantly, because we assume an environment that’s LSB compliant, we don’t have to worry about dependencies, because everything is covered by the single LSB dependency, and dependency management is 95% of the package systems right there. We still need minimal dependency support—components can extend the LSB, and applications can depend on those other components being installed—but we’re talking on the order of a handful of components, not the tens of thousands of components typical package systems have to deal with.
I wouldn’t have thought that, but since the people who made this analysis know quite well what they are talking about I guess they are right here. Also, the API could be dependency agnostic in the first version – and if it would be adopted pretty quickly we could think about extending the API.
Most important is that we get something working which is accepted and works and is used in reality.
I cross my fingers that this is the beginning of something new to solve this problem. I really do.