Subject: Re: bug#22587: ‘guix edit’ &‘M-x guix-edit' typo, rename, & mode change

From: [email-masked] (Ludovic Courtès)
Date: Mon, 08 Feb 2016 16:30:39 +0100

Alex Kost <[email-masked]> skribis:

> myglc2 (2016-02-07 21:04 +0300) wrote:

[...]

>> Calling these functions 'guix edit' and 'M-x guix-edit' implies that the
>> user will be able to modify the recipe, but this is not actually the
>> case. The functions should be given a more informative and accurate
>> name, such as: 'guix view', 'guix inspect', or 'guix examine'.
>
> Along with the package recipes that come with Guix, a user can also have
> his/her own packages (specified using GUIX_PACKAGE_PATH env var), and
> "guix edit my-super-package" opens a user's file with this package.  It
> is highly likely that this file is editable, so "guix edit" is a perfect
> name in this case I think.  IMO it's a user responsibility to understand
> what files can be edited and what cannot.

I sympathize with the frustration of myglc2, but I agree with you Alex.

> But I agree that this may be confusing, so maybe we should clarify the
> manual to explain in (info "(guix) Invoking guix edit") that store files
> must not be edited.

Yes.  Can one of you propose a way to phrase it?

I also had in mind that ‘someday’ we could have:

  guix edit --clone foo

which would automatically open, say,
~/.config/guix/personal/packages.scm with a template like:

  (define-module (personal packages)
    #:use-module (guix packages)
    #:use-module (gnu packages foo))

  (define-public my-foo
    (package
      (inherit foo)
      (name "foo-personal")))

It’s a bit of work, but it’d be nice.

Ludo’.