From: ludo@gnu.org (Ludovic Courtès)
To: Alex Kost <alezost@gmail.com>
Cc: guix-devel <guix-devel@gnu.org>
Subject: Re: "M-x guix" - magit-like interface for guix commands
Date: Tue, 25 Aug 2015 23:12:13 +0200 [thread overview]
Message-ID: <87mvxfgjiq.fsf@gnu.org> (raw)
In-Reply-To: <87wpww8t9h.fsf@gmail.com> (Alex Kost's message of "Sat, 15 Aug 2015 18:29:30 +0300")
Alex Kost <alezost@gmail.com> skribis:
> Thompson, David (2015-08-14 17:40 +0300) wrote:
>
>> On Fri, Aug 14, 2015 at 4:19 AM, Alex Kost <alezost@gmail.com> wrote:
>>> Hello, I've pushed 'wip-emacs-popup-ui' branch with emacs magit-like
>>> (popup) interface for guix commands.
>>>
>>> In short, here is how it looks like:
>>>
>>> "M-x guix": <http://i.imgur.com/qsWNNg8.png>
>>> and pressing "b" there ("build"): <http://i.imgur.com/jqE4TEr.png>
>>>
>>> There are some things to do, but it is ready for trying. So if anyone
>>> wants to look at it:
>>>
>>> 1. Set up emacs for using your guix repo directory -
>>> see (info "(guix) Emacs Initial Setup")
>>>
>>> 2. Switch to 'wip-emacs-popup-ui' branch and "make" it.
>>>
>>> 3. Start emacs and run "M-x guix".
>>>
>>> Oh, and it requires 'magit-popup' library which is a part of Magit 2.1.0.
>>
>> This looks awesome! I love Magit's interface. Though, I do wonder if
> I like it too :-)
+1, excellent idea!
>> depending on Magit is too heavy a dependency.
>
> It does not depend on the whole Magit but only on a single
> "magit-popup.el" file which may be installed separately (available on
> Melpa, for example). So potentially we can make a package just for this
> library and use it.
>
> However, according to its manual¹, it will be superseded by a general
> library which will not be a part of magit, so eventually it will be a
> light-weight dependency I think.
>
> Anyway, we already have a heavy dependency for Emacs interface (Geiser).
Yes, but Geiser is an “obvious” one that cannot be avoided.
I haven’t tested wip-emacs-popup-ui yet because I have yet to switch to
Magit 2 (I’m slightly afraid of breaking my workflow, maybe unreasonably
so!).
That said, since the functionality is in a separate file, people who
don’t have magit-popup.el can just choose to not use M-x guix while
still being available to use the other features, right?
>> I noticed an 'e' for 'environment'. I imagine that's just a placeholder. ;)
>
> Not really, all commands (including 'environment') are ready to use.
> You just specify the options you want in the magit manner and then you run
> "Execute" action. And the specified command is executed in Guix REPL.
>
> Specifically for 'environment' it may lead to a very interesting result
> as it will spawn an external process, unless --dry-run or --search-paths
> options were specified. But still it will… let's say… work, but only if
> a user is brave enough to try it ;)
:-)
It Would Be Nice to have, say, M-x guix-compile-in-environment, which
would be like M-x compile but just run the thing in ‘guix environment’.
Just thought I’d mention this in passing. ;-)
> Also along with "execute in REPL" action I'm going to add 2 more default
> actions for each command:
>
> - "execute in shell" — this will be a complete alternative to writing a
> full command manually in a shell buffer.
>
> - "copy the command line" — i.e., to put the specified command arguments
> into kill ring, so later a user could do with it whatever he wants.
(he or she)
Sounds like more exciting stuff ahead!
Thanks for your creativity & hack power!
Ludo’.
next prev parent reply other threads:[~2015-08-25 21:12 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-14 8:19 "M-x guix" - magit-like interface for guix commands Alex Kost
2015-08-14 14:40 ` Thompson, David
2015-08-15 15:29 ` Alex Kost
2015-08-25 21:12 ` Ludovic Courtès [this message]
2015-08-26 11:35 ` Alex Kost
2015-08-25 21:14 ` Ludovic Courtès
2015-08-26 11:05 ` Alex Kost
2015-08-28 9:37 ` Ludovic Courtès
2015-08-28 20:08 ` Alex Kost
2015-08-29 16:01 ` Ludovic Courtès
2015-08-30 9:35 ` Alex Kost
2015-08-30 11:48 ` Ludovic Courtès
2015-08-30 15:28 ` Alex Kost
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87mvxfgjiq.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=alezost@gmail.com \
--cc=guix-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).