summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-06-12 22:33:07 +0200
committerLudovic Courtès <ludo@gnu.org>2016-06-12 23:54:00 +0200
commit4d4c3614c85f98f734b3e4f375568b562dd1e2a7 (patch)
tree8eafaf160adb55f84f90c9958d03604ecbff0c4f
parent52530805b307abe2ce9178d088e90d43f0c77cb2 (diff)
downloadguix-4d4c3614c85f98f734b3e4f375568b562dd1e2a7.tar.gz
profiles: Make sure hook derivations fail upon error.
Reported at
<https://lists.gnu.org/archive/html/guix-devel/2016-06/msg00368.html>.

* guix/profiles.scm (info-dir-file)[build]: Add explicit call to
'exit'.
* guix/profiles.scm (ghc-package-cache-file)[build]: Likewise.
* guix/profiles.scm (xdg-desktop-database)[build]: Likewise.
* guix/profiles.scm (xdg-mime-database)[build]: Likewise.
-rw-r--r--guix/profiles.scm12
1 files changed, 6 insertions, 6 deletions
diff --git a/guix/profiles.scm b/guix/profiles.scm
index 37ea302e82..90c43325a0 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -510,9 +510,9 @@ MANIFEST."
                     info (string-append #$output "/share/info/dir"))))
 
         (mkdir-p (string-append #$output "/share/info"))
-        (every install-info
-               (append-map info-files
-                           '#$(manifest-inputs manifest)))))
+        (exit (every install-info
+                     (append-map info-files
+                                 '#$(manifest-inputs manifest))))))
 
   (gexp->derivation "info-dir" build
                     #:modules '((guix build utils))
@@ -562,7 +562,7 @@ entries of MANIFEST, or #f if MANIFEST does not have any GHC packages."
                 (system* (string-append #+ghc "/bin/ghc-pkg") "recache"
                          (string-append "--package-db=" db-dir)))))
           (for-each delete-file (find-files db-dir "\\.conf$"))
-          success)))
+          (exit success))))
 
   (with-monad %store-monad
     ;; Don't depend on GHC when there's nothing to do.
@@ -710,7 +710,7 @@ MIME type."
             (mkdir-p (string-append #$output "/share"))
             (union-build destdir appdirs
                          #:log-port (%make-void-port "w"))
-            (zero? (system* update-desktop-database destdir)))))
+            (exit (zero? (system* update-desktop-database destdir))))))
 
     ;; Don't run the hook when 'desktop-file-utils' is not referenced.
     (if desktop-file-utils
@@ -745,7 +745,7 @@ entries.  It's used to query the MIME type of a given file."
             (union-build (string-append destdir "/packages") pkgdirs
                          #:log-port (%make-void-port "w"))
             (setenv "XDG_DATA_HOME" datadir)
-            (zero? (system* update-mime-database destdir)))))
+            (exit (zero? (system* update-mime-database destdir))))))
 
     ;; Don't run the hook when 'shared-mime-info' is referenced.
     (if shared-mime-info