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
guix-patches <at> gnu.org
:bug#61682
; Package guix-patches
.
(Tue, 21 Feb 2023 14:58:03 GMT) Full text and rfc822 format available.Zongyuan Li <zongyuan.li <at> c0x0o.me>
: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)
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)
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
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
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
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
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
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)
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)
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
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)
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?
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
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
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
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)
Ludovic Courtès <ludo <at> gnu.org>
:Zongyuan Li <zongyuan.li <at> c0x0o.me>
: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)))
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.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.