summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2022-09-15 08:51:39 +0200
committerLudovic Courtès <ludo@gnu.org>2022-09-20 19:24:31 +0200
commit818220f1ccd57d14a62f07489b0e5e21837bb3dd (patch)
treebcfc81edf22a6d577b712c00c440959335cb4431
parent8084e3bdb3c22b735d3e8df282a3bcb0a7ca6a59 (diff)
downloadguix-818220f1ccd57d14a62f07489b0e5e21837bb3dd.tar.gz
weather: Actually show the weather.
* guix/scripts/weather.scm (report-server-coverage): Show a weather icon.
-rw-r--r--guix/scripts/weather.scm10
1 files changed, 9 insertions, 1 deletions
diff --git a/guix/scripts/weather.scm b/guix/scripts/weather.scm
index b7d8165262..f46c11b1a5 100644
--- a/guix/scripts/weather.scm
+++ b/guix/scripts/weather.scm
@@ -205,7 +205,6 @@ In case ITEMS is an empty list, return 1 instead."
                     #:make-progress-reporter
                     (lambda* (total #:key url #:allow-other-keys)
                       (progress-reporter/bar total)))))
-    (format #t (highlight "~a~%") server)
     (let ((obtained  (length narinfos))
           (requested (length items))
           (missing   (lset-difference string=?
@@ -224,6 +223,15 @@ In case ITEMS is an empty list, return 1 instead."
                                 (coloring-procedure (color BOLD RED)))
                                (else
                                 highlight))))
+          (format #t (highlight "~a ~a~%") server
+                  ;; This requires a Unicode-capable encoding, which we
+                  ;; restrict to UTF-8 for simplicity.
+                  (if (string=? (port-encoding (current-output-port)) "UTF-8")
+                      (cond ((> ratio 0.80) "☀")
+                            ((< ratio 0.50) "⛈")
+                            (else           "⛅"))
+                      ""))
+
           (format #t
                   (colorize (G_ "  ~,1f% substitutes available (~h out of ~h)~%"))
                   (* 100. ratio)