Expressing advanced user preferences in component installation
Ralf Treinen (PPS), Stefano Zacchiroli (PPS)

TL;DR
This paper introduces a new architecture for expressing complex user preferences in component installation, using a distribution-independent format CUDF and a language MooML for specifying optimization criteria, improving package dependency solving.
Contribution
It presents CUDF and MooML, enabling advanced preference expression and efficient dependency resolution in large software collections.
Findings
CUDF provides a standard format for package descriptions.
MooML allows detailed preference specification.
Partial evaluation improves solver efficiency.
Abstract
State of the art component-based software collections - such as FOSS distributions - are made of up to dozens of thousands components, with complex inter-dependencies and conflicts. Given a particular installation of such a system, each request to alter the set of installed components has potentially (too) many satisfying answers. We present an architecture that allows to express advanced user preferences about package selection in FOSS distributions. The architecture is composed by a distribution-independent format for describing available and installed packages called CUDF (Common Upgradeability Description Format), and a foundational language called MooML to specify optimization criteria. We present the syntax and semantics of CUDF and MooML, and discuss the partial evaluation mechanism of MooML which allows to gain efficiency in package dependency solvers.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
