unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#31768] [PATCH 1/3] gnu: Add libostree.
@ 2018-06-09 11:20 宋文武
  2018-06-09 11:20 ` [bug#31767] [PATCH 2/3] gnu: Add umoci 宋文武
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: 宋文武 @ 2018-06-09 11:20 UTC (permalink / raw)
  To: 31768; +Cc: 宋文武

* gnu/packages/package-management.scm (libostree): New variable.
---
 gnu/packages/package-management.scm | 59 +++++++++++++++++++++++++++++
 1 file changed, 59 insertions(+)

diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index e8e17eeee..e1e41c2f5 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -7,6 +7,7 @@
 ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
+;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -26,15 +27,19 @@
 (define-module (gnu packages package-management)
   #:use-module (gnu packages)
   #:use-module (gnu packages acl)
+  #:use-module (gnu packages attr)
+  #:use-module (gnu packages avahi)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages backup)
   #:use-module (gnu packages bdw-gc)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages bootstrap)          ;for 'bootstrap-guile-origin'
   #:use-module (gnu packages check)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages cpio)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
+  #:use-module (gnu packages docbook)
   #:use-module (gnu packages file)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
@@ -899,3 +904,57 @@ Microsoft cabinet (.@dfn{CAB}) files.")
 and sign Windows@tie{}Installer (.@dfn{MSI}) files.  It aims to be a solution
 for packaging and deployment of cross-compiled Windows applications.")
     (license license:lgpl2.1+)))
+
+(define-public libostree
+  (package
+    (name "libostree")
+    (version "2018.5")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/ostreedev/ostree/releases/download/v"
+                    version "/libostree-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0q82d6rvp119nx7ck7j63a591kz8vg7v465kf9ygh8kzg875l3xd"))))
+    (build-system gnu-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'pre-check
+           (lambda _
+             ;; Don't try to use the non-existing '/var/tmp' as test
+             ;; directory.
+             (setenv "TEST_TMPDIR" (getenv "TMPDIR"))
+             #t)))
+       ;; XXX: fails with:
+       ;;     tap-driver.sh: internal error getting exit status
+       ;;     tap-driver.sh: fatal: I/O or internal error
+       #:tests? #f))
+    (native-inputs
+     `(("attr" ,attr)                   ; for tests
+       ("bison" ,bison)
+       ("glib:bin" ,glib "bin")          ; for 'glib-mkenums'
+       ("gobject-introspection" ,gobject-introspection)
+       ("pkg-config" ,pkg-config)
+       ("xsltproc" ,libxslt)))
+    (inputs
+     `(("avahi" ,avahi)
+       ("docbook-xml" ,docbook-xml-4.2)
+       ("docbook-xsl" ,docbook-xsl)
+       ("e2fsprogs" ,e2fsprogs)
+       ("fuse" ,fuse)
+       ("glib" ,glib)
+       ("gpgme" ,gpgme)
+       ("libarchive" ,libarchive)
+       ("libsoup" ,libsoup)
+       ("nettle" ,nettle)               ; required by 'libarchive.la'
+       ("util-linux" ,util-linux)))
+    (home-page "https://ostree.readthedocs.io/en/latest/")
+    (synopsis "Operating system and container binary deployment and upgrades")
+    (description
+     "@code{libostree} is both a shared library and suite of command line
+tools that combines a \"git-like\" model for committing and downloading
+bootable filesystem trees, along with a layer for deploying them and managing
+the bootloader configuration.")
+    (license license:lgpl2.0+)))
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#31767] [PATCH 2/3] gnu: Add umoci.
  2018-06-09 11:20 [bug#31768] [PATCH 1/3] gnu: Add libostree 宋文武
@ 2018-06-09 11:20 ` 宋文武
  2018-06-11 12:24   ` Ludovic Courtès
  2018-06-09 11:21 ` [bug#31766] [PATCH 3/3] gnu: Add skopeo 宋文武
  2018-06-11 12:22 ` [bug#31768] [PATCH 1/3] gnu: Add libostree Ludovic Courtès
  2 siblings, 1 reply; 9+ messages in thread
From: 宋文武 @ 2018-06-09 11:20 UTC (permalink / raw)
  To: 31767; +Cc: 宋文武

* gnu/packages/virtualization.scm (umoci): New variable.
---
 gnu/packages/virtualization.scm | 45 +++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index d2419df98..d5be45b1e 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -864,3 +864,48 @@ packaged according to the
 Container Initiative (OCI) format} and is a compliant implementation of the
 Open Container Initiative specification.")
     (license asl2.0)))
+
+(define-public umoci
+  (package
+    (name "umoci")
+    (version "0.4.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/openSUSE/umoci/releases/download/v"
+                    version "/umoci.tar.xz"))
+              (file-name (string-append "umoci-" version ".tar.xz"))
+              (sha256
+               (base32
+                "0hg7hs4dagj2fgymm4b4s68k1v2k2093s3jg0d94j0ixhfmyg9nd"))))
+    (build-system go-build-system)
+    (arguments
+     '(#:import-path "github.com/openSUSE/umoci"
+       #:install-source? #f
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'unpack
+           (lambda* (#:key source import-path #:allow-other-keys)
+             ;; Unpack the tarball into 'umoci' instead of "runc-${version}".
+             (let ((dest (string-append "src/" import-path)))
+               (mkdir-p dest)
+               (invoke "tar" "-C" (string-append "src/" import-path)
+                       "--strip-components=1"
+                       "-xvf" source))))
+         (replace 'build
+           (lambda* (#:key import-path #:allow-other-keys)
+             (chdir (string-append "src/" import-path))
+             ;; TODO: build manpages with 'go-md2man'.
+             (invoke "make" "SHELL=bash")))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (bindir (string-append out "/bin")))
+               (install-file "umoci" bindir)
+               #t))))))
+    (home-page "https://umo.ci/")
+    (synopsis "Tool for modifying Open Container images")
+    (description
+     "@command{umoci} is a tool that allows for high-level modification of an
+OCI image layout and its tagged images.")
+    (license asl2.0)))
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#31766] [PATCH 3/3] gnu: Add skopeo.
  2018-06-09 11:20 [bug#31768] [PATCH 1/3] gnu: Add libostree 宋文武
  2018-06-09 11:20 ` [bug#31767] [PATCH 2/3] gnu: Add umoci 宋文武
@ 2018-06-09 11:21 ` 宋文武
  2018-06-11 12:24   ` Ludovic Courtès
  2018-06-11 12:22 ` [bug#31768] [PATCH 1/3] gnu: Add libostree Ludovic Courtès
  2 siblings, 1 reply; 9+ messages in thread
From: 宋文武 @ 2018-06-09 11:21 UTC (permalink / raw)
  To: 31766; +Cc: 宋文武

* gnu/packages/virtualization.scm (skopeo): New variable.
---
 gnu/packages/virtualization.scm | 65 +++++++++++++++++++++++++++++++++
 1 file changed, 65 insertions(+)

diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index d5be45b1e..0861037df 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -45,6 +45,7 @@
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
+  #:use-module (gnu packages gnupg)
   #:use-module (gnu packages golang)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
@@ -52,6 +53,7 @@
   #:use-module (gnu packages linux)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages networking)
+  #:use-module (gnu packages package-management)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages polkit)
@@ -71,6 +73,7 @@
   #:use-module (guix build-system go)
   #:use-module (guix build-system python)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module ((guix licenses) #:select (gpl2 gpl2+ gpl3+ lgpl2.1 lgpl2.1+
                                                asl2.0))
   #:use-module (guix packages)
@@ -909,3 +912,65 @@ Open Container Initiative specification.")
      "@command{umoci} is a tool that allows for high-level modification of an
 OCI image layout and its tagged images.")
     (license asl2.0)))
+
+(define-public skopeo
+  (package
+    (name "skopeo")
+    (version "0.1.28")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/projectatomic/skopeo")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "068nwrr3nr27alravcq1sxyhdd5jjr24213vdgn1dqva3885gbi0"))))
+    (build-system go-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("btrfs-progs" ,btrfs-progs)
+       ("eudev" ,eudev)
+       ("libassuan" ,libassuan)
+       ("libselinux" ,libselinux)
+       ("libostree" ,libostree)
+       ("lvm2" ,lvm2)
+       ("glib" ,glib)
+       ("gpgme" ,gpgme)))
+    (arguments
+     '(#:import-path "github.com/projectatomic/skopeo"
+       #:install-source? #f
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'build
+           (lambda* (#:key import-path #:allow-other-keys)
+             (chdir (string-append "src/" import-path))
+             ;; TODO: build manpages with 'go-md2man'.
+             (invoke "make" "binary-local")))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (invoke "make" "install-binary" "install-completions"
+                       (string-append "PREFIX=" out))))))))
+    (home-page "https://github.com/projectatomic/skopeo")
+    (synopsis "Interact with container images and container image registries")
+    (description
+     "@command{skopeo} is a command line utility providing various operations
+with container images and container image registries.  It can:
+@enumerate
+
+@item Copy container images between various containers image stores,
+converting them as necessary.
+
+@item Convert a Docker schema 2 or schema 1 container image to an OCI image.
+
+@item Inspect a repository on a container registry without needlessly pulling
+the image.
+
+@item Sign and verify container images.
+
+@item Delete container images from a remote container registry.
+
+@end enumerate")
+    (license asl2.0)))
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [bug#31768] [PATCH 1/3] gnu: Add libostree.
  2018-06-09 11:20 [bug#31768] [PATCH 1/3] gnu: Add libostree 宋文武
  2018-06-09 11:20 ` [bug#31767] [PATCH 2/3] gnu: Add umoci 宋文武
  2018-06-09 11:21 ` [bug#31766] [PATCH 3/3] gnu: Add skopeo 宋文武
@ 2018-06-11 12:22 ` Ludovic Courtès
  2018-06-12 11:35   ` bug#31768: " 宋文武
  2 siblings, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2018-06-11 12:22 UTC (permalink / raw)
  To: 宋文武; +Cc: 31768

Hello,

宋文武 <iyzsong@member.fsf.org> skribis:

> * gnu/packages/package-management.scm (libostree): New variable.

[...]

> +    (inputs
> +     `(("avahi" ,avahi)
> +       ("docbook-xml" ,docbook-xml-4.2)
> +       ("docbook-xsl" ,docbook-xsl)
> +       ("e2fsprogs" ,e2fsprogs)
> +       ("fuse" ,fuse)
> +       ("glib" ,glib)
> +       ("gpgme" ,gpgme)
> +       ("libarchive" ,libarchive)
> +       ("libsoup" ,libsoup)
> +       ("nettle" ,nettle)               ; required by 'libarchive.la'

I think Nettle is no longer needed since commit
5294836d6a5eb1a37da1c130c182a06f201640e6.

Otherwise LGTM, thanks!

Ludo’.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [bug#31767] [PATCH 2/3] gnu: Add umoci.
  2018-06-09 11:20 ` [bug#31767] [PATCH 2/3] gnu: Add umoci 宋文武
@ 2018-06-11 12:24   ` Ludovic Courtès
  2018-06-12 11:35     ` bug#31767: " 宋文武
  0 siblings, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2018-06-11 12:24 UTC (permalink / raw)
  To: 宋文武; +Cc: 31767

宋文武 <iyzsong@member.fsf.org> skribis:

> * gnu/packages/virtualization.scm (umoci): New variable.

[...]

> +    (home-page "https://umo.ci/")
> +    (synopsis "Tool for modifying Open Container images")
> +    (description
> +     "@command{umoci} is a tool that allows for high-level modification of an
> +OCI image layout and its tagged images.")

Maybe s/OCI/Open Container Image (OCI)/.

Otherwise LGTM, thanks!

Ludo’.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [bug#31766] [PATCH 3/3] gnu: Add skopeo.
  2018-06-09 11:21 ` [bug#31766] [PATCH 3/3] gnu: Add skopeo 宋文武
@ 2018-06-11 12:24   ` Ludovic Courtès
  2018-06-12 11:36     ` bug#31766: " 宋文武
  0 siblings, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2018-06-11 12:24 UTC (permalink / raw)
  To: 宋文武; +Cc: 31766

宋文武 <iyzsong@member.fsf.org> skribis:

> * gnu/packages/virtualization.scm (skopeo): New variable.

LGTM, thanks!

Ludo'.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#31768: [PATCH 1/3] gnu: Add libostree.
  2018-06-11 12:22 ` [bug#31768] [PATCH 1/3] gnu: Add libostree Ludovic Courtès
@ 2018-06-12 11:35   ` 宋文武
  0 siblings, 0 replies; 9+ messages in thread
From: 宋文武 @ 2018-06-12 11:35 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 31768-done

ludo@gnu.org (Ludovic Courtès) writes:

> Hello,
>
> 宋文武 <iyzsong@member.fsf.org> skribis:
>
>> * gnu/packages/package-management.scm (libostree): New variable.
>
> [...]
>
>> +    (inputs
>> +     `(("avahi" ,avahi)
>> +       ("docbook-xml" ,docbook-xml-4.2)
>> +       ("docbook-xsl" ,docbook-xsl)
>> +       ("e2fsprogs" ,e2fsprogs)
>> +       ("fuse" ,fuse)
>> +       ("glib" ,glib)
>> +       ("gpgme" ,gpgme)
>> +       ("libarchive" ,libarchive)
>> +       ("libsoup" ,libsoup)
>> +       ("nettle" ,nettle)               ; required by 'libarchive.la'
>
> I think Nettle is no longer needed since commit
> 5294836d6a5eb1a37da1c130c182a06f201640e6.
>

It's still needed.  Guess it doesn't use flags from 'pkg-config'...

Pushed, thanks for the review!

^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#31767: [PATCH 2/3] gnu: Add umoci.
  2018-06-11 12:24   ` Ludovic Courtès
@ 2018-06-12 11:35     ` 宋文武
  0 siblings, 0 replies; 9+ messages in thread
From: 宋文武 @ 2018-06-12 11:35 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 31767-done

ludo@gnu.org (Ludovic Courtès) writes:

> 宋文武 <iyzsong@member.fsf.org> skribis:
>
>> * gnu/packages/virtualization.scm (umoci): New variable.
>
> [...]
>
>> +    (home-page "https://umo.ci/")
>> +    (synopsis "Tool for modifying Open Container images")
>> +    (description
>> +     "@command{umoci} is a tool that allows for high-level modification of an
>> +OCI image layout and its tagged images.")
>
> Maybe s/OCI/Open Container Image (OCI)/.

Okay.
>
> Otherwise LGTM, thanks!

Pushed,  thanks!

^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#31766: [PATCH 3/3] gnu: Add skopeo.
  2018-06-11 12:24   ` Ludovic Courtès
@ 2018-06-12 11:36     ` 宋文武
  0 siblings, 0 replies; 9+ messages in thread
From: 宋文武 @ 2018-06-12 11:36 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 31766-done

ludo@gnu.org (Ludovic Courtès) writes:

> 宋文武 <iyzsong@member.fsf.org> skribis:
>
>> * gnu/packages/virtualization.scm (skopeo): New variable.
>
> LGTM, thanks!

Pushed, thank you!

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-06-12 11:37 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-09 11:20 [bug#31768] [PATCH 1/3] gnu: Add libostree 宋文武
2018-06-09 11:20 ` [bug#31767] [PATCH 2/3] gnu: Add umoci 宋文武
2018-06-11 12:24   ` Ludovic Courtès
2018-06-12 11:35     ` bug#31767: " 宋文武
2018-06-09 11:21 ` [bug#31766] [PATCH 3/3] gnu: Add skopeo 宋文武
2018-06-11 12:24   ` Ludovic Courtès
2018-06-12 11:36     ` bug#31766: " 宋文武
2018-06-11 12:22 ` [bug#31768] [PATCH 1/3] gnu: Add libostree Ludovic Courtès
2018-06-12 11:35   ` bug#31768: " 宋文武

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).