unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Julien Cubizolles <j.cubizolles@free.fr>
To: emacs-devel@gnu.org
Subject: Re: Some environment variables disappeared for getenv
Date: Thu, 15 Sep 2022 15:28:17 +0200	[thread overview]
Message-ID: <87czbwhimm.fsf@free.fr> (raw)
In-Reply-To: YyMgVvNiEApMiecy@tuxteam.de

<tomas@tuxteam.de> writes:

> On Thu, Sep 15, 2022 at 01:12:02PM +0200, Julien Cubizolles wrote:
>> I used to rely on getenv to get the value of $XDG_SESSION_TYPE. I
>> noticed that recently:
>> --8<---------------cut here---------------start------------->8---
>> (getenv "XDG_SESSION_TYPE")
>> --8<---------------cut here---------------end--------------->8---
>> returns nil, because this variable isn't in process-environment
>> 
>> What is the reason for dropping this particular variable ? How can I get
>> the value of this variable from within Emacs ?
>
> The process that starts your Emacs has to pass it on (that's the idea
> of environment variables). If things changed, this is where you have
> to look.
>
> How is your Emacs started?

It's started through a user systemd service that hasn't changed in
years.

--8<---------------cut here---------------start------------->8---
[Service]
Type=forking
Environment='XMODIFIERS=""'
ExecStart=/usr/bin/emacs --daemon
ExecStop=/usr/bin/emacsclient --eval "(progn (setq kill-emacs-hook daemon-kill-emacs-hook) (kill-emacs))"
Restart=on-failure
Environment="DISPLAY=:%i"
TimeoutStartSec=0
--8<---------------cut here---------------end--------------->8---

In the getenv docstring, there is a mention of variable
process-environment, containing a list of environment variables, not
refered to in the systemd service file but nonetheless accessible to
getenv (some are XDG variables like XDG_DATA_DIRS). Maybe
XDG_SESSION_TYPE has been dropped from this list ?


-- 
Julien Cubizolles




  reply	other threads:[~2022-09-15 13:28 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-15 11:12 Some environment variables disappeared for getenv Julien Cubizolles
2022-09-15 12:53 ` tomas
2022-09-15 13:28   ` Julien Cubizolles [this message]
2022-09-15 19:17     ` Iñigo Serna

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87czbwhimm.fsf@free.fr \
    --to=j.cubizolles@free.fr \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).