pack: Use a declarative profile.

* guix/scripts/pack.scm (guix-pack): Use a declarative profile instead
of 'profile-derivation'.
This commit is contained in:
Ludovic Courtès 2020-04-22 16:11:25 +02:00
parent 45bd91334f
commit 45c84c8f6f
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -1071,7 +1071,21 @@ (define with-provenance
(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 @@ (define (lookup-package package)
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