summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorKevin Deldycke <kevin@deldycke.com>2026-04-22 08:29:21 +0200
committerSharlatan Hellseher <sharlatanus@gmail.com>2026-06-28 21:23:28 +0100
commit6c8225e32c1c5bd343a64e55413f5980467d5163 (patch)
treeba6927495ccd5991efa02bd1adc8710946f3de06 /gnu
parentf42dd034b5ccc46c31074361e34f3c1f6098bec8 (diff)
gnu: Add meta-package-manager.
* gnu/packages/package-management.scm (meta-package-manager): New variable. Merges: guix/guix!8047 Reviewed-by: bdunahu <bdunahu@operationnull.com> Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/package-management.scm44
1 files changed, 44 insertions, 0 deletions
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index eae168fe54c..a297750cc49 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -33,6 +33,7 @@
33;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu> 33;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
34;;; Copyright © 2025 unwox <me@unwox.com> 34;;; Copyright © 2025 unwox <me@unwox.com>
35;;; Copyright © 2026 Owen T. Heisler <writer@owenh.net> 35;;; Copyright © 2026 Owen T. Heisler <writer@owenh.net>
36;;; Copyright © 2026 Kevin Deldycke <kevin@deldycke.com>
36;;; 37;;;
37;;; This file is part of GNU Guix. 38;;; This file is part of GNU Guix.
38;;; 39;;;
@@ -928,6 +929,49 @@ interface for interacting with the application.")
928by using a Xapian cache.") 929by using a Xapian cache.")
929 (license (list license:gpl3+ license:cc0)))) 930 (license (list license:gpl3+ license:cc0))))
930 931
932(define-public meta-package-manager
933 (package
934 (name "meta-package-manager")
935 (version "7.0.1")
936 (source
937 (origin
938 (method git-fetch)
939 (uri (git-reference
940 (url "https://github.com/kdeldycke/meta-package-manager")
941 (commit (string-append "v" version))))
942 (file-name (git-file-name name version))
943 (sha256
944 (base32 "1y56z5970kp540w408y0fzk7g7r27vplqqihdav7gf8mqzfd23sz"))))
945 (build-system pyproject-build-system)
946 (arguments
947 (list
948 #:build-backend "setuptools.build_meta"
949 ;; test_cli_sbom.py needs the dropped [sbom] extra (cyclonedx,
950 ;; spdx-tools); skip it.
951 #:test-flags #~(list "--ignore=tests/test_cli_sbom.py")))
952 ;; python-pyyaml and python-tomlkit: tests/test_docs.py loads
953 ;; docs/docs_update.py, which imports them.
954 (native-inputs
955 (list python-pytest
956 python-pyyaml
957 python-setuptools
958 python-tomlkit))
959 (propagated-inputs
960 (list python-boltons
961 python-click-extra
962 python-extra-platforms
963 python-packageurl
964 python-tomli-w
965 python-xmltodict))
966 (home-page "https://kdeldycke.github.io/meta-package-manager/")
967 (synopsis "Package managers abstraction and unification tool")
968 (description
969 "Meta Package Manager (mpm) is a @acronym{Command Line Interface, CLI}
970that wraps multiple GNU/Linux package managers behind a unified interface.
971It can list, search, install, upgrade, and remove packages across all detected
972managers simultaneously. Output formats include tables, JSON, and CSV.")
973 (license license:gpl2+)))
974
931 975
932;;; 976;;;
933;;; Other tools. 977;;; Other tools.