help-guix
[Top][All Lists]
Advanced

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

Re: Guix and Emacs Integration for Polyglot Development


From: Maxim Cournoyer
Subject: Re: Guix and Emacs Integration for Polyglot Development
Date: Mon, 20 Aug 2018 08:32:11 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)

Hi Kenny!

Kenny Ballou <address@hidden> writes:

> On 2018年08月02日 08:08 GMT, Chris Marusich wrote:
>> Kenny Ballou <address@hidden> writes:
>>
>>> I would like to be able to specify a project's dependencies in a
>>> manifest file, add any environment variables as necessary, and have
>>> Emacs be aware of those variables when entering that environment.
>>
>> It may not be what you're looking for, but projects like Haunt [1] put a
>> guix.scm file in the root directory of their project.  The file contains
>> a package as its top-level form (I think that's the right terminology),
>> and you can get the dependencies via "guix environment -l guix.scm".
>
> When I mentioned the "manifest" file, I wasn't aware it was common to
> refer to this file as `guix.scm`, but yes, this is definitely the first
> part.  However, to clarify, my question is regarding the second part:
> how to get the `guix.scm` and any environment variables loaded as part
> of `guix environment -l guix.scm` or `guix environment -m
> project_manifest.scm`-- search paths and similar -- integrated into the
> buffers local to the project directory?  I believe `.dir-locals.el` or
> similar might actually be the right approach here, but I'm still in the
> early stages of exploring this.
>
> I hope that clarifies my question better.  For more reference, I'm also
> thinking of wingo's blog on developing v8 with guix[1] (though I believe
> `guix environment` wasn't yet available).
>
> Again, if this is the wrong list, I can move this question to emacs-help
> instead.

I think it's a valid question here, and I'd like to find a great
solution too! So far when using guix environments, I resorted to:

1. Spawning the environment in the command line
2. Starting a new Emacs instance (not attached to my Emacs server) from
this environment, so that it gets access to all the variables and tools
defined within the environment.

I see there is a way to create Guix environments in Emacs using the Emacs-Guix 
tool,
but it seems those are limited to be used from a *shell* like buffer;
Emacs is not magically picking up tools that might become available in
that new environment.

If you find a more integrated way to work with a single instance of
Emacs (say, emacs-server) + Guix environments, please let us know!

Thank you,

Maxim



reply via email to

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