From ad34900d79073e37fe5e4794aa7de2c0b7980401 Mon Sep 17 00:00:00 2001 From: Zhu Zihao Date: Sun, 4 Sep 2022 13:23:29 +0800 Subject: [PATCH 1/2] gnu: podman: Use G-expressions. * gnu/packages/containers.scm (podman)[arguments]: Use G-expressions. --- gnu/packages/containers.scm | 74 +++++++++++++++++++------------------ 1 file changed, 39 insertions(+), 35 deletions(-) diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm index a156f4191c..32d772f16c 100644 --- a/gnu/packages/containers.scm +++ b/gnu/packages/containers.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2021 Timmy Douglas ;;; Copyright © 2022 Tobias Geerinckx-Rice +;;; Copyright © 2022 Zhu Zihao ;;; ;;; This file is part of GNU Guix. ;;; @@ -284,41 +285,44 @@ (define-public podman (build-system gnu-build-system) (arguments - `(#:make-flags (list ,(string-append "CC=" (cc-for-target)) - (string-append "PREFIX=" %output)) - #:tests? #f ; /sys/fs/cgroup not set up in guix sandbox - #:test-target "test" - #:phases (modify-phases %standard-phases - (delete 'configure) - (add-after 'unpack 'set-env - (lambda* (#:key inputs #:allow-other-keys) - ;; when running go, things fail because - ;; HOME=/homeless-shelter. - (setenv "HOME" "/tmp"))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - ;; (invoke "strace" "-f" "bin/podman" "version") - (invoke "make" "localsystem") - (invoke "make" "remotesystem")))) - (add-after 'unpack 'fix-hardcoded-paths - (lambda _ - (substitute* (find-files "libpod" "\\.go") - (("exec.LookPath[(][\"]slirp4netns[\"][)]") - (string-append "exec.LookPath(\"" - (which "slirp4netns") "\")"))) - (substitute* "hack/install_catatonit.sh" - (("CATATONIT_PATH=\"[^\"]+\"") - (string-append "CATATONIT_PATH=" (which "true")))) - (substitute* "vendor/github.com/containers/common/pkg/config/config_linux.go" - (("/usr/local/libexec/podman") - (string-append (assoc-ref %outputs "out") "/bin"))) - (substitute* "vendor/github.com/containers/common/pkg/config/default.go" - (("/usr/libexec/podman/conmon") (which "conmon")) - (("/usr/local/libexec/cni") - (string-append (assoc-ref %build-inputs "cni-plugins") - "/bin")) - (("/usr/bin/crun") (which "crun")))))))) + (list + #:make-flags + #~(list #$(string-append "CC=" (cc-for-target)) + (string-append "PREFIX=" #$output)) + #:tests? #f ; /sys/fs/cgroup not set up in guix sandbox + #:test-target "test" + #:phases + #~(modify-phases %standard-phases + (delete 'configure) + (add-after 'unpack 'set-env + (lambda* (#:key inputs #:allow-other-keys) + ;; when running go, things fail because + ;; HOME=/homeless-shelter. + (setenv "HOME" "/tmp"))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + ;; (invoke "strace" "-f" "bin/podman" "version") + (invoke "make" "localsystem") + (invoke "make" "remotesystem")))) + (add-after 'unpack 'fix-hardcoded-paths + (lambda _ + (substitute* (find-files "libpod" "\\.go") + (("exec.LookPath[(][\"]slirp4netns[\"][)]") + (string-append "exec.LookPath(\"" + (which "slirp4netns") "\")"))) + (substitute* "hack/install_catatonit.sh" + (("CATATONIT_PATH=\"[^\"]+\"") + (string-append "CATATONIT_PATH=" (which "true")))) + (substitute* "vendor/github.com/containers/common/pkg/config/config_linux.go" + (("/usr/local/libexec/podman") + (string-append #$output "/bin"))) + (substitute* "vendor/github.com/containers/common/pkg/config/default.go" + (("/usr/libexec/podman/conmon") (which "conmon")) + (("/usr/local/libexec/cni") + (string-append #$(this-package-input "cni-plugins") + "/bin")) + (("/usr/bin/crun") (which "crun")))))))) (inputs (list btrfs-progs cni-plugins -- 2.37.2