GNU bug report logs - #61682
[PATCH] gnu: buildah: Add 'buildah' package

Previous Next

Package: guix-patches;

Reported by: Zongyuan Li <zongyuan.li <at> c0x0o.me>

Date: Tue, 21 Feb 2023 14:58:03 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 61682 in the body.
You can then email your comments to 61682 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Tue, 21 Feb 2023 14:58:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Zongyuan Li <zongyuan.li <at> c0x0o.me>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Tue, 21 Feb 2023 14:58:03 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: guix-patches <at> gnu.org
Cc: Zongyuan Li <zongyuan.li <at> c0x0o.me>
Subject: [PATCH] gnu: buildah: Add 'buildah' package
Date: Tue, 21 Feb 2023 14:35:19 +0000
* gnu/packages/containers.scm: New 'buildah' package

Signed-off-by: Zongyuan Li <zongyuan.li <at> c0x0o.me>
---
 gnu/packages/containers.scm | 68 +++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index 80c4aaa400..731a56075c 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -41,6 +41,7 @@ (define-module (gnu packages containers)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages python)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages pkg-config)
@@ -405,3 +406,70 @@ (define-public podman
 volumes mounted into those containers, and pods made from groups of
 containers.")
     (license license:asl2.0)))
+
+(define-public buildah
+  (package
+    (name "buildah")
+    (version "1.29.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/containers/buildah")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "16kc19m5in819624c3np4aqb9hkjc93d34y4958jqy1k3p2p5rir"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:make-flags #~(list #$(string-append "CC="
+                                                 (cc-for-target))
+                                (string-append "PREFIX="
+                                               #$output))
+           #:tests? #f
+           #:phases #~(modify-phases %standard-phases
+                        (delete 'configure)
+                        (add-after 'unpack 'set-env
+                          (lambda* (#:key inputs #:allow-other-keys)
+                            (setenv "HOME" "/tmp")))
+                        (add-after 'unpack 'avoid-building-tools
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^docs: install\\.tools")
+                               "docs:"))))
+                        (add-after 'unpack 'avoid-building-tools
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^all: .*")
+                               "all: bin/buildah docs"))))
+                        (add-after 'unpack 'use-doc-tools
+                          (lambda _
+                            (substitute* "docs/Makefile"
+                              (("../tests/tools/build/go-md2man")
+                               (which "go-md2man")))))
+                        (add-after 'install 'install-completions
+                          (lambda _
+                            (invoke "make" "install.completions"
+                                    (string-append "PREFIX="
+                                                   #$output)))))))
+    (inputs (list btrfs-progs
+                  cni-plugins
+                  conmon
+                  eudev
+                  glib
+                  go-github-com-go-md2man
+                  gpgme
+                  libassuan
+                  libseccomp
+                  lvm2
+                  runc))
+    (native-inputs (list bats git go-1.18 perl pkg-config))
+    (synopsis
+     "Facilitates building Open Container Initiative (OCI) container images")
+    (description
+     "Buildah is an open source, Linux-based tool used to build Open Container
+Initiative (OCI)-compatible containers.  With Buildah, you can use your
+favorite tools to create efficient container images from an existing base image
+or from scratch using an empty image.")
+    (home-page "https://buildah.io")
+    (license license:asl2.0)))
--
2.37.1 (Apple Git-137.1)






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Thu, 23 Feb 2023 18:54:02 GMT) Full text and rfc822 format available.

Message #8 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: 61682 <at> debbugs.gnu.org
Cc: zongyuan.li <at> c0x0o.me
Subject: [PATCH v2] gnu: buildah: Add 'buildah' package
Date: Thu, 23 Feb 2023 07:04:11 +0000
Introduce new 'buildah' package

Changes since v1:

    * fix phase-name typo in modify-phases

* gnu/packages/containers.scm: New 'buildah' package
---
 gnu/packages/containers.scm | 68 +++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index 50dfa88421..3844e4e700 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -41,6 +41,7 @@ (define-module (gnu packages containers)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages python)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages pkg-config)
@@ -406,3 +407,70 @@ (define-public podman
 volumes mounted into those containers, and pods made from groups of
 containers.")
     (license license:asl2.0)))
+
+(define-public buildah
+  (package
+    (name "buildah")
+    (version "1.29.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/containers/buildah")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "16kc19m5in819624c3np4aqb9hkjc93d34y4958jqy1k3p2p5rir"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:make-flags #~(list #$(string-append "CC="
+                                                 (cc-for-target))
+                                (string-append "PREFIX="
+                                               #$output))
+           #:tests? #f
+           #:phases #~(modify-phases %standard-phases
+                        (delete 'configure)
+                        (add-after 'unpack 'set-env
+                          (lambda* (#:key inputs #:allow-other-keys)
+                            (setenv "HOME" "/tmp")))
+                        (add-after 'unpack 'avoid-building-tools
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^docs: install\\.tools")
+                               "docs:"))))
+                        (add-after 'unpack 'avoid-unnecessary-targets
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^all: .*")
+                               "all: bin/buildah docs"))))
+                        (add-after 'unpack 'use-doc-tools
+                          (lambda _
+                            (substitute* "docs/Makefile"
+                              (("../tests/tools/build/go-md2man")
+                               (which "go-md2man")))))
+                        (add-after 'install 'install-completions
+                          (lambda _
+                            (invoke "make" "install.completions"
+                                    (string-append "PREFIX="
+                                                   #$output)))))))
+    (inputs (list btrfs-progs
+                  cni-plugins
+                  conmon
+                  eudev
+                  glib
+                  go-github-com-go-md2man
+                  gpgme
+                  libassuan
+                  libseccomp
+                  lvm2
+                  runc))
+    (native-inputs (list bats git go-1.18 perl pkg-config))
+    (synopsis
+     "Facilitates building Open Container Initiative (OCI) container images")
+    (description
+     "Buildah is an open source, Linux-based tool used to build Open Container
+Initiative (OCI)-compatible containers.  With Buildah, you can use your
+favorite tools to create efficient container images from an existing base image
+or from scratch using an empty image.")
+    (home-page "https://buildah.io")
+    (license license:asl2.0)))
--
2.37.1 (Apple Git-137.1)






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Thu, 23 Feb 2023 18:55:02 GMT) Full text and rfc822 format available.

Message #11 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: guix-patches <at> gnu.org
Cc: Zongyuan Li <zongyuan.li <at> c0x0o.me>
Subject: [bug#61682][PATCH v2] gnu: buildah: Add 'buildah' package
Date: Thu, 23 Feb 2023 12:50:59 +0000
Introduce new 'buildah' package

Changes since v1:

   * fix phase-name typo in modify-phases

* gnu/packages/containers.scm: New 'buildah' package
---
 gnu/packages/containers.scm | 68 +++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index 50dfa88421..3844e4e700 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -41,6 +41,7 @@ (define-module (gnu packages containers)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages python)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages pkg-config)
@@ -406,3 +407,70 @@ (define-public podman
 volumes mounted into those containers, and pods made from groups of
 containers.")
     (license license:asl2.0)))
+
+(define-public buildah
+  (package
+    (name "buildah")
+    (version "1.29.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/containers/buildah")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "16kc19m5in819624c3np4aqb9hkjc93d34y4958jqy1k3p2p5rir"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:make-flags #~(list #$(string-append "CC="
+                                                 (cc-for-target))
+                                (string-append "PREFIX="
+                                               #$output))
+           #:tests? #f
+           #:phases #~(modify-phases %standard-phases
+                        (delete 'configure)
+                        (add-after 'unpack 'set-env
+                          (lambda* (#:key inputs #:allow-other-keys)
+                            (setenv "HOME" "/tmp")))
+                        (add-after 'unpack 'avoid-building-tools
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^docs: install\\.tools")
+                               "docs:"))))
+                        (add-after 'unpack 'avoid-unnecessary-targets
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^all: .*")
+                               "all: bin/buildah docs"))))
+                        (add-after 'unpack 'use-doc-tools
+                          (lambda _
+                            (substitute* "docs/Makefile"
+                              (("../tests/tools/build/go-md2man")
+                               (which "go-md2man")))))
+                        (add-after 'install 'install-completions
+                          (lambda _
+                            (invoke "make" "install.completions"
+                                    (string-append "PREFIX="
+                                                   #$output)))))))
+    (inputs (list btrfs-progs
+                  cni-plugins
+                  conmon
+                  eudev
+                  glib
+                  go-github-com-go-md2man
+                  gpgme
+                  libassuan
+                  libseccomp
+                  lvm2
+                  runc))
+    (native-inputs (list bats git go-1.18 perl pkg-config))
+    (synopsis
+     "Facilitates building Open Container Initiative (OCI) container images")
+    (description
+     "Buildah is an open source, Linux-based tool used to build Open Container
+Initiative (OCI)-compatible containers.  With Buildah, you can use your
+favorite tools to create efficient container images from an existing base image
+or from scratch using an empty image.")
+    (home-page "https://buildah.io")
+    (license license:asl2.0)))
--
2.39.1






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Thu, 23 Feb 2023 18:55:02 GMT) Full text and rfc822 format available.

Message #14 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: 61682 <at> debbugs.gnu.org
Cc: Zongyuan Li <zongyuan.li <at> c0x0o.me>
Subject: [PATCH v2] gnu: buildah: Add 'buildah' package
Date: Thu, 23 Feb 2023 11:31:29 +0000
Introduce new 'buildah' package

Changes since v1:

   * fix phase-name typo in modify-phases

* gnu/packages/containers.scm: New 'buildah' package
---
 gnu/packages/containers.scm | 68 +++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index 50dfa88421..3844e4e700 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -41,6 +41,7 @@ (define-module (gnu packages containers)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages python)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages pkg-config)
@@ -406,3 +407,70 @@ (define-public podman
 volumes mounted into those containers, and pods made from groups of
 containers.")
     (license license:asl2.0)))
+
+(define-public buildah
+  (package
+    (name "buildah")
+    (version "1.29.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/containers/buildah")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "16kc19m5in819624c3np4aqb9hkjc93d34y4958jqy1k3p2p5rir"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:make-flags #~(list #$(string-append "CC="
+                                                 (cc-for-target))
+                                (string-append "PREFIX="
+                                               #$output))
+           #:tests? #f
+           #:phases #~(modify-phases %standard-phases
+                        (delete 'configure)
+                        (add-after 'unpack 'set-env
+                          (lambda* (#:key inputs #:allow-other-keys)
+                            (setenv "HOME" "/tmp")))
+                        (add-after 'unpack 'avoid-building-tools
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^docs: install\\.tools")
+                               "docs:"))))
+                        (add-after 'unpack 'avoid-unnecessary-targets
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^all: .*")
+                               "all: bin/buildah docs"))))
+                        (add-after 'unpack 'use-doc-tools
+                          (lambda _
+                            (substitute* "docs/Makefile"
+                              (("../tests/tools/build/go-md2man")
+                               (which "go-md2man")))))
+                        (add-after 'install 'install-completions
+                          (lambda _
+                            (invoke "make" "install.completions"
+                                    (string-append "PREFIX="
+                                                   #$output)))))))
+    (inputs (list btrfs-progs
+                  cni-plugins
+                  conmon
+                  eudev
+                  glib
+                  go-github-com-go-md2man
+                  gpgme
+                  libassuan
+                  libseccomp
+                  lvm2
+                  runc))
+    (native-inputs (list bats git go-1.18 perl pkg-config))
+    (synopsis
+     "Facilitates building Open Container Initiative (OCI) container images")
+    (description
+     "Buildah is an open source, Linux-based tool used to build Open Container
+Initiative (OCI)-compatible containers.  With Buildah, you can use your
+favorite tools to create efficient container images from an existing base image
+or from scratch using an empty image.")
+    (home-page "https://buildah.io")
+    (license license:asl2.0)))
--
2.39.1






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Thu, 23 Feb 2023 18:55:02 GMT) Full text and rfc822 format available.

Message #17 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: zongyuan.li <at> c0x0o.me
Cc: 61682 <at> debbugs.gnu.org
Subject: [PATCH v2] gnu: buildah: Add 'buildah' package
Date: Thu, 23 Feb 2023 12:26:30 +0000
Introduce new 'buildah' package

Changes since v1:

   * fix phase-name typo in modify-phases

* gnu/packages/containers.scm: New 'buildah' package
---
 gnu/packages/containers.scm | 68 +++++++++++++++++++++++++++++++++++++
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index 50dfa88421..3844e4e700 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -41,6 +41,7 @@ (define-module (gnu packages containers)
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages python)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages pkg-config)
@@ -406,3 +407,70 @@ (define-public podman
 volumes mounted into those containers, and pods made from groups of
 containers.")
     (license license:asl2.0)))
+
+(define-public buildah
+  (package
+    (name "buildah")
+    (version "1.29.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/containers/buildah")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "16kc19m5in819624c3np4aqb9hkjc93d34y4958jqy1k3p2p5rir"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:make-flags #~(list #$(string-append "CC="
+                                                 (cc-for-target))
+                                (string-append "PREFIX="
+                                               #$output))
+           #:tests? #f
+           #:phases #~(modify-phases %standard-phases
+                        (delete 'configure)
+                        (add-after 'unpack 'set-env
+                          (lambda* (#:key inputs #:allow-other-keys)
+                            (setenv "HOME" "/tmp")))
+                        (add-after 'unpack 'avoid-building-tools
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^docs: install\\.tools")
+                               "docs:"))))
+                        (add-after 'unpack 'avoid-unnecessary-targets
+                          (lambda _
+                            (substitute* "Makefile"
+                              (("^all: .*")
+                               "all: bin/buildah docs"))))
+                        (add-after 'unpack 'use-doc-tools
+                          (lambda _
+                            (substitute* "docs/Makefile"
+                              (("../tests/tools/build/go-md2man")
+                               (which "go-md2man")))))
+                        (add-after 'install 'install-completions
+                          (lambda _
+                            (invoke "make" "install.completions"
+                                    (string-append "PREFIX="
+                                                   #$output)))))))
+    (inputs (list btrfs-progs
+                  cni-plugins
+                  conmon
+                  eudev
+                  glib
+                  go-github-com-go-md2man
+                  gpgme
+                  libassuan
+                  libseccomp
+                  lvm2
+                  runc))
+    (native-inputs (list bats git go-1.18 perl pkg-config))
+    (synopsis
+     "Facilitates building Open Container Initiative (OCI) container images")
+    (description
+     "Buildah is an open source, Linux-based tool used to build Open Container
+Initiative (OCI)-compatible containers.  With Buildah, you can use your
+favorite tools to create efficient container images from an existing base image
+or from scratch using an empty image.")
+    (home-page "https://buildah.io")
+    (license license:asl2.0)))
--
2.39.1






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Fri, 24 Feb 2023 05:21:02 GMT) Full text and rfc822 format available.

Message #20 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Zongyuan Li <zongyuan.li <at> c0x0o.me>
Cc: 61682 <at> debbugs.gnu.org
Subject: Re: [PATCH v2] gnu: buildah: Add 'buildah' package
Date: Fri, 24 Feb 2023 06:20:35 +0100
Am Donnerstag, dem 23.02.2023 um 12:26 +0000 schrieb Zongyuan Li:
> Introduce new 'buildah' package
> 
> Changes since v1:
> 
>    * fix phase-name typo in modify-phases
> 
> * gnu/packages/containers.scm: New 'buildah' package
> ---
>  gnu/packages/containers.scm | 68
> +++++++++++++++++++++++++++++++++++++
>  1 file changed, 68 insertions(+)
> 
> diff --git a/gnu/packages/containers.scm
> b/gnu/packages/containers.scm
> index 50dfa88421..3844e4e700 100644
> --- a/gnu/packages/containers.scm
> +++ b/gnu/packages/containers.scm
> @@ -41,6 +41,7 @@ (define-module (gnu packages containers)
>    #:use-module (gnu packages gnupg)
>    #:use-module (gnu packages golang)
>    #:use-module (gnu packages linux)
> +  #:use-module (gnu packages perl)
>    #:use-module (gnu packages python)
>    #:use-module (gnu packages networking)
>    #:use-module (gnu packages pkg-config)
> @@ -406,3 +407,70 @@ (define-public podman
>  volumes mounted into those containers, and pods made from groups of
>  containers.")
>      (license license:asl2.0)))
> +
> +(define-public buildah
> +  (package
> +    (name "buildah")
> +    (version "1.29.0")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/containers/buildah")
> +                    (commit (string-append "v" version))))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +               
> "16kc19m5in819624c3np4aqb9hkjc93d34y4958jqy1k3p2p5rir"))))
> +    (build-system gnu-build-system)
As fun as it sounds to build Go stuff with just a Makefile, you have a
lot of vendored code unaccounted for.
> +    (arguments
> +     (list #:make-flags #~(list #$(string-append "CC="
> +                                                 (cc-for-target))
> +                                (string-append "PREFIX="
> +                                               #$output))
> +           #:tests? #f
> +           #:phases #~(modify-phases %standard-phases
> +                        (delete 'configure)
> +                        (add-after 'unpack 'set-env
> +                          (lambda* (#:key inputs #:allow-other-keys)
> +                            (setenv "HOME" "/tmp")))
> +                        (add-after 'unpack 'avoid-building-tools
> +                          (lambda _
> +                            (substitute* "Makefile"
> +                              (("^docs: install\\.tools")
> +                               "docs:"))))
> +                        (add-after 'unpack 'avoid-unnecessary-
> targets
> +                          (lambda _
> +                            (substitute* "Makefile"
> +                              (("^all: .*")
> +                               "all: bin/buildah docs"))))
> +                        (add-after 'unpack 'use-doc-tools
> +                          (lambda _
> +                            (substitute* "docs/Makefile"
> +                              (("../tests/tools/build/go-md2man")
> +                               (which "go-md2man")))))
> +                        (add-after 'install 'install-completions
> +                          (lambda _
> +                            (invoke "make" "install.completions"
> +                                    (string-append "PREFIX="
> +                                                   #$output)))))))
> +    (inputs (list btrfs-progs
> +                  cni-plugins
> +                  conmon
> +                  eudev
> +                  glib
> +                  go-github-com-go-md2man
> +                  gpgme
> +                  libassuan
> +                  libseccomp
> +                  lvm2
> +                  runc))
> +    (native-inputs (list bats git go-1.18 perl pkg-config))
> +    (synopsis
> +     "Facilitates building Open Container Initiative (OCI) container
> images")
Try to stay short in your synopsis.
> +    (description
> +     "Buildah is an open source,
Buzzword.
>  Linux-based tool used to build Open Container
> +Initiative (OCI)-compatible containers.  
Perhaps use @abbrev?

> With Buildah, you can use your
> +favorite tools to create efficient container images from an existing
> base image
Can I use Guix to do that?

Cheers


Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Fri, 24 Feb 2023 07:14:02 GMT) Full text and rfc822 format available.

Message #23 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
Cc: 61682 <at> debbugs.gnu.org
Subject: Re: [PATCH v2] gnu: buildah: Add 'buildah' package
Date: Fri, 24 Feb 2023 07:12:55 +0000
Thanks your review! I will try to use go-build-system.

I noticed that ‘podman’ package also uses makefile. Maybe we could improve that later too?

Li

> On Feb 24, 2023, at 13:20, Liliana Marie Prikler <liliana.prikler <at> gmail.com> wrote:
>
> Am Donnerstag, dem 23.02.2023 um 12:26 +0000 schrieb Zongyuan Li:
>> Introduce new 'buildah' package
>>
>> Changes since v1:
>>
>>    * fix phase-name typo in modify-phases
>>
>> * gnu/packages/containers.scm: New 'buildah' package
>> ---
>>  gnu/packages/containers.scm | 68
>> +++++++++++++++++++++++++++++++++++++
>>  1 file changed, 68 insertions(+)
>>
>> diff --git a/gnu/packages/containers.scm
>> b/gnu/packages/containers.scm
>> index 50dfa88421..3844e4e700 100644
>> --- a/gnu/packages/containers.scm
>> +++ b/gnu/packages/containers.scm
>> @@ -41,6 +41,7 @@ (define-module (gnu packages containers)
>>    #:use-module (gnu packages gnupg)
>>    #:use-module (gnu packages golang)
>>    #:use-module (gnu packages linux)
>> +  #:use-module (gnu packages perl)
>>    #:use-module (gnu packages python)
>>    #:use-module (gnu packages networking)
>>    #:use-module (gnu packages pkg-config)
>> @@ -406,3 +407,70 @@ (define-public podman
>>  volumes mounted into those containers, and pods made from groups of
>>  containers.")
>>      (license license:asl2.0)))
>> +
>> +(define-public buildah
>> +  (package
>> +    (name "buildah")
>> +    (version "1.29.0")
>> +    (source (origin
>> +              (method git-fetch)
>> +              (uri (git-reference
>> +                    (url "https://github.com/containers/buildah")
>> +                    (commit (string-append "v" version))))
>> +              (file-name (git-file-name name version))
>> +              (sha256
>> +               (base32
>> +
>> "16kc19m5in819624c3np4aqb9hkjc93d34y4958jqy1k3p2p5rir"))))
>> +    (build-system gnu-build-system)
> As fun as it sounds to build Go stuff with just a Makefile, you have a
> lot of vendored code unaccounted for.
>> +    (arguments
>> +     (list #:make-flags #~(list #$(string-append "CC="
>> +                                                 (cc-for-target))
>> +                                (string-append "PREFIX="
>> +                                               #$output))
>> +           #:tests? #f
>> +           #:phases #~(modify-phases %standard-phases
>> +                        (delete 'configure)
>> +                        (add-after 'unpack 'set-env
>> +                          (lambda* (#:key inputs #:allow-other-keys)
>> +                            (setenv "HOME" "/tmp")))
>> +                        (add-after 'unpack 'avoid-building-tools
>> +                          (lambda _
>> +                            (substitute* "Makefile"
>> +                              (("^docs: install\\.tools")
>> +                               "docs:"))))
>> +                        (add-after 'unpack 'avoid-unnecessary-
>> targets
>> +                          (lambda _
>> +                            (substitute* "Makefile"
>> +                              (("^all: .*")
>> +                               "all: bin/buildah docs"))))
>> +                        (add-after 'unpack 'use-doc-tools
>> +                          (lambda _
>> +                            (substitute* "docs/Makefile"
>> +                              (("../tests/tools/build/go-md2man")
>> +                               (which "go-md2man")))))
>> +                        (add-after 'install 'install-completions
>> +                          (lambda _
>> +                            (invoke "make" "install.completions"
>> +                                    (string-append "PREFIX="
>> +                                                   #$output)))))))
>> +    (inputs (list btrfs-progs
>> +                  cni-plugins
>> +                  conmon
>> +                  eudev
>> +                  glib
>> +                  go-github-com-go-md2man
>> +                  gpgme
>> +                  libassuan
>> +                  libseccomp
>> +                  lvm2
>> +                  runc))
>> +    (native-inputs (list bats git go-1.18 perl pkg-config))
>> +    (synopsis
>> +     "Facilitates building Open Container Initiative (OCI) container
>> images")
> Try to stay short in your synopsis.
>> +    (description
>> +     "Buildah is an open source,
> Buzzword.
>> Linux-based tool used to build Open Container
>> +Initiative (OCI)-compatible containers.
> Perhaps use @abbrev?
>
>> With Buildah, you can use your
>> +favorite tools to create efficient container images from an existing
>> base image
> Can I use Guix to do that?
>
> Cheers






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Fri, 24 Mar 2023 10:15:02 GMT) Full text and rfc822 format available.

Message #26 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: 61682 <at> debbugs.gnu.org, liliana.prikler <at> gmail.com
Cc: Zongyuan Li <zongyuan.li <at> c0x0o.me>
Subject: [PATCH v3 1/1] gnu: buildah: Add 'buildah' package
Date: Fri, 24 Mar 2023 10:14:33 +0000
gnu: buildah: Add 'buildah' package

Introduce new 'buildah' package

* gnu/packages/containers.scm: New 'buildah' package
---
 gnu/packages/containers.scm | 73 +++++++++++++++++++++++++++++++++++++
 1 file changed, 73 insertions(+)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index b316588ea2..c20bcdaba3 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -406,3 +406,76 @@ (define-public podman
 volumes mounted into those containers, and pods made from groups of
 containers.")
     (license license:asl2.0)))
+
+(define-public buildah
+  (package
+    (name "buildah")
+    (version "1.29.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/containers/buildah")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1mcqkz68fjccdla1bgxw57w268a586brm6x28fcm6x425ah0w07h"))))
+    (build-system go-build-system)
+    (arguments
+      (list #:import-path "github.com/containers/buildah/cmd/buildah"
+            #:unpack-path "github.com/containers/buildah"
+            ; Some dependencies require go-1.18 to build
+            #:go go-1.18
+            #:tests? #f
+            #:build-flags
+            ; These information is constructed in 'buildah' Makefile.
+            #~(list (string-append "-ldflags=-X main.GitCommit="
+                                   "faf0d4fcbaede00f4e615dc5cc2ccc816f240cfe"
+                                   " -X main.cniVersion=v1.1.2"))
+            #:install-source? #f
+            #:phases
+            #~(modify-phases %standard-phases
+                (add-after 'unpack 'prepare-install-docs
+                  (lambda* (#:key unpack-path #:allow-other-keys)
+                    (substitute* (string-append "src/"
+                                                unpack-path
+                                                "/docs/Makefile")
+                      (("../tests/tools/build/go-md2man")
+                       (which "go-md2man")))
+                    (substitute* (string-append "src/"
+                                                unpack-path
+                                                "/docs/Makefile")
+                      (("/usr/local") (string-append #$output)))))
+                (add-after 'build 'build-docs
+                  (lambda* (#:key unpack-path #:allow-other-keys)
+                    (let*
+                      ((doc-path (string-append "src/" unpack-path "/docs")))
+                      (invoke "make" "-C" doc-path))))
+                (add-after 'install 'install-docs
+                  (lambda* (#:key unpack-path #:allow-other-keys)
+                    (let*
+                      ((doc-path (string-append "src/" unpack-path "/docs")))
+                      (invoke "make" "-C" doc-path "install")))))))
+    (inputs (list btrfs-progs
+                  cni-plugins
+                  conmon
+                  eudev
+                  glib
+                  gpgme
+                  libassuan
+                  libseccomp
+                  lvm2
+                  runc))
+    (native-inputs
+     (list go-github-com-go-md2man
+           gnu-make
+           pkg-config))
+    (synopsis
+     "Facilitates building Open Container Initiative (OCI) container images")
+    (description
+     "Buildah is an open source, Linux-based tool used to build Open Container
+Initiative (OCI)-compatible containers.  With Buildah, you can use your
+favorite tools to create efficient container images from an existing base image
+or from scratch using an empty image.")
+    (home-page "https://buildah.io")
+    (license license:asl2.0)))
--
2.37.1 (Apple Git-137.1)






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Fri, 24 Mar 2023 10:15:02 GMT) Full text and rfc822 format available.

Message #29 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: 61682 <at> debbugs.gnu.org, liliana.prikler <at> gmail.com
Cc: Zongyuan Li <zongyuan.li <at> c0x0o.me>
Subject: [PATCH v3 0/1] gnu: buildah: Add 'buildah' package
Date: Fri, 24 Mar 2023 10:14:17 +0000
Introduce new 'buildah' package

Changes since v2:
* Use go-build-system to avoid vendered code in Makefile
* Bump version to the latest v1.29.1
* Remove some unused dependencies

Zongyuan Li (1):
  gnu: buildah: Add 'buildah' package

 gnu/packages/containers.scm | 73 +++++++++++++++++++++++++++++++++++++
 1 file changed, 73 insertions(+)

--
2.37.1 (Apple Git-137.1)






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Fri, 24 Mar 2023 18:01:02 GMT) Full text and rfc822 format available.

Message #32 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Zongyuan Li <zongyuan.li <at> c0x0o.me>, 61682 <at> debbugs.gnu.org
Subject: Re: [PATCH v3 1/1] gnu: buildah: Add 'buildah' package
Date: Fri, 24 Mar 2023 19:00:02 +0100
Am Freitag, dem 24.03.2023 um 10:14 +0000 schrieb Zongyuan Li:
> gnu: buildah: Add 'buildah' package
> 
> Introduce new 'buildah' package
> 
> * gnu/packages/containers.scm: New 'buildah' package
> ---
>  gnu/packages/containers.scm | 73
> +++++++++++++++++++++++++++++++++++++
>  1 file changed, 73 insertions(+)
> 
> diff --git a/gnu/packages/containers.scm
> b/gnu/packages/containers.scm
> index b316588ea2..c20bcdaba3 100644
> --- a/gnu/packages/containers.scm
> +++ b/gnu/packages/containers.scm
> @@ -406,3 +406,76 @@ (define-public podman
>  volumes mounted into those containers, and pods made from groups of
>  containers.")
>      (license license:asl2.0)))
> +
> +(define-public buildah
> +  (package
> +    (name "buildah")
> +    (version "1.29.1")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/containers/buildah")
> +                    (commit (string-append "v" version))))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +               
> "1mcqkz68fjccdla1bgxw57w268a586brm6x28fcm6x425ah0w07h"))))
> +    (build-system go-build-system)
> +    (arguments
> +      (list #:import-path
> "github.com/containers/buildah/cmd/buildah"
> +            #:unpack-path "github.com/containers/buildah"
> +            ; Some dependencies require go-1.18 to build
> +            #:go go-1.18
> +            #:tests? #f
#:tests? #f always needs an explanation
> +            #:build-flags
> +            ; These information is constructed in 'buildah'
> Makefile.
> +            #~(list (string-append "-ldflags=-X main.GitCommit="
> +                                  
> "faf0d4fcbaede00f4e615dc5cc2ccc816f240cfe"
I think we should either look towards dropping this flag, or
alternatively let-bind the git commit and use it in the version and
origin as well.
> +                                   " -X main.cniVersion=v1.1.2"))
> +            #:install-source? #f
> +            #:phases
> +            #~(modify-phases %standard-phases
> +                (add-after 'unpack 'prepare-install-docs
> +                  (lambda* (#:key unpack-path #:allow-other-keys)
> +                    (substitute* (string-append "src/"
> +                                                unpack-path
> +                                                "/docs/Makefile")
> +                      (("../tests/tools/build/go-md2man")
> +                       (which "go-md2man")))
> +                    (substitute* (string-append "src/"
> +                                                unpack-path
> +                                                "/docs/Makefile")
> +                      (("/usr/local") (string-append #$output)))))
> +                (add-after 'build 'build-docs
> +                  (lambda* (#:key unpack-path #:allow-other-keys)
> +                    (let*
> +                      ((doc-path (string-append "src/" unpack-path
> "/docs")))
> +                      (invoke "make" "-C" doc-path))))
> +                (add-after 'install 'install-docs
> +                  (lambda* (#:key unpack-path #:allow-other-keys)
> +                    (let*
> +                      ((doc-path (string-append "src/" unpack-path
> "/docs")))
> +                      (invoke "make" "-C" doc-path "install")))))))
> +    (inputs (list btrfs-progs
> +                  cni-plugins
> +                  conmon
> +                  eudev
> +                  glib
> +                  gpgme
> +                  libassuan
> +                  libseccomp
> +                  lvm2
> +                  runc))
> +    (native-inputs
> +     (list go-github-com-go-md2man
> +           gnu-make
> +           pkg-config))
> +    (synopsis
> +     "Facilitates building Open Container Initiative (OCI) container
> images")
Simplify to "Build Open Container Initiative images"
> +    (description
> +     "Buildah is an open source, Linux-based tool used to build Open
> Container
Drop open source and Linux-based, they're meaningless filler.
> +Initiative (OCI)-compatible containers.  With Buildah, you can use
Use @acronym{OCI, Open Container Initiative}.  Avoid invoking the
department of redundancy department, also known as the redundant
acronym syndrome syndrome.
> your
> +favorite tools to create efficient container images from an existing
> base image
> +or from scratch using an empty image.")
This second sentence is still as empty as the first time I reviewed it.
Consider dropping it as well.

Cheers

Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Sat, 25 Mar 2023 11:44:02 GMT) Full text and rfc822 format available.

Message #35 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: 61682 <at> debbugs.gnu.org
Cc: liliana.prikler <at> gmail.com, Zongyuan Li <zongyuan.li <at> c0x0o.me>
Subject: [PATCH v4 0/1] gnu: buildah: Add 'buildah' package
Date: Sat, 25 Mar 2023 10:23:50 +0000
gnu: buildah: Add 'buildah' package

We do not run any tests because buildah needs 'root' user
to make tests work.

Changes since v3:
* Remove build flags
* Simplify synopsis and description

Zongyuan Li (1):
  gnu: buildah: Add 'buildah' package

 gnu/packages/containers.scm | 66 +++++++++++++++++++++++++++++++++++++
 1 file changed, 66 insertions(+)

--
2.37.1 (Apple Git-137.1)






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Sat, 25 Mar 2023 11:46:02 GMT) Full text and rfc822 format available.

Message #38 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Zongyuan Li <zongyuan.li <at> c0x0o.me>
Cc: 61682 <at> debbugs.gnu.org
Subject: Re: [PATCH v3 1/1] gnu: buildah: Add 'buildah' package
Date: Sat, 25 Mar 2023 11:46:09 +0100
Am Samstag, dem 25.03.2023 um 09:15 +0000 schrieb Zongyuan Li:
> Tests of buildah requires root user to run. Is there any way for us
> to do that?
Can we try with fakeroot or something?




Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Sat, 25 Mar 2023 11:59:01 GMT) Full text and rfc822 format available.

Message #41 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
To: Zongyuan Li <zongyuan.li <at> c0x0o.me>, 61682 <at> debbugs.gnu.org
Subject: Re: [PATCH v4 1/1] gnu: buildah: Add 'buildah' package
Date: Sat, 25 Mar 2023 12:09:36 +0100
Am Samstag, dem 25.03.2023 um 10:25 +0000 schrieb Zongyuan Li:
> gnu: buildah: Add 'buildah' package
> 
> Introduce new 'buildah' package
> 
> * gnu/packages/containers.scm: New 'buildah' package
gnu: Add buildah.

* gnu/packages/containers.scm (buildah): New variable.

> ---
>  gnu/packages/containers.scm | 66
> +++++++++++++++++++++++++++++++++++++
>  1 file changed, 66 insertions(+)
> 
> diff --git a/gnu/packages/containers.scm
> b/gnu/packages/containers.scm
> index b316588ea2..43d215ea6a 100644
> --- a/gnu/packages/containers.scm
> +++ b/gnu/packages/containers.scm
> @@ -406,3 +406,69 @@ (define-public podman
>  volumes mounted into those containers, and pods made from groups of
>  containers.")
>      (license license:asl2.0)))
> +
> +(define-public buildah
> +  (package
> +    (name "buildah")
> +    (version "1.29.1")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/containers/buildah")
> +                    (commit (string-append "v" version))))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +               
> "1mcqkz68fjccdla1bgxw57w268a586brm6x28fcm6x425ah0w07h"))))
> +    (build-system go-build-system)
> +    (arguments
> +      (list #:import-path
> "github.com/containers/buildah/cmd/buildah"
> +            #:unpack-path "github.com/containers/buildah"
> +            ; Some dependencies require go-1.18 to build
Single ; comments go on the same line.
> +            #:go go-1.18
> +            #:tests? #f
Again, no comment for #:tests? #f?
> +            #:install-source? #f
> +            #:phases
> +            #~(modify-phases %standard-phases
> +                (add-after 'unpack 'prepare-install-docs
> +                  (lambda* (#:key unpack-path #:allow-other-keys)
> +                    (substitute* (string-append "src/"
> +                                                unpack-path
> +                                                "/docs/Makefile")
> +                      (("../tests/tools/build/go-md2man")
> +                       (which "go-md2man")))
> +                    (substitute* (string-append "src/"
> +                                                unpack-path
> +                                                "/docs/Makefile")
> +                      (("/usr/local") (string-append #$output)))))
> +                (add-after 'build 'build-docs
> +                  (lambda* (#:key unpack-path #:allow-other-keys)
> +                    (let*
> +                      ((doc-path (string-append "src/" unpack-path
> "/docs")))
> +                      (invoke "make" "-C" doc-path))))
> +                (add-after 'install 'install-docs
> +                  (lambda* (#:key unpack-path #:allow-other-keys)
> +                    (let*
> +                      ((doc-path (string-append "src/" unpack-path
> "/docs")))
> +                      (invoke "make" "-C" doc-path "install")))))))
> +    (inputs (list btrfs-progs
> +                  cni-plugins
> +                  conmon
> +                  eudev
> +                  glib
> +                  gpgme
> +                  libassuan
> +                  libseccomp
> +                  lvm2
> +                  runc))
> +    (native-inputs
> +     (list go-github-com-go-md2man
> +           gnu-make
> +           pkg-config))
> +    (synopsis
> +     "Build Open Container Initiative images")
> +    (description
> +     "Buildah is used to build Open Container Initiative
> +@acronym{OCI, Open Container Initiative} compatible containers.")
Open Container Initiative Open Container Initiative compatible
containers.

Cheers

Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Sat, 25 Mar 2023 12:22:01 GMT) Full text and rfc822 format available.

Message #44 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
Cc: 61682 <at> debbugs.gnu.org
Subject: Re: [PATCH v3 1/1] gnu: buildah: Add 'buildah' package
Date: Sat, 25 Mar 2023 09:15:16 +0000
Tests of buildah requires root user to run. Is there any way for us to do that?

Thanks






Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Sat, 25 Mar 2023 12:22:02 GMT) Full text and rfc822 format available.

Message #47 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: Liliana Marie Prikler <liliana.prikler <at> gmail.com>
Cc: 61682 <at> debbugs.gnu.org
Subject: Re: [PATCH v3 1/1] gnu: buildah: Add 'buildah' package
Date: Sat, 25 Mar 2023 11:02:29 +0000
> On Mar 25, 2023, at 18:46, Liliana Marie Prikler <liliana.prikler <at> gmail.com> wrote:
>
> Can we try with fakeroot or something?

I did some research on source code, and find following code under buildah tests:

> func failTestIfNotRoot(t *testing.T) {
>     u, err := user.Current()
>     if err != nil {
>         t.Log("Could not determine user.  Running without root may cause tests to fail")
>     } else if u.Uid != "0" {
>         t.Fatal("tests will fail unless run as root")
>     }
> }

There’s an hard coded uid. I haven’t seen any way to workaround it. Do we have any
facility to run ‘check’ phase under an isolated environment(eg. container)?

Thanks




Information forwarded to guix-patches <at> gnu.org:
bug#61682; Package guix-patches. (Sat, 25 Mar 2023 12:52:02 GMT) Full text and rfc822 format available.

Message #50 received at 61682 <at> debbugs.gnu.org (full text, mbox):

From: Zongyuan Li <zongyuan.li <at> c0x0o.me>
To: 61682 <at> debbugs.gnu.org
Cc: liliana.prikler <at> gmail.com, Zongyuan Li <zongyuan.li <at> c0x0o.me>
Subject: [PATCH v4 1/1] gnu: buildah: Add 'buildah' package
Date: Sat, 25 Mar 2023 10:25:05 +0000
gnu: buildah: Add 'buildah' package

Introduce new 'buildah' package

* gnu/packages/containers.scm: New 'buildah' package
---
 gnu/packages/containers.scm | 66 +++++++++++++++++++++++++++++++++++++
 1 file changed, 66 insertions(+)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index b316588ea2..43d215ea6a 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -406,3 +406,69 @@ (define-public podman
 volumes mounted into those containers, and pods made from groups of
 containers.")
     (license license:asl2.0)))
+
+(define-public buildah
+  (package
+    (name "buildah")
+    (version "1.29.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/containers/buildah")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1mcqkz68fjccdla1bgxw57w268a586brm6x28fcm6x425ah0w07h"))))
+    (build-system go-build-system)
+    (arguments
+      (list #:import-path "github.com/containers/buildah/cmd/buildah"
+            #:unpack-path "github.com/containers/buildah"
+            ; Some dependencies require go-1.18 to build
+            #:go go-1.18
+            #:tests? #f
+            #:install-source? #f
+            #:phases
+            #~(modify-phases %standard-phases
+                (add-after 'unpack 'prepare-install-docs
+                  (lambda* (#:key unpack-path #:allow-other-keys)
+                    (substitute* (string-append "src/"
+                                                unpack-path
+                                                "/docs/Makefile")
+                      (("../tests/tools/build/go-md2man")
+                       (which "go-md2man")))
+                    (substitute* (string-append "src/"
+                                                unpack-path
+                                                "/docs/Makefile")
+                      (("/usr/local") (string-append #$output)))))
+                (add-after 'build 'build-docs
+                  (lambda* (#:key unpack-path #:allow-other-keys)
+                    (let*
+                      ((doc-path (string-append "src/" unpack-path "/docs")))
+                      (invoke "make" "-C" doc-path))))
+                (add-after 'install 'install-docs
+                  (lambda* (#:key unpack-path #:allow-other-keys)
+                    (let*
+                      ((doc-path (string-append "src/" unpack-path "/docs")))
+                      (invoke "make" "-C" doc-path "install")))))))
+    (inputs (list btrfs-progs
+                  cni-plugins
+                  conmon
+                  eudev
+                  glib
+                  gpgme
+                  libassuan
+                  libseccomp
+                  lvm2
+                  runc))
+    (native-inputs
+     (list go-github-com-go-md2man
+           gnu-make
+           pkg-config))
+    (synopsis
+     "Build Open Container Initiative images")
+    (description
+     "Buildah is used to build Open Container Initiative
+@acronym{OCI, Open Container Initiative} compatible containers.")
+    (home-page "https://buildah.io")
+    (license license:asl2.0)))
--
2.37.1 (Apple Git-137.1)






Reply sent to Ludovic Courtès <ludo <at> gnu.org>:
You have taken responsibility. (Thu, 08 Jun 2023 21:28:02 GMT) Full text and rfc822 format available.

Notification sent to Zongyuan Li <zongyuan.li <at> c0x0o.me>:
bug acknowledged by developer. (Thu, 08 Jun 2023 21:28:02 GMT) Full text and rfc822 format available.

Message #55 received at 61682-done <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Zongyuan Li <zongyuan.li <at> c0x0o.me>
Cc: 61682-done <at> debbugs.gnu.org, liliana.prikler <at> gmail.com
Subject: Re: bug#61682: [PATCH] gnu: buildah: Add 'buildah' package
Date: Thu, 08 Jun 2023 23:27:39 +0200
[Message part 1 (text/plain, inline)]
Hi,

Zongyuan Li <zongyuan.li <at> c0x0o.me> skribis:

> gnu: buildah: Add 'buildah' package
>
> Introduce new 'buildah' package
>
> * gnu/packages/containers.scm: New 'buildah' package

Finally applied with the changes below, most of which were suggested by
Liliana.

Thanks,
Ludo’.

[Message part 2 (text/x-patch, inline)]
diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index 839d81cd0e..eb7699c505 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -414,8 +414,10 @@ (define-public buildah
     (arguments
      (list #:import-path "github.com/containers/buildah/cmd/buildah"
            #:unpack-path "github.com/containers/buildah"
-            ; Some dependencies require go-1.18 to build
+
+           ;; Some dependencies require go-1.18 to build.
            #:go go-1.18
+
            #:tests? #f
            #:install-source? #f
            #:phases
@@ -433,14 +435,12 @@ (define-public buildah
                      (("/usr/local") (string-append #$output)))))
                (add-after 'build 'build-docs
                  (lambda* (#:key unpack-path #:allow-other-keys)
-                    (let*
-                      ((doc-path (string-append "src/" unpack-path "/docs")))
-                      (invoke "make" "-C" doc-path))))
+                   (let ((doc (string-append "src/" unpack-path "/docs")))
+                     (invoke "make" "-C" doc))))
                (add-after 'install 'install-docs
                  (lambda* (#:key unpack-path #:allow-other-keys)
-                    (let*
-                      ((doc-path (string-append "src/" unpack-path "/docs")))
-                      (invoke "make" "-C" doc-path "install")))))))
+                   (let ((doc (string-append "src/" unpack-path "/docs")))
+                     (invoke "make" "-C" doc "install")))))))
     (inputs (list btrfs-progs
                   cni-plugins
                   conmon
@@ -455,10 +455,23 @@ (define-public buildah
      (list go-github-com-go-md2man
            gnu-make
            pkg-config))
-    (synopsis
-     "Build Open Container Initiative images")
+    (synopsis "Build @acronym{OCI, Open Container Initiative} images")
     (description
-     "Buildah is used to build Open Container Initiative
-@acronym{OCI, Open Container Initiative} compatible containers.")
+     "Buildah is a command-line tool to build @acronym{OCI, Open Container
+Initiative} container images.  More generally, it can be used to:
+
+@itemize
+@item
+create a working container, either from scratch or using an image as a
+starting point;
+@item
+create an image, either from a working container or via the instructions
+in a @file{Dockerfile};
+@item
+mount a working container's root filesystem for manipulation;
+@item
+use the updated contents of a container's root filesystem as a filesystem
+layer to create a new image.
+@end itemize")
     (home-page "https://buildah.io")
     (license license:asl2.0)))

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 07 Jul 2023 11:24:10 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 308 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.