guix-patches
[Top][All Lists]
Advanced

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

bug#52065: [PATCH core-updates-frozen] gnu: gdm: Pass GDK_PIXBUF_MODULE_


From: Maxim Cournoyer
Subject: bug#52065: [PATCH core-updates-frozen] gnu: gdm: Pass GDK_PIXBUF_MODULE_FILE to sessions.
Date: Wed, 24 Nov 2021 01:06:28 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)

Hello Josselin,

Josselin Poiret <dev@jpoiret.xyz> writes:

> Hello,
>
> This patch should fix GDM not showing svg icons, most notably the peek
> password one on the login prompt.
>
> Best,
> Josselin
>
> -- >8 --
> * 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.

Thank you so much for tackling this!

[...]

> diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm
> index 0735d777bd..3abee8694a 100644
> --- a/gnu/services/xorg.scm
> +++ b/gnu/services/xorg.scm
> @@ -1004,6 +1004,10 @@ (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
> +                            "/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache")
>                             (string-append
>                              "GDM_WAYLAND_SESSION="
>                              #$(gdm-configuration-wayland-session config))))))

I've modified the above slightly like so:

--8<---------------cut here---------------start------------->8---
@@ -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))))))
--8<---------------cut here---------------end--------------->8---

To avoid hard coding the path.

I tested it in a VM with

--8<---------------cut here---------------start------------->8---
./pre-inst-env guix system vm gnu/system/examples/desktop.tmpl
--8<---------------cut here---------------end--------------->8---

It all looked good, so I push as commit
c3fd310d8f9ab0b5ae0b23bf6a6c67e5e25cc135.

Thank you!

Maxim





reply via email to

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