~ chicken-core (chicken-5) 138a16f20a97728d9da2b5e590dc5e0d0c7c15e3
commit 138a16f20a97728d9da2b5e590dc5e0d0c7c15e3
Author: Evan Hanson <evhan@foldling.org>
AuthorDate: Wed Jul 25 20:17:33 2018 +1200
Commit: Peter Bex <peter@more-magic.net>
CommitDate: Sun Jul 29 19:58:30 2018 +0200
Allow "chicken-status -list" to be used with egg name arguments
This allows `chicken-status -list NAME ...` to generate output for just
the named eggs (or the eggs specified by a pattern with "-match"), like
we do with "-c" and "-f".
The default behaviour, listing all installed eggs, remains the same when
no name arguments are given.
Signed-off-by: Peter Bex <peter@more-magic.net>
diff --git a/chicken-status.scm b/chicken-status.scm
index 7a0a9b2d..e361fc86 100644
--- a/chicken-status.scm
+++ b/chicken-status.scm
@@ -185,13 +185,13 @@
eggs)
string<?)))
- (define (dump-installed-versions)
+ (define (dump-installed-versions eggs)
(for-each
(lambda (egg)
(let ((version (get-egg-property (read-info egg) 'version)))
(pp (cons (string->symbol egg)
(if version (list version) '())))))
- (gather-eggs)))
+ eggs))
(define (usage code)
(print #<<EOF
@@ -225,15 +225,15 @@ EOF
(cut print "-components cannot be used with -list."))
(exit 1))
(cached (list-cached-eggs))
- (dump (dump-installed-versions))
(else
- (let ((eggs (filter-eggs pats mtch)))
- (if (null? eggs)
- (display "(none)\n" (current-error-port))
- ((cond (comps list-installed-components)
- (files list-installed-files)
- (else list-installed-eggs))
- eggs)))))
+ (let ((eggs (filter-eggs pats mtch)))
+ (if (null? eggs)
+ (display "(none)\n" (current-error-port))
+ ((cond (dump dump-installed-versions)
+ (files list-installed-files)
+ (comps list-installed-components)
+ (else list-installed-eggs))
+ eggs)))))
(let ((arg (car args)))
(cond ((member arg '("-help" "-h" "--help"))
(usage 0))
Trap