summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2018-03-05 11:15:20 +0200
committerEfraim Flashner <efraim@flashner.co.il>2018-03-12 21:54:44 +0200
commitb3230c287ae244df518c78cc65b5f20cdb5f0885 (patch)
tree987fc8f7f617a1a07fa89573a57fd49415b7467a /gnu
parent8e1cd1a2c53a2944012d5b2c1670e7203cdf91b6 (diff)
downloadguix-b3230c287ae244df518c78cc65b5f20cdb5f0885.tar.gz
gnu: Add ubuntu-keyring.
* gnu/packages/debian.scm (ubuntu-keyring): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/debian.scm45
1 files changed, 45 insertions, 0 deletions
diff --git a/gnu/packages/debian.scm b/gnu/packages/debian.scm
index 70131ff451..15d4429939 100644
--- a/gnu/packages/debian.scm
+++ b/gnu/packages/debian.scm
@@ -18,6 +18,9 @@
   #:use-module (guix download)
   #:use-module (guix packages)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system trivial)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages compression)
   #:use-module (gnu packages gnupg))
 
 (define-public debian-archive-keyring
@@ -60,3 +63,45 @@
 contains the archive keys used for that.")
     (license (list license:public-domain ; the keys
                    license:gpl2+)))) ; see debian/copyright
+
+(define-public ubuntu-keyring
+  (package
+    (name "ubuntu-keyring")
+    (version "2018.02.28")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://launchpad.net/ubuntu/+archive/primary/"
+                            "+files/" name "_" version ".tar.gz"))
+        (sha256
+         (base32
+          "1zj3012cz7rlx9pm39wnwa0lmi1h38n6bkgbz81vnmcsvqsc9a3a"))))
+    (build-system trivial-build-system)
+    (arguments
+     `(#:modules ((guix build utils))
+       #:builder (begin
+                   (use-modules (guix build utils))
+                   (let* ((out (assoc-ref %outputs "out"))
+                          (apt (string-append out "/etc/apt/trusted.gpg.d/"))
+                          (key (string-append out "/share/keyrings/")))
+                     (setenv "PATH" (string-append
+                                      (assoc-ref %build-inputs "gzip") "/bin:"
+                                      (assoc-ref %build-inputs "tar") "/bin"))
+                     (invoke "tar" "xvf" (assoc-ref %build-inputs "source"))
+                     (for-each (lambda (file)
+                                 (install-file file apt))
+                               (find-files "." "ubuntu-[^am].*\\.gpg$"))
+                     (for-each (lambda (file)
+                                 (install-file file key))
+                               (find-files "." "ubuntu-[am].*\\.gpg$")))
+                   #t)))
+    (native-inputs
+     `(("tar" ,tar)
+       ("gzip" ,gzip)))
+    (home-page "https://launchpad.net/ubuntu/+source/ubuntu-keyring")
+    (synopsis "GnuPG keys of the Ubuntu archive")
+    (description
+     "The Ubuntu project digitally signs its Release files.  This package
+contains the archive keys used for that.")
+    (license (list license:public-domain ; the keys
+                   license:gpl2+)))) ; see debian/copyright