Message ID | 20200722214018.32353-1-ludo@gnu.org |
---|---|
Headers | show |
Series | Printing a more concise build plan | expand |
Hello Guix! Thoughts on this change? I think it’s a good idea but I’d be happy to hear what people think! https://issues.guix.gnu.org/42481 Ludo’. Ludovic Courtès <ludo@gnu.org> skribis: > Hello Guix! > > These patches implement a suggestion Pierre made a while back: > showing by default fewer details about what will/would be built > or downloaded, and omitting info about grafts and hooks. > > The verbosity level here is controlled via the existing > ‘--verbosity’ or ‘-v’ flag (which thus now control two things). > > Here are examples of the result: > > $ ./pre-inst-env guix system disk-image --target=i586-pc-gnu gnu/system/examples/bare-hurd.tmpl -n --no-grafts > substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% > The following derivations would be built: > /gnu/store/y2inlprxbigqvknm5qwjwsqgljxfbri4-disk-image.drv > /gnu/store/gclxh7i8smp71hz0p7wcj6qkf377wigy-image-dir.drv > /gnu/store/21fin1j5pnjzfwbc70wdpzl3iyjym8xp-genimage.cfg.drv > /gnu/store/aqcziad6ghfaainjibpdfypc8m2rr1vm-partition.img.drv > /gnu/store/484d4fd9q9827bc09ia8bi1dgxl8gpwn-grub.cfg.drv > /gnu/store/nnldmy339w9xxnybir48w14yz2xk0pmx-system.drv > > [...] > > /gnu/store/ddxz08xvasphckdralifb624y3c7hrkx-rc.drv > /gnu/store/kq9qvn0m063m02cxf4kjipkf6x8vbvip-profile.drv > /gnu/store/y9if6nrykcqfnzxvb4cci2nzhmz1ipx5-parameters.drv > /gnu/store/w09j0p6126qcacylb455m5dn008yi04g-module-import.drv > 49.9 MB would be downloaded > > > Same with grafts: > > $ ./pre-inst-env guix system disk-image --target=i586-pc-gnu gnu/system/examples/bare-hurd.tmpl -n > 36.2 MB would be downloaded > > > With ‘guix package’: > > $ ./pre-inst-env guix install vim-full krita -n > The following packages would be installed: > vim-full 8.2.1145 > krita 4.2.9 > > 76.9 MB would be downloaded > $ ./pre-inst-env guix install vim-full krita -n --no-grafts > The following packages would be installed: > vim-full 8.2.1145 > krita 4.2.9 > > The following derivation would be built: > /gnu/store/shf0anw8l0y9hg4l8qp1fym4bvwq5kh9-profile.drv > 76.9 MB would be downloaded > $ ./pre-inst-env guix install inkscape hugin -n > The following package would be upgraded: > inkscape (dependencies or package changed) > > The following package would be installed: > hugin 2019.2.0 > > The following derivation would be built: > /gnu/store/lsi56ap8lzchfy8y76y7wirzfiqvb3ca-hugin-2019.2.0.drv > 46.2 MB would be downloaded > > > The current behavior is obtain with ‘-v2’, which remains the > default for ‘guix build’: > > $ ./pre-inst-env guix build inkscape hugin -n > The following derivation would be built: > /gnu/store/lsi56ap8lzchfy8y76y7wirzfiqvb3ca-hugin-2019.2.0.drv > 46.2 MB would be downloaded: > /gnu/store/3jvjmwm0srgxxjwngv28bif8l4ksfbnp-autotrace-0.40.0-20190624.59 > /gnu/store/gg36g9h2nzmq4dzrcr21ndb09nybqys0-inkscape-1.0 > /gnu/store/n94n0ggdhck5a2prsd1r468x3p6i68p4-enblend-enfuse-4.2 > /gnu/store/89rj5fqcg48afgk99639ds602pgf92k4-cmake-minimal-3.16.5 > /gnu/store/0i4h5cf1a71pj319svzz88g2z07cvdk3-wxwidgets-3.0.5.1 > /gnu/store/bwz9f0lg9lxscj6jfcgxmzqng3s1f1n3-vigra-1.11.1 > > It’s also possible to use ‘-v0’ now. > > How does that sound? > > Personally, I’m find it a bit disconcerting that so few is displayed > when substitutes are available, but it also feels more “lightweight” > this way. I really like that what would be built appears clearly, > whereas now you have to scroll up possibly several pages to find > that info, especially upon ‘guix upgrade’. > > Feedback welcome! > > Ludo’. > > Ludovic Courtès (2): > ui: Add #:verbosity to 'show-what-to-build'. > scripts: Pass #:verbosity to 'build-notifier'. > > guix/scripts/archive.scm | 2 + > guix/scripts/build.scm | 2 + > guix/scripts/copy.scm | 2 + > guix/scripts/deploy.scm | 4 +- > guix/scripts/environment.scm | 2 + > guix/scripts/pack.scm | 2 + > guix/scripts/package.scm | 2 + > guix/scripts/pull.scm | 2 + > guix/scripts/system.scm | 11 ++- > guix/ui.scm | 175 ++++++++++++++++++++++------------- > 10 files changed, 135 insertions(+), 69 deletions(-)
Hey Ludo, > Thoughts on this change? > > I think it’s a good idea but I’d be happy to hear what people think! Most of the times, I'm reading the build plan only for one purpose, stop the command if I'm going to build (too many) things. Trying to think more like a newcomer (recent DistroTube video helps in that matter), I feel like information such as grafts and profile hooks are way too low level. So this serie looks really fine to me. Small digression, something that troubles me in the aforementioned video is that many things were apparently built. I don't know if besides improving our CI, we could do other things, such as warn with more insistence if the Guix version is too old? Thanks, Mathieu
Ludovic Courtès <ludo@gnu.org> writes: > Hello Guix! > > Thoughts on this change? > > I think it’s a good idea but I’d be happy to hear what people think! > > https://issues.guix.gnu.org/42481 I think it looks great. It's good that 'guix build' retains the previous verbosity, and that 'guix upgrade' et.al still prints the profile derivation, but omits the uninteresting stuff. LGTM!
Hi! Mathieu Othacehe <othacehe@gnu.org> skribis: > Most of the times, I'm reading the build plan only for one purpose, stop > the command if I'm going to build (too many) things. > > Trying to think more like a newcomer (recent DistroTube video helps in that > matter), I feel like information such as grafts and profile hooks are > way too low level. Yeah, that’s also my feeling. Marius Bakke <marius@gnu.org> skribis: > I think it looks great. It's good that 'guix build' retains the > previous verbosity, and that 'guix upgrade' et.al still prints the > profile derivation, but omits the uninteresting stuff. LGTM! Alright, pushed as 898e6d0a07e4260600d0876d8d1f551ac8b647f9, thanks! Ludo’.