From 80874b0c7b3db24f0c88026c4b3f904448322492 Mon Sep 17 00:00:00 2001 From: Hilton Chain Date: Fri, 6 Feb 2026 19:55:40 +0800 Subject: [PATCH] services: Add home-noctalia-shell-configuration. * modules/rosenthal/services/desktop.scm (home-noctalia-shell-configuration): New data type. (%home-noctalia-shell-shepherd, home-noctalia-shell-service-type): Use it. --- modules/rosenthal/services/desktop.scm | 28 +++++++++++++++++--------- 1 file changed, 18 insertions(+), 10 deletions(-) diff --git a/modules/rosenthal/services/desktop.scm b/modules/rosenthal/services/desktop.scm index 9917494..c95e2bd 100644 --- a/modules/rosenthal/services/desktop.scm +++ b/modules/rosenthal/services/desktop.scm @@ -56,6 +56,7 @@ home-niri-configuration home-niri-service-type + home-noctalia-shell-configuration home-noctalia-shell-service-type home-rofi-configuration @@ -300,24 +301,31 @@ compositor."))) ;;; Noctalia ;;; +(define-configuration/no-serialization home-noctalia-shell-configuration + (noctalia-shell + (file-like noctalia-shell) + "File-like object to provide @command{/bin/noctalia-shell}.")) + (define %home-noctalia-shell-shepherd - (list (shepherd-service - (documentation "Start noctalia-shell.") - (provision '(noctalia-shell)) - (start - #~(make-forkexec-constructor - (list #$(file-append noctalia-shell "/bin/noctalia-shell")))) - (stop #~(make-kill-destructor))))) + (match-record-lambda + (noctalia-shell) + (list (shepherd-service + (documentation "Start noctalia-shell.") + (provision '(noctalia-shell)) + (start + #~(make-forkexec-constructor + (list #$(file-append noctalia-shell "/bin/noctalia-shell")))) + (stop #~(make-kill-destructor)))))) (define home-noctalia-shell-service-type (service-type (name 'noctalia-shell) (extensions (list (service-extension home-shepherd-service-type - (const %home-noctalia-shell-shepherd)) + %home-noctalia-shell-shepherd) (service-extension home-profile-service-type - (const (list noctalia-shell))))) - (default-value #f) + (compose list home-noctalia-shell-configuration-noctalia-shell)))) + (default-value (home-noctalia-shell-configuration)) (description "")))