guix-devel
[Top][All Lists]
Advanced

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

Reducing default verbosity


From: Ricardo Wurmus
Subject: Reducing default verbosity
Date: Tue, 5 Dec 2017 14:33:01 +0100
User-agent: mu4e 0.9.18; emacs 25.3.1

Hi Guix,

for the release after 0.14.0 I’d like us to implement changes to the
default verbosity of Guix commands.

Here are a few things that I think would make for better defaults:

* Reduce package downloads from three lines to one line.  The
  “Downloading URL” line is only important when things go wrong.
* Reduce precision in percentages.  The extra digit and the period
  contribute to visual noise.
* Widen progress bar, so that it changes more quickly.

  Before:
  
    Downloading https://berlin.guixsd.org/nar/gzip/r43434523452345…-zlib-1.2.11…
     zlib-1.2.11    151KiB      12.6MiB/s  00:00 [###############] 100.0%

    Downloading https://berlin.guixsd.org/nar/gzip/rlol…-libpng-1.6.29…
     libpng-1.6.29  377KiB      10.6MiB/s  00:00 [#############  ]  90.0%

  After:

    zlib-1.2.11     151KiB  00:00 [##############################] 100%  
12.6MiB/s
    libpng-1.6.29   377KiB  00:00 [#########################     ]  90%  
10.6MiB/s

* Redirect all build output to log files; as we can’t generally estimate
  progress I’d use a spinner and maybe display the name of the current
  build phase and the number of build phases that are left.

  Building openldap-2.4.45 (2/6)  [‐----->-----------------------]
  Building openldap-2.4.45 (2/6)  [‐-------------->--------------]
  Building openldap-2.4.45 (3/6)  [‐----------------------->-----]
  Building openldap-2.4.45 (4/6)  [‐-----------------<-----------]
  Building openldap-2.4.45 (4/6)  [-------------<----------------]

  There are some pretty single character unicode spinners here:
    https://github.com/pmonks/spinner/blob/master/src/spinner/core.clj

* Remove double messages that are printed by the daemon and the Guix
  client, e.g. hash mismatches.  Here’s an example of this:

--8<---------------cut here---------------start------------->8---
rekado in ~: guix build guile-sjson
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 
100.0%
substitute: updating list of substitutes from 'https://mirror.hydra.gnu.org'... 
100.0%
@ build-started 
/gnu/store/f4a56cwcb45mkd8vgpjprx06rs4vqhws-sjson-0.2.1.tar.gz.drv - 
x86_64-linux 
/var/log/guix/drvs/f4//a56cwcb45mkd8vgpjprx06rs4vqhws-sjson-0.2.1.tar.gz.drv.bz2

Starting download of 
/gnu/store/59k6bgh00312a0vnha65hzs45b6z6vpq-sjson-0.2.1.tar.gz
>From https://dustycloud.org/misc/sjson-0.2.1.tar.gz...
 ....1.tar.gz  90KiB                757KiB/s 00:00 [####################] 100.0%
sha256 hash mismatch for output path 
`/gnu/store/59k6bgh00312a0vnha65hzs45b6z6vpq-sjson-0.2.1.tar.gz'
  expected: 0mzmapln79vv10qxaggz9qwcdbag3jnrj19xx8bgkmxss8h03sv3
  actual:   1mzmapln79vv10qxaggz9qwcdbag3jnrj19xx8bgkmxss8h03sv3
@ build-failed 
/gnu/store/f4a56cwcb45mkd8vgpjprx06rs4vqhws-sjson-0.2.1.tar.gz.drv - 1 sha256 
hash mismatch for output path 
`/gnu/store/59k6bgh00312a0vnha65hzs45b6z6vpq-sjson-0.2.1.tar.gz'
  expected: 0mzmapln79vv10qxaggz9qwcdbag3jnrj19xx8bgkmxss8h03sv3
  actual:   1mzmapln79vv10qxaggz9qwcdbag3jnrj19xx8bgkmxss8h03sv3
cannot build derivation 
`/gnu/store/l14gbyb0n7wb2j1ff7ixqah93afzjxia-guile-sjson-0.2.1.drv': 1 
dependencies couldn't be built
guix build: error: build failed: build of 
`/gnu/store/l14gbyb0n7wb2j1ff7ixqah93afzjxia-guile-sjson-0.2.1.drv' failed
rekado in ~: 
--8<---------------cut here---------------end--------------->8---

What do you think?

-- 
Ricardo



reply via email to

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