summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-04-22 16:11:25 +0200
committerLudovic Courtès <ludo@gnu.org>2020-04-26 22:49:48 +0200
commit45c84c8f6f979c84d08b205ed3fb3d6769c4ae3f (patch)
treec82e5ac527ba9a80fa3c77ffa6c467961684ae41
parent45bd91334f6a932ed65576febd6e71888563cd8f (diff)
downloadguix-45c84c8f6f979c84d08b205ed3fb3d6769c4ae3f.tar.gz
pack: Use a declarative profile.
* guix/scripts/pack.scm (guix-pack): Use a declarative profile instead
of 'profile-derivation'.
-rw-r--r--guix/scripts/pack.scm33
1 files changed, 16 insertions, 17 deletions
diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm
index 6d63fb4b90..f3d1b41c6f 100644
--- a/guix/scripts/pack.scm
+++ b/guix/scripts/pack.scm
@@ -1071,7 +1071,21 @@ Create a bundle of PACKAGE.\n"))
                    (localstatedir? (assoc-ref opts 'localstatedir?))
                    (entry-point    (assoc-ref opts 'entry-point))
                    (profile-name   (assoc-ref opts 'profile-name))
-                   (gc-root        (assoc-ref opts 'gc-root)))
+                   (gc-root        (assoc-ref opts 'gc-root))
+                   (profile        (profile
+                                    (content manifest)
+
+                                    ;; Always produce relative symlinks for
+                                    ;; Singularity (see
+                                    ;; <https://bugs.gnu.org/34913>).
+                                    (relative-symlinks?
+                                     (or relocatable?
+                                         (eq? 'squashfs pack-format)))
+
+                                    (hooks (if bootstrap?
+                                               '()
+                                               %default-profile-hooks))
+                                    (locales? (not bootstrap?)))))
               (define (lookup-package package)
                 (manifest-lookup manifest (manifest-pattern (name package))))
 
@@ -1085,22 +1099,7 @@ Create a bundle of PACKAGE.\n"))
 to your package list.")))
 
               (run-with-store store
-                (mlet* %store-monad ((profile (profile-derivation
-                                               manifest
-
-                                               ;; Always produce relative
-                                               ;; symlinks for Singularity (see
-                                               ;; <https://bugs.gnu.org/34913>).
-                                               #:relative-symlinks?
-                                               (or relocatable?
-                                                   (eq? 'squashfs pack-format))
-
-                                               #:hooks (if bootstrap?
-                                                           '()
-                                                           %default-profile-hooks)
-                                               #:locales? (not bootstrap?)
-                                               #:target target))
-                                     (drv (build-image name profile
+                (mlet* %store-monad ((drv (build-image name profile
                                                        #:target
                                                        target
                                                        #:compressor