aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJosselin Poiret <dev@jpoiret.xyz>2021-11-23 20:25:10 +0000
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-11-24 01:02:37 -0500
commitc3fd310d8f9ab0b5ae0b23bf6a6c67e5e25cc135 (patch)
tree73404d6b07ce22bf5124ad8eb413be47e818487b
parent249dd3fc58137ffb586c2220ee03438273216839 (diff)
downloadguix-c3fd310d8f9ab0b5ae0b23bf6a6c67e5e25cc135.tar
guix-c3fd310d8f9ab0b5ae0b23bf6a6c67e5e25cc135.tar.gz
gnu: gdm: Pass GDK_PIXBUF_MODULE_FILE to sessions.
* gnu/packages/patches/gdm-pass-gdk-pixbuf-loader-env.patch: Add patch. * gnu/local.mk (dist_patch_DATA): List it. * gnu/packages/gnome.scm (gdm): Use it. * gnu/services/xorg.scm (gdm-shepherd-service): Pass GDK_PIXBUF_MODULE_FILE. Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/gnome.scm3
-rw-r--r--gnu/packages/patches/gdm-pass-gdk-pixbuf-loader-env.patch24
-rw-r--r--gnu/services/xorg.scm4
4 files changed, 31 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 6cc17b81a7..98399a64be 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1114,6 +1114,7 @@ dist_patch_DATA = \
%D%/packages/patches/gdm-elogind-support.patch \
%D%/packages/patches/gdm-remove-hardcoded-xwayland-path.patch \
%D%/packages/patches/gdm-wayland-session-wrapper-from-env.patch \
+ %D%/packages/patches/gdm-pass-gdk-pixbuf-loader-env.patch \
%D%/packages/patches/genimage-mke2fs-test.patch \
%D%/packages/patches/geoclue-config.patch \
%D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 40f49a44db..6d56d04915 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -8367,7 +8367,8 @@ library.")
"gdm-default-session.patch"
"gdm-elogind-support.patch"
"gdm-remove-hardcoded-xwayland-path.patch"
- "gdm-wayland-session-wrapper-from-env.patch"))))
+ "gdm-wayland-session-wrapper-from-env.patch"
+ "gdm-pass-gdk-pixbuf-loader-env.patch"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
diff --git a/gnu/packages/patches/gdm-pass-gdk-pixbuf-loader-env.patch b/gnu/packages/patches/gdm-pass-gdk-pixbuf-loader-env.patch
new file mode 100644
index 0000000000..4341e3fc30
--- /dev/null
+++ b/gnu/packages/patches/gdm-pass-gdk-pixbuf-loader-env.patch
@@ -0,0 +1,24 @@
+From 444250fce55f916af993bc855930c6809686e4bd Mon Sep 17 00:00:00 2001
+From: Josselin Poiret <dev@jpoiret.xyz>
+Date: Tue, 23 Nov 2021 18:39:39 +0000
+Subject: [PATCH] Make GDM pass GDK_PIXBUF_MODULE_FILE to sessions
+
+---
+ daemon/gdm-launch-environment.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/daemon/gdm-launch-environment.c b/daemon/gdm-launch-environment.c
+index 14ecfac2..3e618321 100644
+--- a/daemon/gdm-launch-environment.c
++++ b/daemon/gdm-launch-environment.c
+@@ -158,6 +158,7 @@ build_launch_environment (GdmLaunchEnvironment *launch_environment,
+ "WINDOWPATH",
+ "XCURSOR_PATH",
+ "XDG_CONFIG_DIRS",
++ "GDK_PIXBUF_MODULE_FILE",
+ NULL
+ };
+ char *system_data_dirs;
+--
+2.33.1
+
diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm
index 0735d777bd..b6857a8202 100644
--- a/gnu/services/xorg.scm
+++ b/gnu/services/xorg.scm
@@ -49,6 +49,7 @@
#:use-module (gnu packages admin)
#:use-module (gnu packages bash)
#:use-module (gnu system shadow)
+ #:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system trivial)
#:use-module (guix gexp)
#:use-module (guix store)
@@ -1005,6 +1006,9 @@ the GNOME desktop environment.")
;; the corresponding line in /etc/profile.
"XCURSOR_PATH=/run/current-system/profile/share/icons"
(string-append
+ "GDK_PIXBUF_MODULE_FILE="
+ #$gnome-shell "/" #$%gdk-pixbuf-loaders-cache-file)
+ (string-append
"GDM_WAYLAND_SESSION="
#$(gdm-configuration-wayland-session config))))))
(stop #~(make-kill-destructor))