summaryrefslogtreecommitdiff
path: root/gnu/packages/package-management.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/package-management.scm')
-rw-r--r--gnu/packages/package-management.scm146
1 files changed, 121 insertions, 25 deletions
diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index d032002464..e66ceb612e 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -18,7 +18,7 @@
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
-;;; Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022, 2023 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2023 jgart <jgart@dismail.de>
@@ -27,6 +27,7 @@
;;; Copyright © 2024 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2025 aurtzy <aurtzy@gmail.com>
+;;; Copyright © 2025 Tomás Ortín Fernández <quanrong@mailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -80,6 +81,10 @@
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
+ #:use-module (gnu packages golang-build)
+ #:use-module (gnu packages golang-check)
+ #:use-module (gnu packages golang-vcs)
+ #:use-module (gnu packages golang-xyz)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
@@ -127,9 +132,11 @@
#:use-module (gnu packages xorg)
#:use-module (gnu packages version-control)
#:autoload (guix build-system channel) (channel-build-system)
+ #:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system go)
#:use-module (guix build-system guile)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
@@ -146,6 +153,10 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
+ #:use-module (gnu packages readline)
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages selinux)
+ #:use-module (gnu packages elf)
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR $SSL_CERT_FILE $GUIX_EXTENSIONS_PATH))
#:use-module (ice-9 match)
#:use-module (srfi srfi-1))
@@ -183,8 +194,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "1.4.0")
- (commit "826e305fde3687573a7e1449ce91e82836696ce6")
- (revision 41))
+ (commit "9202921e812708b23788b2209cdb576d456f56db")
+ (revision 43))
(package
(name "guix")
@@ -200,7 +211,7 @@
(commit commit)))
(sha256
(base32
- "17j1gq50pni96vxs45swf3awxgfscfyapfra0szjwji56cyfmhf5"))
+ "02cvf6rndj9fwp13gqrqw2r9icpls8p2pq8cxpqs6j7ayj0pj1hy"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@@ -1019,7 +1030,7 @@ features of Stow with some extensions.")
(define-public rpm
(package
(name "rpm")
- (version "4.18.0")
+ (version "4.20.1")
(source (origin
(method url-fetch)
(uri (string-append "http://ftp.rpm.org/releases/rpm-"
@@ -1027,39 +1038,71 @@ features of Stow with some extensions.")
version ".tar.bz2"))
(sha256
(base32
- "0m250plyananjn0790xmwy6kixmxcdj5iyy2ybnk1aw7f4nia5ra"))))
+ "0kqjc4k679h4s47gx4wxi049yvy9hpjcijvinqx56r43cc97wr2j"))))
(outputs '("out" "debug"))
- (build-system gnu-build-system)
+ (build-system cmake-build-system)
(arguments
- '(#:configure-flags '("--enable-python"
- ;; The RPM database must be writable.
- "--localstatedir=/var")
- #:phases (modify-phases %standard-phases
- (add-after 'unpack 'fix-lua-check
- (lambda _
- (substitute* "configure"
- (("lua >= ?.?")
- "lua-5.3 >= 5.3"))))
- (add-after 'unpack 'patch-build-system
- (lambda _
- ;; The build system attempts to create /var in the build
- ;; chroot, and fails.
- (substitute* "Makefile.in"
- ((".*MKDIR_P) \\$\\(DESTDIR)\\$\\(localstatedir.*")
- "")))))))
+ (list
+ #:tests? #f ; TEST need fhs envirnment.
+ #:configure-flags
+ #~(list
+ ;; TODO: Add rpm-sequoia
+ "-DWITH_SEQUOIA=OFF"
+ #$@(if (this-package-native-input "rpmpgp_legacy")
+ #~("-DWITH_LEGACY_OPENPGP=ON")
+ #~()))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'unpack-rpmpgp_legacy
+ (lambda _
+ (copy-recursively
+ #$(this-package-native-input "rpmpgp_legacy")
+ "rpmio/rpmpgp_legacy")))
+ (add-after 'unpack 'fix-install
+ (lambda _
+ (let ((site
+ (string-append
+ #$output
+ "/lib/python"
+ #$(version-major+minor
+ (package-version
+ (this-package-native-input "python")))
+ "/site-packages")))
+ (substitute* "python/CMakeLists.txt"
+ (("\\$[{]Python3_SITEARCH[}]")
+ site)))
+ (substitute* "plugins/CMakeLists.txt"
+ (("\\$[{]dbus-1_DATADIR[}]")
+ (string-append #$output "/share"))))))))
(native-inputs
(list pkg-config
- python))
+ python
+ gettext-minimal
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rpm-software-management/rpmpgp_legacy")
+ (commit "1.1")))
+ (file-name "rpmpgp_legacy")
+ (sha256
+ (base32 "0z29bdjfd5p0ygn2g9w3xjc4fx4ba8rcikk28acjl7xwfgfsa4pd")))))
(inputs
(list bzip2
+ readline
file
libarchive
libgcrypt
+ dbus
lua
sqlite
xz
zlib
- zstd))
+ elfutils
+ acl
+ audit
+ libselinux
+ libcap
+ `(,zstd "lib")))
(propagated-inputs
;; popt is listed in the 'Requires' of rpm.pc.
(list popt))
@@ -2473,6 +2516,59 @@ but could potentially work for end-users of those programs. It also has a trans
from R7RS, which allows most R7RS code to run on R6RS implementations.")
(license license:gpl3+)))
+(define-public asdf-vm
+ (package
+ (name "asdf-vm")
+ (version "0.18.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/asdf-vm/asdf")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "09p4d41l3f0dzm4bdvb45lxzsvlh3b99rgbdv8rk6jj84hr7w5q4"))))
+ (build-system go-build-system)
+ (arguments
+ (list
+ #:install-source? #f
+ #:import-path "github.com/asdf-vm/asdf/cmd/asdf"
+ #:unpack-path "github.com/asdf-vm/asdf"
+ #:embed-files
+ #~(list "bash_autocomplete"
+ "powershell_autocomplete.ps1"
+ "zsh_autocomplete")
+ #:test-subdirs ;Test only those subdirs that don't include integration tests
+ #~(list "../../internal/cli/set"
+ "../../internal/completions"
+ "../../internal/config"
+ "../../internal/data"
+ "../../internal/exec"
+ "../../internal/execute"
+ "../../internal/hook"
+ "../../internal/paths"
+ "../../internal/toolversions")))
+ (native-inputs
+ (list go-github-com-go-git-go-git-v5
+ go-github-com-otiai10-copy
+ go-github-com-rogpeppe-go-internal
+ go-github-com-stretchr-testify
+ go-github-com-urfave-cli-v3
+ go-golang-org-x-sys
+ go-gopkg-in-ini-v1
+ go-honnef-co-go-tools
+ go-mvdan-cc-gofumpt))
+ (home-page "https://asdf-vm.com")
+ (synopsis "Multi language extendible version manager")
+ (description
+ "ASDF is a version manager for programming language runtimes and tools.
+Versions can be defined and managed on a per-project basis. It features a
+plugin system that allows it to be extended to support further languages. It
+currently supports a many popular runtimes, such as Ruby, Node.js, Elixir, and
+Erlang.")
+ (license license:expat)))
+
(define-public modules
(package
(name "modules")