[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#34470] [PATCH 7/8] services: gdm: Make dependencies explicit.
From: |
Timothy Sample |
Subject: |
[bug#34470] [PATCH 7/8] services: gdm: Make dependencies explicit. |
Date: |
Wed, 13 Feb 2019 14:22:20 -0500 |
This commit removes the remaining implicit dependencies that the GDM
service had on the GNOME Desktop service.
* gnu/services/xorg.scm (gdm-configuration): Add a gnome-shell-assets
field for specifying any icons or fonts that the GNOME Shell theme
needs.
(gdm-shepherd-service): Remove environment variables pointing to
'/run/current-system' and set XDG_DATA_DIRS so that it points to
'gnome-shell' and its assets.
(gdm-service-type): Extend 'profile-service-type' to ensure that
necessary fonts are installed in the system profile.
---
gnu/services/xorg.scm | 22 +++++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm
index 6a589779b9..4e6f5ad44f 100644
--- a/gnu/services/xorg.scm
+++ b/gnu/services/xorg.scm
@@ -28,6 +28,7 @@
#:use-module ((gnu packages base) #:select (canonical-package))
#:use-module (gnu packages guile)
#:use-module (gnu packages xorg)
+ #:use-module (gnu packages fonts)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages display-managers)
@@ -642,6 +643,8 @@ makes the good ol' XlockMore usable."
(auto-login? gdm-configuration-auto-login? (default #f))
(dbus-daemon gdm-configuration-dbus-daemon (default dbus-daemon-wrapper))
(default-user gdm-configuration-default-user (default #f))
+ (gnome-shell-assets gdm-configuration-gnome-shell-assets
+ (default (list adwaita-icon-theme font-cantarell)))
(x-server gdm-configuration-x-server
(default (xorg-wrapper))))
@@ -714,13 +717,16 @@ makes the good ol' XlockMore usable."
(string-append
"GDM_X_SERVER="
#$(gdm-configuration-x-server config))
- ;; XXX: GDM requires access to a handful of
- ;; programs and components from Gnome (gnome-shell,
- ;; dbus, and gnome-session among others). The
- ;; following variables only work provided Gnome is
- ;; installed.
- "XDG_DATA_DIRS=/run/current-system/profile/share"
- "PATH=/run/current-system/profile/bin"))))
+ (string-append
+ "XDG_DATA_DIRS="
+ ((lambda (ls) (string-join ls ":"))
+ (map (lambda (path)
+ (string-append path "/share"))
+ ;; XXX: Remove gnome-shell below when GDM
+ ;; can depend on GNOME Shell directly.
+ (cons #$gnome-shell
+
'#$(gdm-configuration-gnome-shell-assets
+ config)))))))))
(stop #~(make-kill-destructor))
(respawn? #t))))
@@ -733,6 +739,8 @@ makes the good ol' XlockMore usable."
(const %gdm-accounts))
(service-extension pam-root-service-type
gdm-pam-service)
+ (service-extension profile-service-type
+ gdm-configuration-gnome-shell-assets)
(service-extension dbus-root-service-type
(compose list
gdm-configuration-gdm))))
--
2.20.1
- [bug#34470] [PATCH 0/8] GDM without GNOME Desktop, Timothy Sample, 2019/02/13
- [bug#34470] [PATCH 7/8] services: gdm: Make dependencies explicit.,
Timothy Sample <=
- [bug#34470] [PATCH 8/8] services: gdm: Allow for custom X session scripts., Timothy Sample, 2019/02/13
- [bug#34470] [PATCH 6/8] gnu: gdm: Run dbus-daemon via a wrapper script., Timothy Sample, 2019/02/13
- [bug#34470] [PATCH 4/8] gnu: gdm: Use absolute path for gnome-session., Timothy Sample, 2019/02/13
- [bug#34470] [PATCH 3/8] gnu: gdm: Add links to required login-session files., Timothy Sample, 2019/02/13
- [bug#34470] [PATCH 5/8] gnu: gdm: Simplify pre-configure phase., Timothy Sample, 2019/02/13
- [bug#34470] [PATCH 2/8] gnu: gnome-session: Use absolute paths in .desktop files., Timothy Sample, 2019/02/13
- [bug#34470] [PATCH 1/8] services: gdm: Remove etc service., Timothy Sample, 2019/02/13
- [bug#34470] [PATCH 0/8] GDM without GNOME Desktop, Ludovic Courtès, 2019/02/16