Subject: [bug#57571] [PATCH]: Update podman to 4.2.0.

From: Zhu Zihao <[email-masked]>
Date: Sun, 04 Sep 2022 13:53:59 +0800

>From ad34900d79073e37fe5e4794aa7de2c0b7980401 Mon Sep 17 00:00:00 2001
From: Zhu Zihao <[email-masked]>
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 <[email-masked]>
 ;;; Copyright © 2022 Tobias Geerinckx-Rice <[email-masked]>
+;;; Copyright © 2022 Zhu Zihao <[email-masked]>
 ;;;
 ;;; 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

>From bc90eae17b851f8cd8a43a7be254fe85a4dc0098 Mon Sep 17 00:00:00 2001
From: Zhu Zihao <[email-masked]>
Date: Sun, 4 Sep 2022 13:28:30 +0800
Subject: [PATCH 2/2] gnu: podman: Update to 4.2.0.

* gnu/packages/containers.scm (podman): Update to 4.2.0.
---
 gnu/packages/containers.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index 32d772f16c..2c7e7ae9c4 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -272,7 +272,7 @@ (define-public cni-plugins
 (define-public podman
   (package
     (name "podman")
-    (version "3.4.4")
+    (version "4.2.0")
     (source
      (origin
        (method git-fetch)
@@ -280,7 +280,7 @@ (define-public podman
              (url "https://github.com/containers/podman")
              (commit (string-append "v" version))))
        (sha256
-        (base32 "1q09qsl1wwiiy5njvb97n1j5f5jin4ckmzj5xbdfs28czb2kx3g5"))
+        (base32 "00wyjppd11hznmals9ax4s2qjklj6p1vfz4jjkp50bk8q4blxfbj"))
        (file-name (git-file-name name version))))
 
     (build-system gnu-build-system)
-- 
2.37.2

-- 
Retrieve my PGP public key:

  gpg --recv-keys 481F5EEEBA425ADC13247C76A6E672D981B8E744

Zihao