summaryrefslogtreecommitdiff
path: root/guix/profiles.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix/profiles.scm')
-rw-r--r--guix/profiles.scm31
1 files changed, 16 insertions, 15 deletions
diff --git a/guix/profiles.scm b/guix/profiles.scm
index ce8a11fbe5..90c43325a0 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -469,7 +469,8 @@ MANIFEST that named NAME, or #f if not found."
(with-monad %store-monad
(match (manifest-entry-item entry)
((? package? package)
- (match (package-transitive-inputs package)
+ (match (cons (list (package-name package) package)
+ (package-transitive-inputs package))
(((labels inputs . _) ...)
(return (find-among-inputs inputs)))))
((? string? item)
@@ -509,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))
@@ -561,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.
@@ -709,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
@@ -733,18 +734,18 @@ entries. It's used to query the MIME type of a given file."
(guix build union))
(let* ((datadir (string-append #$output "/share"))
(destdir (string-append datadir "/mime"))
- (mimedirs (filter file-exists?
- (map (cut string-append <>
- "/share/mime")
- '#$(manifest-inputs manifest))))
+ (pkgdirs (filter file-exists?
+ (map (cut string-append <>
+ "/share/mime/packages")
+ '#$(manifest-inputs manifest))))
(update-mime-database (string-append
#+shared-mime-info
"/bin/update-mime-database")))
- (mkdir-p datadir)
- (union-build destdir mimedirs
- #:log-port (%make-void-port "w"))
- (setenv "XDG_DATA_HOME" datadir)
- (zero? (system* update-mime-database destdir)))))
+ (mkdir-p destdir)
+ (union-build (string-append destdir "/packages") pkgdirs
+ #:log-port (%make-void-port "w"))
+ (setenv "XDG_DATA_HOME" datadir)
+ (exit (zero? (system* update-mime-database destdir))))))
;; Don't run the hook when 'shared-mime-info' is referenced.
(if shared-mime-info