profiles: Allow lowerable objects other than packages in <manifest-entry>.
* guix/profiles.scm (manifest-lookup-package)[entry-lookup-package]: Add case where 'manifest-entry-item' returns something that's neither a string nor a package.
This commit is contained in:
parent
e00ade3fb8
commit
3636b1c7fe
|
@ -168,7 +168,7 @@
|
||||||
(version manifest-entry-version) ; string
|
(version manifest-entry-version) ; string
|
||||||
(output manifest-entry-output ; string
|
(output manifest-entry-output ; string
|
||||||
(default "out"))
|
(default "out"))
|
||||||
(item manifest-entry-item) ; package | store path
|
(item manifest-entry-item) ; package | file-like | store path
|
||||||
(dependencies manifest-entry-dependencies ; <manifest-entry>*
|
(dependencies manifest-entry-dependencies ; <manifest-entry>*
|
||||||
(default '()))
|
(default '()))
|
||||||
(search-paths manifest-entry-search-paths ; search-path-specification*
|
(search-paths manifest-entry-search-paths ; search-path-specification*
|
||||||
|
@ -318,7 +318,7 @@ denoting a specific output of a package."
|
||||||
(propagated-inputs #$(map entry->gexp deps))
|
(propagated-inputs #$(map entry->gexp deps))
|
||||||
(search-paths #$(map search-path-specification->sexp
|
(search-paths #$(map search-path-specification->sexp
|
||||||
search-paths))))
|
search-paths))))
|
||||||
(($ <manifest-entry> name version output (? package? package)
|
(($ <manifest-entry> name version output package
|
||||||
(deps ...) (search-paths ...))
|
(deps ...) (search-paths ...))
|
||||||
#~(#$name #$version #$output
|
#~(#$name #$version #$output
|
||||||
(ungexp package (or output "out"))
|
(ungexp package (or output "out"))
|
||||||
|
@ -671,7 +671,13 @@ if not found."
|
||||||
(return (find-among-inputs inputs)))))
|
(return (find-among-inputs inputs)))))
|
||||||
((? string? item)
|
((? string? item)
|
||||||
(mlet %store-monad ((refs (references* item)))
|
(mlet %store-monad ((refs (references* item)))
|
||||||
(return (find-among-store-items refs)))))))
|
(return (find-among-store-items refs))))
|
||||||
|
(item
|
||||||
|
;; XXX: ITEM might be a 'computed-file' or anything like that, in
|
||||||
|
;; which case we don't know what to do. The fix may be to check
|
||||||
|
;; references once ITEM is compiled, as proposed at
|
||||||
|
;; <https://bugs.gnu.org/29927>.
|
||||||
|
(return #f)))))
|
||||||
|
|
||||||
(anym %store-monad
|
(anym %store-monad
|
||||||
entry-lookup-package (manifest-entries manifest)))
|
entry-lookup-package (manifest-entries manifest)))
|
||||||
|
|
Loading…
Reference in New Issue