guix-devel
[Top][All Lists]
Advanced

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

Re: Emacs interface for Guix


From: Alex Kost
Subject: Re: Emacs interface for Guix
Date: Wed, 16 Jul 2014 23:05:32 +0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Ludovic Courtès (2014-07-16 18:18 +0400) wrote:

> Hi!
>
> Alex Kost <address@hidden> skribis:
>
>> I'm working on Emacs UI for Guix and I have pushed something that
>> can be tried.  Currently there is no interacting with Guix daemon so
>> such actions as deleting, installing,... are not supported yet.  But it
>> is possible to search for and show info about packages.
>
> Just tried it, and it works great!
>
>> Important: Geiser is required; and the first start of the REPL may take a
>> long time.
>
> That’s because it’s rebuilding most of the modules, AFAICS.  Perhaps
> ‘geiser-guile-load-path’ needs to be augmented to avoid that?

Do you mean some guix directories should be added to that var?  But how
to know the paths before starting guile?  Can't the default paths be
changed during "./conigure"-ing?

Actually I think it's not a problem as auto-compiling of all needed
modules takes place only in the first start, besides it may be disabled:

(setq guix-guile-program '("guile" "--no-auto-compile"))

>> Also if anyone is interested, I appreciate any help with the scheme
>> code.  I need a function returning a list of installed packages, and a
>> function "package-installed?".
>
> There’s ‘manifest-installed?’ in (guix profiles):
>
> scheme@(guile-user)> ,use(guix profiles)
> scheme@(guile-user)> (define m (call-with-input-file 
> "/home/ludo/.guix-profile/manifest" read-manifest))
> scheme@(guile-user)> (manifest-installed? m (manifest-pattern (name "emacs")))
> $3 = #t
>
> See tests/profiles.scm for more examples.

Yes, this helps a lot, thank you!  Now I can move further.

--
Alex



reply via email to

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