Linked by Thom Holwerda on Mon 4th Jun 2007 16:38 UTC, submitted by anonymous
Benchmarks "We have developed a new package-management tool, called Opium, that improves on current tools in two ways: Opium is complete, in that if there is a solution, Opium is guaranteed to find it, and Opium can optimize a user-provided objective function, which could for example state that smaller packages should be preferred over larger ones. We performed a comparative study of our tool against Debian's apt-get on 600 traces of real-world package installations. We show that Opium runs fast enough to be usable, and that its completeness and optimality guarantees provide concrete benefits to end users."
Permalink for comment 245205
To read all comments associated with this story, please click here.
Solving the wrong problem
by Tom5 on Mon 4th Jun 2007 18:03 UTC
Member since:

From the paper:

Libraries and software packages have dependencies that must be satisfied, and conflicts that must be avoided. Otherwise the entire system, not just a single application, may become unstable.

The solution isn't a better solver (although that's nice to have anyway), the solution is remove the possibility of conflicts.

Why do I need to use a massively complex algorithm to find the single version of some libfoo that works with all of the one thousand packages on my machine? What the system needs is a bit of slack. If there's a period of a few months when one program needs libfoo > 3 and another needs libfoo == 3 that shouldn't matter. Just keep two copies of libfoo on my system until the problem is fixed.

This is how Zero Install works:

Reply Score: 4