GNU bug report logs - #47911
Improving the package outputs UI

Previous Next

Package: guix;

Reported by: Leo Famulari <leo <at> famulari.name>

Date: Tue, 20 Apr 2021 17:39:02 UTC

Severity: wishlist

To reply to this bug, email your comments to 47911 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Tue, 20 Apr 2021 17:39:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Leo Famulari <leo <at> famulari.name>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Tue, 20 Apr 2021 17:39:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: bug-guix <at> gnu.org
Subject: Package outputs should be described in the UI
Date: Tue, 20 Apr 2021 13:38:31 -0400
At least once a month I have to help somebody on IRC who didn't notice
that our Git package is split into multiple outputs.

They can't find `git send-email`, and the Guix package UI doesn't make
this clear enough.

I had the idea that package outputs besides 'out' and 'debug' should
have very brief descriptions that are exposed in `guix show` and `guix
search` and the `guix package` equivalents.

So, maybe it would look like this:

------
$ guix show git
name: git
version: 2.31.1
outputs: out send-email svn credential-netrc credential-libsecret subtree gui
  * send-email: Tools for an email-based Git workflow
  * svn: Provides git-svn, for bidirectional operation between Subversion and Git repositories
  * credential-libsecret: Whatever that is
  * subtree: Who knows?
  * gui: A graphical interface for exploring a Git repository
  * etc...
systems: x86_64-linux i686-linux
dependencies: asciidoc-py3 <at> 9.0.1 bash-minimal <at> 5.0.16 bash <at> 5.0.16 curl <at> 7.74.0 docbook-xsl <at> 1.79.1 expat <at> 2.2.9 gettext-minimal <at> 0.20.1 glib <at> 2.62.6 libsecret <at> 0.20.4 openssl <at> 1.1.1i pcre2 <at> 10.35
+ perl-authen-sasl <at> 2.16 perl-cgi <at> 4.51 perl-io-socket-ssl <at> 2.066 perl-net-smtp-ssl <at> 1.04 perl-term-readkey <at> 2.38 perl <at> 5.30.2 pkg-config <at> 0.29.2 python <at> 3.8.2 subversion <at> 1.14.1 tcl <at> 8.6.10 tk <at> 8.6.10
+ xmlto <at> 0.0.28 zlib <at> 1.2.11
location: gnu/packages/version-control.scm:173:2
homepage: https://git-scm.com/
license: GPL 2
synopsis: Distributed version control system  
description: Git is a free distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
------

The output of `guix show` and `guix search` are in recutils format, and
we'd need to make sure that these new UI elements continued that
valuable tradition.




Severity set to 'wishlist' from 'normal' Request was from Leo Famulari <leo <at> famulari.name> to control <at> debbugs.gnu.org. (Tue, 20 Apr 2021 17:40:02 GMT) Full text and rfc822 format available.

Changed bug title to 'Improving the package outputs UI' from 'Package outputs should be described in the UI' Request was from Leo Famulari <leo <at> famulari.name> to control <at> debbugs.gnu.org. (Tue, 20 Apr 2021 17:42:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Tue, 20 Apr 2021 17:44:01 GMT) Full text and rfc822 format available.

Message #12 received at 47911 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: 47911 <at> debbugs.gnu.org
Subject: Re: Improving the package outputs UI
Date: Tue, 20 Apr 2021 13:43:52 -0400
Another idea I had is to make Guix accept the concatenation of
packagename-output in the UI.

For example, `guix install git-send-email`, instead of `git:send-email`.

But maybe that is going too far, I'm not sure.

By the way, the #guix IRC discussion was here

https://logs.guix.gnu.org/guix/2021-03-11.log#194558




Information forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Tue, 20 Apr 2021 19:44:02 GMT) Full text and rfc822 format available.

Message #15 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Bone Baboon <bone.baboon <at> disroot.org>
To: Leo Famulari <leo <at> famulari.name>
Cc: bug-guix <at> gnu.org, 47911 <at> debbugs.gnu.org
Subject: Re: bug#47911: Package outputs should be described in the UI
Date: Tue, 20 Apr 2021 15:42:17 -0400
Leo Famulari writes:

> At least once a month I have to help somebody on IRC who didn't notice
> that our Git package is split into multiple outputs.
>
> They can't find `git send-email`, and the Guix package UI doesn't make
> this clear enough.
>
> I had the idea that package outputs besides 'out' and 'debug' should
> have very brief descriptions that are exposed in `guix show` and `guix
> search` and the `guix package` equivalents.

I ran into this issue when I started using Guix.

I like this idea.




Information forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Tue, 20 Apr 2021 19:44:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Tue, 20 Apr 2021 21:55:02 GMT) Full text and rfc822 format available.

Message #21 received at 47911 <at> debbugs.gnu.org (full text, mbox):

From: Ludovic Courtès <ludo <at> gnu.org>
To: Leo Famulari <leo <at> famulari.name>
Cc: 47911 <at> debbugs.gnu.org
Subject: Re: bug#47911: Package outputs should be described in the UI
Date: Tue, 20 Apr 2021 23:54:29 +0200
Hi,

Leo Famulari <leo <at> famulari.name> skribis:

> At least once a month I have to help somebody on IRC who didn't notice
> that our Git package is split into multiple outputs.
>
> They can't find `git send-email`, and the Guix package UI doesn't make
> this clear enough.

Just a side note: our ‘git’ package uses outputs in a rather unusual
way.  There are other packages that provide different features in
different outputs, but the majority of multiple-output packages have the
“standard” outputs: “doc”, “bin”, “lib”, “debug”.

So maybe we could look at the ‘git’ package (can it be split into
several packages? would that help?) in addition to the UI, and also make
sure the UI is optimized for the most frequent cases.

Ludo’.




Information forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Tue, 20 Apr 2021 22:05:01 GMT) Full text and rfc822 format available.

Message #24 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Tobias Geerinckx-Rice <me <at> tobias.gr>
To: Leo Famulari <leo <at> famulari.name>
Cc: bug-guix <at> gnu.org, 47911 <at> debbugs.gnu.org
Subject: Re: bug#47911: Improving the package outputs UI
Date: Wed, 21 Apr 2021 00:05:05 +0200
[Message part 1 (text/plain, inline)]
Leo Famulari writes:
> Another idea I had is to make Guix accept the concatenation of
> packagename-output in the UI.

I'm firmly against this (but read on :-)

>
> For example, `guix install git-send-email`, instead of 
> `git:send-email`.
>
> But maybe that is going too far, I'm not sure.

I think it is, but the intention is good.

Instead, Guix could suggest (‘did you mean...?’) like it does for 
commands.

 ~ λ guix install git-send-email
 guix install: error: git-send-email: unknown package
 hint: Did you mean one of:
 git:send-email

Kind regards,

T G-R
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Tue, 20 Apr 2021 22:05:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Wed, 21 Apr 2021 00:54:02 GMT) Full text and rfc822 format available.

Message #30 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Tobias Geerinckx-Rice <me <at> tobias.gr>
Cc: bug-guix <at> gnu.org, 47911 <at> debbugs.gnu.org
Subject: Re: bug#47911: Improving the package outputs UI
Date: Tue, 20 Apr 2021 20:52:51 -0400
[Message part 1 (text/plain, inline)]
On Wed, Apr 21, 2021 at 12:05:05AM +0200, Tobias Geerinckx-Rice wrote:
> Leo Famulari writes:
> > Another idea I had is to make Guix accept the concatenation of
> > packagename-output in the UI.
> 
> I'm firmly against this (but read on :-)
> 
> > For example, `guix install git-send-email`, instead of `git:send-email`.
> > 
> > But maybe that is going too far, I'm not sure.
> 
> I think it is, but the intention is good.

It's definitely pie-in-the-sky daydreaming :)

> Instead, Guix could suggest (‘did you mean...?’) like it does for commands.
> 
>  ~ λ guix install git-send-email
>  guix install: error: git-send-email: unknown package
>  hint: Did you mean one of:
>  git:send-email

I think that's a better idea.
[signature.asc (application/pgp-signature, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Wed, 21 Apr 2021 00:54:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-guix <at> gnu.org:
bug#47911; Package guix. (Wed, 21 Apr 2021 01:00:01 GMT) Full text and rfc822 format available.

Message #36 received at 47911 <at> debbugs.gnu.org (full text, mbox):

From: Leo Famulari <leo <at> famulari.name>
To: Ludovic Courtès <ludo <at> gnu.org>
Cc: 47911 <at> debbugs.gnu.org
Subject: Re: bug#47911: Package outputs should be described in the UI
Date: Tue, 20 Apr 2021 20:59:10 -0400
On Tue, Apr 20, 2021 at 11:54:29PM +0200, Ludovic Courtès wrote:
> Leo Famulari <leo <at> famulari.name> skribis:
> > They can't find `git send-email`, and the Guix package UI doesn't make
> > this clear enough.
> 
> Just a side note: our ‘git’ package uses outputs in a rather unusual
> way.

That's true. And I don't have any other packages in mind, really.

I first had this idea after roptat was talking about adding ocaml
bindings for z3 [0]. He wrote:

"it builds the bindings in a separate output, instead of a separate
package, because they're part of the same source, and it doesn't look
like it's possible to build them separately
[...]
I'm just not very happy it's part of the same package, because it's less
discoverable vs ocaml-z3"

So, I do think there is room for improvement to this aspect of the UI.

> There are other packages that provide different features in
> different outputs, but the majority of multiple-output packages have the
> “standard” outputs: “doc”, “bin”, “lib”, “debug”.

Right, and it would not be worthwhile to add anything to the UI for
these.

The 'output synopsis' would only be printed in the UI if we actually
defined a synopsis for it. That way, we wouldn't have 16000 lines of
noise like "debug symbols for foo" in `guix package --search=.`

> So maybe we could look at the ‘git’ package (can it be split into
> several packages? would that help?) in addition to the UI, and also make
> sure the UI is optimized for the most frequent cases.

Good question. The Git package is super complicated, so I'm not feeling
very motivated to think about how to rewrite it :)

[0] https://logs.guix.gnu.org/guix/2021-03-11.log#194242
https://issues.guix.gnu.org/46329




This bug report was last modified 3 years and 12 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.