summary refs log tree commit diff
path: root/build-aux/hydra/guix.scm
diff options
context:
space:
mode:
Diffstat (limited to 'build-aux/hydra/guix.scm')
-rw-r--r--build-aux/hydra/guix.scm55
1 files changed, 22 insertions, 33 deletions
diff --git a/build-aux/hydra/guix.scm b/build-aux/hydra/guix.scm
index f496357562..659b8bfbc1 100644
--- a/build-aux/hydra/guix.scm
+++ b/build-aux/hydra/guix.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -43,13 +43,10 @@
 (use-modules (guix store)
              (guix packages)
              (guix utils)
+             (guix grafts)
              (guix derivations)
              (guix build-system gnu)
-             (gnu packages version-control)
              (gnu packages package-management)
-             (gnu packages imagemagick)
-             (gnu packages graphviz)
-             (gnu packages man)
              (srfi srfi-1)
              (srfi srfi-26)
              (ice-9 match))
@@ -63,36 +60,15 @@
                          #:optional (package-derivation package-derivation))
   "Convert PACKAGE to an alist suitable for Hydra."
   `((derivation . ,(derivation-file-name
-                    (package-derivation store package system)))
+                    (parameterize ((%graft? #f))
+                      (package-derivation store package system
+                                          #:graft? #f))))
     (description . ,(package-synopsis package))
     (long-description . ,(package-description package))
     (license . ,(package-license package))
     (home-page . ,(package-home-page package))
     (maintainers . ("bug-guix@gnu.org"))))
 
-(define (tarball-package checkout)
-  "Return a package that does `make distcheck' from CHECKOUT, a directory
-containing a Git checkout of Guix."
-  (let ((guix (@@ (gnu packages package-management) guix)))
-    (dist-package (package
-                    (inherit guix)
-                    (arguments (package-arguments guix))
-                    (native-inputs `(("imagemagick" ,imagemagick)
-                                     ,@(package-native-inputs guix))))
-                  checkout
-
-                  #:phases
-                  '(modify-phases %dist-phases
-                     (add-before 'build 'build-daemon
-                       ;; Build 'guix-daemon' first so that help2man
-                       ;; successfully creates 'guix-daemon.1'.
-                       (lambda _
-                         (let ((n (number->string
-                                   (parallel-job-count))))
-                           (zero? (system* "make"
-                                           "nix/libstore/schema.sql.hh"
-                                           "guix-daemon" "-j" n)))))))))
-
 (define (hydra-jobs store arguments)
   "Return Hydra jobs."
   (define systems
@@ -109,9 +85,22 @@ containing a Git checkout of Guix."
   (define guix-checkout
     (assq-ref arguments 'guix))
 
-  (let ((guix (assq-ref guix-checkout 'file-name)))
+  (let ((file (assq-ref guix-checkout 'file-name)))
     (format (current-error-port) "using checkout ~s (~s)~%"
-            guix-checkout guix)
+            guix-checkout file)
+
     `((tarball . ,(cute package->alist store
-                        (tarball-package guix)
-                        (%current-system))))))
+                        (dist-package guix file)
+                        (%current-system)))
+
+      ,@(map (lambda (system)
+               (let ((name (string->symbol
+                            (string-append "guix." system))))
+                 `(,name
+                   . ,(cute package->alist store
+                            (package
+                              (inherit guix)
+                              (version "latest")
+                              (source file))
+                            system))))
+             %hydra-supported-systems))))