GNU bug report logs - #74564
[PATCH] gnu: Add podman-docker.

Previous Next

Package: guix-patches;

Reported by: Arjan Adriaanse <arjan <at> adriaan.se>

Date: Wed, 27 Nov 2024 23:53:02 UTC

Severity: normal

Tags: patch

To reply to this bug, email your comments to 74564 AT debbugs.gnu.org.

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#74564; Package guix-patches. (Wed, 27 Nov 2024 23:53:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Arjan Adriaanse <arjan <at> adriaan.se>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Wed, 27 Nov 2024 23:53:02 GMT) Full text and rfc822 format available.

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

From: Arjan Adriaanse <arjan <at> adriaan.se>
To: guix-patches <at> gnu.org
Cc: Arjan Adriaanse <arjan <at> adriaan.se>
Subject: [PATCH] gnu: Add podman-docker.
Date: Thu, 28 Nov 2024 00:52:14 +0100
* gnu/packages/containers.scm (podman-docker): New variable.

Change-Id: Ib6a3e0423d8257ce13e72ac12a908da42015cf8d
---
 gnu/packages/containers.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index c638736cda..b606215842 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2024 Tomas Volf <~@wolfsden.cz>
 ;;; Copyright © 2024 Foundation Devices, Inc. <hello <at> foundation.xyz>
 ;;; Copyright © 2024 Jean-Pierre De Jesus DIAZ <jean <at> foundation.xyz>
+;;; Copyright © 2024 Arjan Adriaanse <arjan <at> adriaan.se>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -44,6 +45,7 @@ (define-module (gnu packages containers)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gcc)
   #:use-module (gnu packages gnupg)
@@ -576,6 +578,33 @@ (define-public podman
 @code{openssh} packages.")
     (license license:asl2.0)))
 
+(define-public podman-docker
+  (package/inherit podman
+    (name "podman-docker")
+    (native-inputs `(,@(package-native-inputs podman)
+                     ("gettext" ,gettext-minimal))) ; for envsubst
+    (propagated-inputs (list podman))
+    (build-system copy-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'unpack 'set-env
+            (lambda _
+              ;; When running go, things fail because HOME=/homeless-shelter.
+              (setenv "HOME" "/tmp")
+              (setenv "PREFIX" #$output)
+              (setenv "ETCDIR" (string-append #$output "/etc"))))
+          (replace 'install
+            (lambda* (#:key inputs #:allow-other-keys)
+              (substitute* "Makefile"
+                (("BINDIR=\\$\\{BINDIR\\}") ; directory of podman command
+                 (string-append "BINDIR=" (assoc-ref inputs "podman") "/bin"))
+                (("ETCDIR=\\$\\{ETCDIR\\}") ; configuration directory
+                 "ETCDIR='$${XDG_CONFIG_HOME}'"))
+              (invoke "make" "docker-docs" "install.docker-full"))))))
+    (synopsis "Emulate Docker CLI using Podman")))
+
 (define-public podman-compose
   (package
     (name "podman-compose")

base-commit: c6d15cf27a137051ccd8f301330a70dd0eecc3d4
-- 
2.46.0





Information forwarded to guix-patches <at> gnu.org:
bug#74564; Package guix-patches. (Fri, 29 Nov 2024 13:47:02 GMT) Full text and rfc822 format available.

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

From: Arjan Adriaanse <arjan <at> adriaan.se>
To: 74564 <at> debbugs.gnu.org
Cc: Arjan Adriaanse <arjan <at> adriaan.se>
Subject: [PATCH v2] gnu: podman: Add docker output.
Date: Fri, 29 Nov 2024 14:43:19 +0100
* gnu/packages/containers.scm (podman-docker)[arguments]<#:phases>: Add
'override-docker-envsubst-args and 'install-docker.
[inputs]: Add gettext-minimal.
[outputs]: Add docker.

Change-Id: Ib6a3e0423d8257ce13e72ac12a908da42015cf8d
---
 gnu/packages/containers.scm | 20 +++++++++++++++++++-
 1 file changed, 19 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index c638736cda..6cc1a199d2 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2024 Tomas Volf <~@wolfsden.cz>
 ;;; Copyright © 2024 Foundation Devices, Inc. <hello <at> foundation.xyz>
 ;;; Copyright © 2024 Jean-Pierre De Jesus DIAZ <jean <at> foundation.xyz>
+;;; Copyright © 2024 Arjan Adriaanse <arjan <at> adriaan.se>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -44,6 +45,7 @@ (define-module (gnu packages containers)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gcc)
   #:use-module (gnu packages gnupg)
@@ -541,7 +543,20 @@ (define-public podman
           (add-after 'install 'install-completions
             (lambda _
               (invoke "make" "install.completions"
-                      (string-append "PREFIX=" #$output)))))))
+                      (string-append "PREFIX=" #$output))))
+          (add-after 'unpack 'override-docker-envsubst-args
+            (lambda _
+              (substitute* "Makefile"
+                ;; BINDIR is the directory of the podman command and
+                ;; ETCDIR is the system configuration directory.
+                (("envsubst < docker/docker.in")
+                 (string-append "BINDIR=" #$output "/bin ETCDIR=/etc "
+                                "envsubst < docker/docker.in")))))
+          (add-after 'install 'install-docker
+            (lambda _
+              (invoke "make" "docker-docs" "install.docker-full"
+                      (string-append "PREFIX=" #$output:docker)
+                      (string-append "ETCDIR=" #$output:docker "/etc")))))))
     (inputs
      (list bash-minimal
            btrfs-progs
@@ -553,12 +568,15 @@ (define-public podman
      (list (package/inherit grep
              (inputs (list pcre2)))     ; Drop once grep on master supports -P
            bats
+           gettext-minimal
            git
            go-1.22
            go-github-com-go-md2man
            mandoc
            pkg-config
            python))
+    (outputs '("out"
+               "docker")) ; Emulate Docker CLI
     (home-page "https://podman.io")
     (synopsis "Manage containers, images, pods, and their volumes")
     (description

base-commit: c6d15cf27a137051ccd8f301330a70dd0eecc3d4
-- 
2.46.0





This bug report was last modified 201 days ago.

Previous Next


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