mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 05:48:07 -05:00
weather: Allow for multiple '--manifest' options.
* guix/scripts/weather.scm (guix-weather)[package-list]: Account for all the 'manifest entries in OPTS. * doc/guix.texi (Invoking guix weather): Document it.
This commit is contained in:
parent
71bb485541
commit
2843fed0e9
2 changed files with 15 additions and 10 deletions
|
@ -10830,6 +10830,9 @@ specified in @var{file}. @var{file} must contain a @dfn{manifest}, as
|
|||
with the @code{-m} option of @command{guix package} (@pxref{Invoking
|
||||
guix package}).
|
||||
|
||||
This option can be repeated several times, in which case the manifests
|
||||
are concatenated.
|
||||
|
||||
@item --coverage[=@var{count}]
|
||||
@itemx -c [@var{count}]
|
||||
Report on substitute coverage for packages: list packages with at least
|
||||
|
|
|
@ -499,17 +499,19 @@ (define* (report-package-coverage server packages systems
|
|||
(define (guix-weather . args)
|
||||
(define (package-list opts)
|
||||
;; Return the package list specified by OPTS.
|
||||
(let ((file (assoc-ref opts 'manifest))
|
||||
(base (filter-map (match-lambda
|
||||
(('argument . spec)
|
||||
(specification->package spec))
|
||||
(_
|
||||
#f))
|
||||
opts)))
|
||||
(if (and (not file) (null? base))
|
||||
(let ((files (filter-map (match-lambda
|
||||
(('manifest . file) file)
|
||||
(_ #f))
|
||||
opts))
|
||||
(base (filter-map (match-lambda
|
||||
(('argument . spec)
|
||||
(specification->package spec))
|
||||
(_
|
||||
#f))
|
||||
opts)))
|
||||
(if (and (null? files) (null? base))
|
||||
(all-packages)
|
||||
(append base
|
||||
(if file (load-manifest file) '())))))
|
||||
(append base (append-map load-manifest files)))))
|
||||
|
||||
(with-error-handling
|
||||
(parameterize ((current-terminal-columns (terminal-columns))
|
||||
|
|
Loading…
Reference in a new issue