From d3a3aee558979d9b0dde1c0814d8f9f96884aeed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20M=C3=BChlbacher?= Date: Fri, 30 May 2025 14:57:34 +0200 Subject: [PATCH] dconf: Fix Gio module variable breakage (#7146) In some setups, this would cause missing Gio modules that cause e.g. Nautilus to not be able to view the XDG trash, and potentially other issues. Fixes: ec8205c3 ("dconf: set env var") Fixes: #7143 --- modules/misc/dconf.nix | 4 +++- tests/modules/home-environment/session-variables.nix | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/modules/misc/dconf.nix b/modules/misc/dconf.nix index e75b30972..ef03a1fc6 100644 --- a/modules/misc/dconf.nix +++ b/modules/misc/dconf.nix @@ -80,7 +80,9 @@ in (lib.mkIf cfg.enable { home.packages = [ pkgs.dconf ]; dbus.packages = [ pkgs.dconf ]; - home.sessionVariables.GIO_EXTRA_MODULES = "${pkgs.dconf.lib}/lib/gio/modules"; + home.sessionVariablesExtra = '' + export GIO_EXTRA_MODULES="${pkgs.dconf.lib}/lib/gio/modules''${GIO_EXTRA_MODULES:+:}$GIO_EXTRA_MODULES" + ''; }) (lib.mkIf (cfg.enable && cfg.settings != { }) { # Make sure the dconf directory exists. diff --git a/tests/modules/home-environment/session-variables.nix b/tests/modules/home-environment/session-variables.nix index 9e01bb94a..19b65f79c 100644 --- a/tests/modules/home-environment/session-variables.nix +++ b/tests/modules/home-environment/session-variables.nix @@ -9,7 +9,6 @@ let if [ -n "$__HM_SESS_VARS_SOURCED" ]; then return; fi export __HM_SESS_VARS_SOURCED=1 - export GIO_EXTRA_MODULES="${pkgs.dconf}/lib/gio/modules" export LOCALE_ARCHIVE_2_27="${config.i18n.glibcLocales}/lib/locale/locale-archive" export V1="v1" export V2="v2-v1" @@ -18,6 +17,7 @@ let export XDG_DATA_HOME="/home/hm-user/.local/share" export XDG_STATE_HOME="/home/hm-user/.local/state" + export GIO_EXTRA_MODULES="${pkgs.dconf}/lib/gio/modules''${GIO_EXTRA_MODULES:+:}$GIO_EXTRA_MODULES" ''; darwinExpected = ''