diff options
author | Marek Paśnikowski <marek@marekpasnikowski.pl> | 2024-07-05 14:24:26 +0200 |
---|---|---|
committer | Marek Paśnikowski <marek@marekpasnikowski.pl> | 2024-07-06 09:10:29 +0200 |
commit | 35641a35532a63ed68220fb683a4c1caeaa5b32e (patch) | |
tree | 8d9f323fba156034e18691bffd9289baa937355c /suweren | |
parent | f0ad0af3b731ca3acc14f71fa301a76ba7e28f02 (diff) |
implement fontconfig configuration
Diffstat (limited to 'suweren')
-rw-r--r-- | suweren/home.scm | 2 | ||||
-rw-r--r-- | suweren/home/services/fontutils.scm | 39 |
2 files changed, 41 insertions, 0 deletions
diff --git a/suweren/home.scm b/suweren/home.scm index 1de149a..8cadc23 100644 --- a/suweren/home.scm +++ b/suweren/home.scm @@ -9,6 +9,7 @@ #:use-module (gnu services) #:use-module (nongnu packages mozilla) #:use-module (suweren home services) + #:use-module (suweren home services fontutils) #:use-module (suweren services sound) #:use-module (suweren update)) @@ -25,6 +26,7 @@ dbus pipewire shepherd + suweren-home-fontconfig-service-type update-commands))) (home-environment (packages packages) (services services))))) diff --git a/suweren/home/services/fontutils.scm b/suweren/home/services/fontutils.scm new file mode 100644 index 0000000..acfcc64 --- /dev/null +++ b/suweren/home/services/fontutils.scm @@ -0,0 +1,39 @@ +(define-module (suweren home services fontutils) + ;; suweren-home-fontconfig-service-type [ home-fontconfig-service-type ] + #:use-module (gnu home services fontutils) + ;; suweren-home-fontconfig-service-type [ simple-service ] + #:use-module (gnu services)) + +(define-public suweren-home-fontconfig-service-type + (let* ((antialias '(match (@ (target "font")) + (edit (@ (mode "assign") + (name "antialias")) + (bool "true")))) + (hinting '(match (@ (target "font")) + (edit (@ (mode "assign") + (name "hinting")) + (bool "false")))) + (hintstyle '(match (@ (target "font")) + (edit (@ (mode "assign") + (name "hintstyle")) + (const "hintnone")))) + (rgba '(match (@ (target "font")) + (edit (@ (mode "assign") + (name "rgba")) + (const "none")))) + + ;; TODO sxml -> (sxml) + (rules (list antialias + hinting + hintstyle + rgba)) + + ;; TODO Remove the hardcoded path by using an appropriate variable. + ;; TODO string -> (sxml) -> fontconfig-extension + (extensions (list "~/.guix-home/profile/share/fonts" + rules))) + + ;; TODO symbol -> service-type? -> fontconfig-extension -> service + (simple-service 'suweren-fontconfig + home-fontconfig-service-type + extensions))) |