Subject: Re: [PATCH v2] environment: Add --remote option and emacsclient-eshell backend.

From: Antero Mejr <[email-masked]>
Date: Wed, 08 Nov 2023 15:34:28 +0000

Liliana Marie Prikler <[email-masked]> writes:

> You have merged two changes into one patch imho.  I think it'd be
> better if you swapped the wording first and then added the emacsclient
> code.

Fixed in updated patch set.

> Interestingly, this still won't support emacs sans client IIUC as we
> anyhow have to spawn a new process.  Can we (perhaps in cooperation
> with guix-emacs) make it so that 'guix shell' spawned from eshell does
> "the right thing"?

Not 100% sure what you mean, but I do not think it is possible to start
eshell (or interact with an existing eshell) without using emacsclient
or starting a new emacs process. Starting a new emacs process is
cumbersome and doesn't make sense to me - I wouldn't want to start
another instance of emacs just to use a guix shell environment.

Currently, running guix shell in eshellwill invoke $SHELL, which seems
like the "right thing" but isn't very useful, since then you lose all
the eshell features.

The intention of this patch is that the user will have an emacs server
already running, via the forthcoming 'home-emacs-service-type' service
or some other method. Then guix shell can communicate with that server
to set up the environment in a new eshell buffer.