[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#57292: [PATCH v3] gnu: gdm: Enable accessibility settings.
From: |
Dariqq |
Subject: |
bug#57292: [PATCH v3] gnu: gdm: Enable accessibility settings. |
Date: |
Tue, 20 Feb 2024 19:58:48 +0000 |
gdm needs the "/share" subdirectory of these packages present in XDG_DATA_DIRS
such that the accessibility settings work:
- at-spi2-core: contains accessibility dbus service.
- dconf: To be able to change settings.
- gnome-control-center: icon.
* gnu/packages/gnome.scm (gdm)[inputs]: Add at-spi2-core, dconf,
gnome-control-center.
[phases]: Add wrap-accessibility-dependencies phase.
Change-Id: Ibfe8f1aee9c8fe0c06f895de121f0f84defe4773
---
Hi everyone,
Here is v3 of gdm accessibility issue which adds the wrapper phase we've been
discussing.
I added the extra inputs under a seperate section in the inputs. If you'd like
to keep them in alphabetical order feel free to adjust this.
ALso I am not sure if the format of my commit message is ok.
I've tested on both master and gnome-team and it works on both.
To ennable the screenreader it is enough for orca to be in the system profile
(and orca working i.e. on gnome-team branch).
dconf is both a native and normal input: Based on the fedora gdm.spec it seems
like a build dependency however i was not able to verify this as
cross-compiling (for i686-linux-gnu) requries me to bootstrap gcc. At leeast
the default tests do not seem to require it.
Adding gnome-control-center, which is used for the icon, pulls in python
dependencies which breaks cross compiling. Maybe you have some ideas for this.
Also some other thing that I notices is that because /var/lib/gdm is mounted as
tmpfs this makes the changes in the gdm accessibility settings not persist
through reboots which is annoying. These will get stored in
/var/lib/gdm/.config/dconf/.
gnu/packages/gnome.scm | 21 +++++++++++++++++++--
1 file changed, 19 insertions(+), 2 deletions(-)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 953bd817ed..a967c9cb16 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -77,6 +77,7 @@
;;; Copyright © 2023 Juliana Sims <juli@incana.org>
;;; Copyright © 2023 Dominik Delgado Steuter <d@delgado.nrw>
;;; Copyright © 2023 Zhu Zihao <all_but_last@163.com>
+;;; Copyright © 2024 Dariqq <dariqq@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -9007,7 +9008,18 @@ (define-public gdm
(for-each (lambda (desktop)
(symlink desktop (basename desktop)))
(find-files
- (string-append settings "/etc/xdg"))))))))))
+ (string-append settings "/etc/xdg")))))))
+ ;; GDM needs some additional programs available via XDG_DATA_DIRS,
+ ;; to make accessibility settings and related services available.
+ (add-after 'install 'wrap-accessibility-dependencies
+ (lambda _
+ (wrap-program (string-append #$output "/bin/gdm")
+ `("XDG_DATA_DIRS" ":" prefix
+ #$(map (lambda (input)
+ (file-append (this-package-input input) "/share"))
+ '("at-spi2-core"
+ "dconf"
+ "gnome-control-center")))))))))
(native-inputs
(list `(,glib "bin") ;for glib-compile-schemas, etc.
dconf
@@ -9029,7 +9041,12 @@ (define-public gdm
iso-codes
libcanberra
libgudev
- linux-pam))
+ linux-pam
+
+ ;; accessibility dependencies
+ at-spi2-core
+ dconf
+ gnome-control-center))
(synopsis "Display manager for GNOME")
(home-page "https://wiki.gnome.org/Projects/GDM/")
(description
base-commit: ffcce77ec488e3c89401ad77fafa65fcd9e9f5be
--
2.41.0
- bug#57292: [PATCH v3] gnu: gdm: Enable accessibility settings.,
Dariqq <=