Title :
OPIUM: Optimal Package Install/Uninstall Manager
Author :
Tucker, Chris ; Shuffelton, David ; Jhala, Ranjit ; Lerner, Sorin
Author_Institution :
UC San Diego, La Jolla, CA
Abstract :
Linux distributions often include package management tools such as apt-get in Debian or yum in RedHat. Using information about package dependencies and conflicts, such tools can determine how to install a new package (and its dependencies) on a system of already installed packages. Using off-the-shelf SAT solvers, pseudo-boolean solvers, and Integer Linear Programming solvers, we have developed a new package-management tool, called Opium, that improves on current tools in two ways: (1) Opium is complete, in that if there is a solution, Opium is guaranteed to find it, and (2) 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.
Keywords :
Linux; configuration management; software packages; Linux distributions; Opium; Optimal Package Install/Uninstall Manager; dynamic software linking; integer linear programming solvers; package dependencies; package management tools; pseudo-boolean solvers; Application software; Bandwidth; Economic forecasting; Environmental economics; Integer linear programming; Joining processes; Linux; Packaging machines; Software libraries; Software packages;
Conference_Titel :
Software Engineering, 2007. ICSE 2007. 29th International Conference on
Conference_Location :
Minneapolis, MN
Print_ISBN :
0-7695-2828-7
DOI :
10.1109/ICSE.2007.59