[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ANN] Emacs-Guix 0.3.4

From: Alex Kost
Subject: Re: [ANN] Emacs-Guix 0.3.4
Date: Sat, 30 Dec 2017 23:51:59 +0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux)

Oleg Pykhalov (2017-12-29 20:44 +0300) wrote:

> Hello Alex, Guix
> Alex Kost <address@hidden> writes:
>> Hello, Emacs-Guix (Emacs interface for GNU Guix) version 0.3.4 has been
>> released.  It may be installed with "guix package -i emacs-guix".
>> The main new features are:
> By the way, 'guix-edit' supports a new behavior:
>     Read symbol at point and if it is a package name, return it.  If it
>     is not a package name or if current command has a prefix argument,
>     read the name from minibuffer.
>     (from 'guix-read-package-name-at-point' documentation string).

Oh, right, I forgot about it, sorry :-)

(this feature is also the Oleg's idea)

>> 1. "M-x guix-hash": it prompts for a file, calculates its hash and puts
>>    it into kill-ring (i.e., you can insert it with "C-y").  If it is
>>    called on a directory, it ignores VCS files (like "guix hash
>>    --recursive --exclude-vcs").  Also it supports dired-mode.  Thanks to
>>    ng0 for the idea of this command!
> I like this, but as I undertand it works only with files or directories
> locally.

Yes, it is the analog of "guix hash", so it works with local files only.

> Could we do something like:
>     (defun guix-download (url)
>       (interactive "sDownload URL: ")
>       (insert (shell-command-to-string (concat "guix download "
>                                                url
>                                                " 2>/dev/null"
>                                                "| tail -n 1"
>                                                "| tr -d '\n'"))))
> which will download a thing and paste a hash at the cursor position.

I wouldn't like to have such a wrapper for a shell command as using
"Guix REPL" would be faster.  Although the main problem is: what you
suggest is a *synchronous* command, and downloading files may take a
long time, so Emacs will become unresponsive until the file will be
downloaded and its hash will be calculated.

> We have a 'guix-devel-download-package-source', but it basically the
> same as a shell command 'guix download PACKAGE' which requires to copy
> hash manually.  What we probably want is to get a hash into Emacs
> kill-ring as guix-hash does.

I don't see how this can be done.  Is it OK for you that this
downloading will happen synchronously?  Or do you have ideas how it can
be implemented otherwise?


reply via email to

[Prev in Thread] Current Thread [Next in Thread]