help-guix
[Top][All Lists]
Advanced

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

Environment variables on GNOME on foreign distro (Debian)


From: Jorge
Subject: Environment variables on GNOME on foreign distro (Debian)
Date: Sun, 23 Feb 2020 18:24:48 -0300

Hi.  On a previous thread [1] I asked about best practices for Guix
environment variables on foreign distro.  My problem was not
fundamentally solved, and it resurfaced again recently.  In summary:

I use Guix on an updated Debian buster (with 59 packages from
buster-backports) to get some up-to-date packages atop Debian stable.
Currently I set Guix environment variables on ~/.profile, but recently I
started getting error messages from Evince (my Evince is from Debian's
APT).  In fact, in /var/log/user.log I get:

--8<---------------cut here---------------start------------->8---
Feb 23 17:04:19 jorge--inspiron-5570 org.gnome.Evince.desktop[1788]: 
/home/jorge/.guix-profile/lib/gio/modules/libdconfsettings.so: cannot open 
shared object file: Permission denied
Feb 23 17:04:19 jorge--inspiron-5570 org.gnome.Evince.desktop[1788]: Failed to 
load module: /home/jorge/.guix-profile/lib/gio/modules/libdconfsettings.so
Feb 23 17:04:19 jorge--inspiron-5570 evince[5252]: Using the 'memory' GSettings 
backend.  Your settings will not be saved or shared with other applications.
--8<---------------cut here---------------end--------------->8---

The problem seems to be that Debian's Evince is seeing the
`GIO_EXTRA_MODULES' environment variable from Guix.  In fact:

    $ sudo tr \\0 \\n < "/proc/$(pgrep evince)/environ" | grep GIO_EXTRA_MODULES
    GIO_EXTRA_MODULES=/home/jorge/.guix-profile/lib/gio/modules

Side note: `sudo` was unnecessary in that command.

Ludovic Courtès on 12 Mar 2018 had suggested me to to source
 ~/.guix-profile/etc/profile from ~/.bash_profile (or similar).
However, that does not work, at least for me.  If I source Guix's
etc/profile from ~/.bash_profile, the icons of my graphical Guix
applications fail to appear in my GNOME docker, because XDG_DATA_DIRS
was not set by Guix.  In fact, if I open gnome-terminal and issue
`env | grep -i guix`, I see no Guix environment variables.  In fact,
that happens even inside Guix-installed emacs-next.

So what should I do?

Footnotes:
[1] [[notmuch:id:address@hidden][Email
     Sat, 10 Mar 2018 22:32:37 +0000 from Jorge: Best practices for Guix
     environment variables on foreign distro]],
     https://lists.gnu.org/archive/html/help-guix/2018-03/msg00091.html

Regards
-- 
- <https://jorgemorais.gitlab.io/justice-for-rms/>
- I am Brazilian.  I hope my English is correct and I welcome feedback.
- <https://www.defectivebydesign.org/>
- <https://www.gnu.org/>



reply via email to

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