Subject: Re: bug#48223: EXWM knows nothing about Guix profiles

From: Leo Prikler <[email-masked]>
Date: Sat, 08 May 2021 11:26:03 +0200

Hi,

Am Samstag, den 08.05.2021, 10:56 +0200 schrieb Jan Nieuwenhuizen:
> > Leo Prikler <[email-masked]> writes:
> 
> Hello again,
> 
> > > I think the launcher that we install in the install-xsession does
> > > not
> > > do sufficient work to set up the environment variables of the
> > > session
> > > appropriately.  In particular, I think it should source
> > > /etc/profile
> > > prior to running Emacs.
> > > 
> > > WDYT?
> > 
> > I think this is a very good idea.
> 
> To follow-up on this: at first glance sourcing /etc/profile seemed to
> fix my problem.  However, I am calling some scripts from Emacs that
> need
> my ~/.bash_profile to be sourced too.
I don't think sourcing ~/.bash_profile will be portable.  As a zsh
user, I'm putting stuff in .zprofile instead, so all my hacks will be
obsoleted if we start mandating bash_profile.  The "portable"
alternative, that is $HOME/.profile does not exist in our current
skeletons.

Putting this aside, I think it'd also be possible to duplicate whatever
settings you might have put into ~/.bash_profile in ~/.exwm.

> So this got me wondering, something has definately changed here.
> Before, this used to work OOTB.  Any ideas what may have changed?
One thing, that changed is Emacs itself.  In particular, we reverted to
ELPA sub-directories for structure, but keeping a hopefully backwards-
compatible hack in subdirs.el
However, I doubt, that this is the only thing making a difference
between now and then.  Since EMACSLOADPATH is wrong, it would seem,
that there is no profile evaluation whatsoever going on, and I'd argue
this has already been the case before, I just don't know when it
changed or whether things just happened to work "OOTB" despite this.

I also think, that any session should be run under the user's shell
with --login.  As far as I can tell, that happens for GNOME under GDM –
executing getenv for a variable that I only set in my .zprofile I see
the correct value – why does it not happen for EXWM under slim?

Greetings,
Leo