From 405c0c947cfd59d7bfb81052545cd635970d2d0c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 18 Mar 2020 12:38:15 +0200 Subject: services: Add fontconfig-file-system-service. * gnu/services/desktop.scm (%fontconfig-file-system, fontconfig-file-system-service): New variables. (%desktop-services): Add fontconfig-file-system-service. --- gnu/services/desktop.scm | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 1294d748ac..16ee4d3537 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2016 Sou Bunnbu ;;; Copyright © 2017 Maxim Cournoyer ;;; Copyright © 2017 ng0 -;;; Copyright © 2018 Efraim Flashner +;;; Copyright © 2018, 2020 Efraim Flashner ;;; Copyright © 2018 Ricardo Wurmus ;;; Copyright © 2017, 2019 Christopher Baines ;;; Copyright © 2019 Tim Gesthuizen @@ -36,7 +36,7 @@ #:use-module (gnu services networking) #:use-module (gnu services sound) #:use-module ((gnu system file-systems) - #:select (%elogind-file-systems)) + #:select (%elogind-file-systems file-system)) #:use-module (gnu system) #:use-module (gnu system shadow) #:use-module (gnu system pam) @@ -106,6 +106,9 @@ elogind-service elogind-service-type + %fontconfig-file-system + fontconfig-file-system-service + accountsservice-service-type accountsservice-service @@ -797,6 +800,27 @@ when they log out." ;;; +;;; Fontconfig and other desktop file-systems. +;;; + +(define %fontconfig-file-system + (file-system + (device "none") + (mount-point "/var/cache/fontconfig") + (type "tmpfs") + (flags '(read-only)) + (check? #f))) + +;; The global fontconfig cache directory can sometimes contain stale entries, +;; possibly referencing fonts that have been GC'd, so mount it read-only. +;; As mentioned https://debbugs.gnu.org/cgi/bugreport.cgi?bug=36924#8 and +;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=38046#10 and elsewhere. +(define fontconfig-file-system-service + (simple-service 'fontconfig-file-system + file-system-service-type + (list %fontconfig-file-system))) + +;;; ;;; AccountsService service. ;;; @@ -1185,6 +1209,11 @@ or setting its password with passwd."))) ;; perform administrative tasks (similar to "sudo"). polkit-wheel-service + ;; The global fontconfig cache directory can sometimes contain + ;; stale entries, possibly referencing fonts that have been GC'd, + ;; so mount it read-only. + fontconfig-file-system-service + ;; NetworkManager and its applet. (service network-manager-service-type) (service wpa-supplicant-service-type) ;needed by NetworkManager -- cgit v1.2.3