skip to main content
10.1145/2000229.2000255acmconferencesArticle/Chapter ViewAbstractPublication PagescbseConference Proceedingsconference-collections
research-article

MPM: a modular package manager

Published: 20 June 2011 Publication History

Abstract

Software distributions in the FOSS world rely on so-called package managers for the installation and removal of packages on target machines. State-of-the-art package managers are monolithic in architecture, and each of them is hard-wired to an ad-hoc dependency solver implementing a customized heuristics. In this paper we propose a modular architecture allowing for pluggable dependency solvers and backends. We argue that this is the path that leads to the next generation of package managers that will deliver better results, accept more expressive input languages, and can be easily adaptable to new platforms. We present a working prototype---called MPM---which has been implemented following the design advocated in this paper.

References

[1]
P. Abate, A. Guerreiro, S. Laurière, R. Treinen, and S. Zacchiroli. Extension of an existing package manager to produce traces of ugradeability problems in CUDF format. Deliverable D5.2, The Mancoosi Project, Aug. 2010. http://www.mancoosi.org/reports/d5.2.pdf.
[2]
J. Argelich, D. L. Berre, I. Lynce, J. Marques-Silva, and P. Rapicault. Solving Linux upgradeability problems using Boolean optimization. In Lynce and Treinen {11}, pages 11--22. http://arxiv.org/abs/1007.1021v1.
[3]
D. L. Berre and A. Parrain. On SAT technologies for dependency management and beyond. In S. Thiel and K. Pohl, editors, 12th International Conference on Software Product Lines, Second Volume (Workshops), pages 197--200, Limerick, Ireland, Sept. 2008. Lero Int. Science Centre, University of Limerick, Ireland.
[4]
D. L. Berre and P. Rapicault. Dependency management for the Eclipse ecosystem. In R. D. Cosmo and P. Inverardi, editors, International Workshop on Open Component Ecosystems (IWOCE 2009), Amsterdam, The Netherlands, 2009.
[5]
C. Bozman. Converting Eclipse metadata into CUDF. Technical Report TR5, The Mancoosi Project, Nov. 2010. http://www.mancoosi.org/reports/p2.pdf.
[6]
EDOS Project WP2 Team. First report on formal management of software dependencies. Technical Report D2.1, Sept. 2005. http://www.edos-project.org/xwiki/bin/Main/Deliverables.
[7]
EDOS Project WP2 Team. Second report on formal management of software dependencies. Technical Report D2.2, Mar. 2006. http://www.edos-project.org/xwiki/bin/Main/Deliverables.
[8]
G. Jenson, J. Dietrich, and H. W. Guesgen. An empirical study of the component dependency resolution search space. In L. Grunske, R. Reussner, and F. Plasil, editors, 13th International Symposium on Component-Based Software Engineering, volume 6092 of Lecture Notes in Computer Science, pages 182--199, Prague, Czech Republic, June 2010. Springer-Verlag.
[9]
J. A. Klode. RFC: The future of solving dependency problems in APT (SAT, CUDF). http://lists.debian.org/deity/2010/12/msg00053.html.
[10]
Libzypp library. http://en.opensuse.org/Portal:Libzypp, 2011.
[11]
I. Lynce and R. Treinen, editors. Proc. 1st International Workshop on Logics for Component Configuration, volume 29 of EPTCS, 2010.
[12]
E. V. Lyubimkin. Cupt package manager, 2010. http://wiki.debian.org/Cupt.
[13]
F. Mancinelli, J. Boender, R. D. Cosmo, J. Vouillon, B. Durak, X. Leroy, and R. Treinen. Managing the complexity of large free and open source package-based software distributions. In 21st IEEE/ACM International Conference on Automated Software Engineering (ASE 2006), pages 199--208, Tokyo, Japan, Sept. 2006. IEEE CS Press.
[14]
Mancoosi. Mancoosi international solver competition 2010. http://www.mancoosi.org/misc-2010/, July 2010.
[15]
C. Michel and M. Rueher. Handling software upgradeability problems with MILP solvers. In Lynce and Treinen {11}, pages 1--10. http://arxiv.org/abs/1007.1020v1.
[16]
R. Treinen and S. Zacchiroli. Description of the CUDF format. Technical Report D5.1, The Mancoosi Project, Nov. 2008. http://www.mancoosi.org/reports/tr3.pdf.
[17]
P. Trezentos, I. Lynce, and A. L. Oliveira. Apt-pbo: solving the software dependency problem using pseudo-Boolean optimization. In C. Pecheur, J. Andrews, and E. D. Nitto, editors, 25th IEEE/ACM International Conference on Automated Software Engineering (ASE 2010), pages 427--436, Antwerp, Belgium, Sept. 2010. ACM.
[18]
C. Tucker, D. Shuffelton, R. Jhala, and S. Lerner. OPIUM: Optimal package install/uninstall manager. In 29th International Conference on Software Engineering (ICSE 2007), pages 178--188, Minneapolis, MN, USA, May 2007. IEEE Computer Society.
[19]
Yast. http://en.opensuse.org/Package_management, 2011.

Cited By

View all
  • (2021)When and How to Make Breaking ChangesACM Transactions on Software Engineering and Methodology10.1145/344724530:4(1-56)Online publication date: 23-Jul-2021
  • (2019)AlleAlle: bounded relational model finding with unbounded dataProceedings of the 2019 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software10.1145/3359591.3359726(46-61)Online publication date: 23-Oct-2019
  • (2018)Negative trust for conflict resolution in software managementWeb Intelligence10.3233/WEB-18039316:4(251-271)Online publication date: 31-Oct-2018
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
CBSE '11: Proceedings of the 14th international ACM Sigsoft symposium on Component based software engineering
June 2011
214 pages
ISBN:9781450307239
DOI:10.1145/2000229
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 June 2011

Permissions

Request permissions for this article.

Check for updates

Author Tag

  1. package managers

Qualifiers

  • Research-article

Conference

Comparch '11
Sponsor:

Acceptance Rates

Overall Acceptance Rate 55 of 147 submissions, 37%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)34
  • Downloads (Last 6 weeks)3
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2021)When and How to Make Breaking ChangesACM Transactions on Software Engineering and Methodology10.1145/344724530:4(1-56)Online publication date: 23-Jul-2021
  • (2019)AlleAlle: bounded relational model finding with unbounded dataProceedings of the 2019 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software10.1145/3359591.3359726(46-61)Online publication date: 23-Oct-2019
  • (2018)Negative trust for conflict resolution in software managementWeb Intelligence10.3233/WEB-18039316:4(251-271)Online publication date: 31-Oct-2018
  • (2018)On the use of package managers by the C++ open-source communityProceedings of the 33rd Annual ACM Symposium on Applied Computing10.1145/3167132.3167290(1483-1491)Online publication date: 9-Apr-2018
  • (2018)Intercomponent Dependency Issues in Software EcosystemsSoftware Technology: 10 Years of Innovation in IEEE Computer10.1002/9781119174240.ch3(35-57)Online publication date: 3-Sep-2018
  • (2017)A Formal Approach for Correct Elastic Package-Based Free and Open Source Software Composition in CloudOn the Move to Meaningful Internet Systems. OTM 2017 Conferences10.1007/978-3-319-69462-7_46(732-750)Online publication date: 20-Oct-2017
  • (2016)Context Aware Reconfiguration in Software Product LinesProceedings of the 10th International Workshop on Variability Modelling of Software-Intensive Systems10.1145/2866614.2866620(41-48)Online publication date: 27-Jan-2016
  • (2015)Mining component repositories for installability issuesProceedings of the 12th Working Conference on Mining Software Repositories10.5555/2820518.2820524(24-33)Online publication date: 16-May-2015
  • (2015)Mining Component Repositories for Installability Issues2015 IEEE/ACM 12th Working Conference on Mining Software Repositories10.1109/MSR.2015.10(24-33)Online publication date: May-2015
  • (2015)A model-driven approach to detect faults in FOSS systemsJournal of Software: Evolution and Process10.1002/smr.171627:4(294-318)Online publication date: 1-Apr-2015
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media