Subject: Re: bug#43159: [PATCHES v2] scripts: Use 'define-command' and have 'guix help' use that.

From: Ricardo Wurmus <[email-masked]>
Date: Thu, 10 Sep 2020 12:55:04 +0200

I’m a bit late, but I’m very happy to see that “for developers” has
become “for development”!

Ludovic Courtès <[email-masked]> writes:

> Ludovic Courtès <[email-masked]> skribis:
>
>> Here’s a v2 of the patches, where I tried to take your feedback into
>> account.  Changes:
>>
>>   • Categories that appear in uses of ‘define-command’ are now validated
>>     at macro-expansion time.

Neat!

>>   • (guix scripts) contains an alist of the known categories and
>>     ‘show-help’ traverses it.

Knowing that guile-config exists for automatically generating help
screens, configuration files, command line options, and all that I
wonder if there’s anything here that could become part of guile-config
and move out of Guix.

I had been in that situation myself where I felt that guile-config may
not be a great fit for my help texts because of minor quibbles about the
format or the way things are presented by default.  In the end I decided
to use guile-config, because I prefer to have this handled by someone
else who keeps thinking about the problems relating to argument parsing,
configuration files, and help texts.

It may not be a great fit for Guix now, but I wonder if it could.  In
the long run I think it would be good for Guix to become a little less
special — no matter if that’s monad macros, records, argparsing, or
configuration files.

This is not a recommendation either way.  I just wonder if in the long
term we could benefit from moving all this to a separate package.

>>   • Changed the label for development commands to “commands for
>>     development”, and changed “advanced” to “plumbing”.
>>
>>   • Added a “packaging” category.
>>
>>   • Fixed the typos you reported.
>
> I pushed this v2 as 3794ce93be8216d8378df7b808ce7f53b1e05a53.

Excellent!  Thank you!

-- 
Ricardo