From c3fd310d8f9ab0b5ae0b23bf6a6c67e5e25cc135 Mon Sep 17 00:00:00 2001 From: Josselin Poiret Date: Tue, 23 Nov 2021 20:25:10 +0000 Subject: [PATCH] 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 Signed-off-by: Maxim Cournoyer --- gnu/local.mk | 1 + gnu/packages/gnome.scm | 3 ++- .../gdm-pass-gdk-pixbuf-loader-env.patch | 24 +++++++++++++++++++ gnu/services/xorg.scm | 4 ++++ 4 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/gdm-pass-gdk-pixbuf-loader-env.patch 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 @@ (define-public gdm "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 +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 @@ (define-module (gnu services xorg) #: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) @@ -1004,6 +1005,9 @@ (define (gdm-shepherd-service config) ;; cursors. gdm doesn't login so doesn't source ;; 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))))))