guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

05/05: refresh: Add '--list-updaters' option.


From: Alex Kost
Subject: 05/05: refresh: Add '--list-updaters' option.
Date: Tue, 27 Oct 2015 18:58:45 +0000

alezost pushed a commit to branch master
in repository guix.

commit 6ffa706b6d80265b2fd244484b42492a71a2ef31
Author: Alex Kost <address@hidden>
Date:   Thu Oct 22 10:51:17 2015 +0300

    refresh: Add '--list-updaters' option.
    
    * guix/scripts/refresh.scm (list-updaters-and-exit): New procedure.
      (%options, show-help): Add '--list-updaters' option.
    * doc/guix.texi (Invoking guix refresh): Document it.
---
 doc/guix.texi            |    4 ++++
 guix/scripts/refresh.scm |   16 ++++++++++++++++
 2 files changed, 20 insertions(+), 0 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 20bf284..1bb7125 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -4305,6 +4305,10 @@ be used when passing @command{guix refresh} one or more 
package names:
 
 @table @code
 
address@hidden --list-updaters
address@hidden -L
+List available updaters and exit (see @option{--type} above.)
+
 @item --list-dependent
 @itemx -l
 List top-level dependent packages that would need to be rebuilt as a
diff --git a/guix/scripts/refresh.scm b/guix/scripts/refresh.scm
index 6f7ca4a..a66b3f9 100644
--- a/guix/scripts/refresh.scm
+++ b/guix/scripts/refresh.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <address@hidden>
 ;;; Copyright © 2013 Nikita Karetnikov <address@hidden>
 ;;; Copyright © 2014 Eric Bavier <address@hidden>
+;;; Copyright © 2015 Alex Kost <address@hidden>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -69,6 +70,9 @@
         (option '(#\t "type") #t #f
                 (lambda (opt name arg result)
                   (alist-cons 'updater (string->symbol arg) result)))
+        (option '(#\L "list-updaters") #f #f
+                (lambda args
+                   (list-updaters-and-exit)))
         (option '(#\l "list-dependent") #f #f
                 (lambda (opt name arg result)
                   (alist-cons 'list-dependent? #t result)))
@@ -112,6 +116,8 @@ specified with `--select'.\n"))
   (display (_ "
   -t, --type=UPDATER     restrict to updates from UPDATER--e.g., 'gnu'"))
   (display (_ "
+  -L, --list-updaters    list available updaters and exit"))
+  (display (_ "
   -l, --list-dependent   list top-level dependent packages that would need to
                          be rebuilt as a result of upgrading PACKAGE..."))
   (newline)
@@ -149,6 +155,16 @@ specified with `--select'.\n"))
           (eq? name (upstream-updater-name updater)))
         %updaters))
 
+(define (list-updaters-and-exit)
+  "Display available updaters and exit."
+  (format #t (_ "Available updaters:~%"))
+  (for-each (lambda (updater)
+              (format #t "- ~a: ~a~%"
+                      (upstream-updater-name updater)
+                      (_ (upstream-updater-description updater))))
+            %updaters)
+  (exit 0))
+
 (define* (update-package store package updaters
                          #:key (key-download 'interactive))
   "Update the source file that defines PACKAGE with the new version.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]