From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jorge Subject: Environment variables on GNOME on foreign distro (Debian) Date: Sun, 23 Feb 2020 18:24:48 -0300 Message-ID: <87tv3hkndr.fsf@disroot.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:470:142:3::10]:58330) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j5ykN-0000XL-LI for help-guix@gnu.org; Sun, 23 Feb 2020 16:25:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1j5ykL-0003YS-6J for help-guix@gnu.org; Sun, 23 Feb 2020 16:25:06 -0500 Received: from knopi.disroot.org ([178.21.23.139]:52346) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1j5ykK-0003Xi-Jh for help-guix@gnu.org; Sun, 23 Feb 2020 16:25:05 -0500 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-guix-bounces+gcggh-help-guix=m.gmane-mx.org@gnu.org Sender: "Help-Guix" To: help-guix@gnu.org 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' GSett= ings backend. Your settings will not be saved or shared with other applica= tions. --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_MO= DULES GIO_EXTRA_MODULES=3D/home/jorge/.guix-profile/lib/gio/modules Side note: `sudo` was unnecessary in that command. Ludovic Court=C3=A8s 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:a1855c067a1a07c20e6bf79fa0a88d64@disroot.org][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 --=20 - - I am Brazilian. I hope my English is correct and I welcome feedback. - -