From: Jakub Czajka Date: Fri, 23 Dec 2022 19:32:26 +0000 (+0100) Subject: [home] Run a compositor as a shepherd service. X-Git-Url: https://git.ekhem.eu.org/?a=commitdiff_plain;h=a4d171c3b0ceea33da3cec5059519ff87bdc4374;p=guix.git [home] Run a compositor as a shepherd service. --- diff --git a/conf/home/xcompmgr.scm b/conf/home/xcompmgr.scm new file mode 100644 index 0000000..222fa46 --- /dev/null +++ b/conf/home/xcompmgr.scm @@ -0,0 +1,32 @@ +;; Copyright (c) 2022 Jakub Czajka +;; License: GPL-3.0 or later. +;; +;; xcompmgr.scm - shepherd service for xcompmgr. + +(define-module (conf home xcompmgr) + #:use-module (gnu home services shepherd) + #:use-module (gnu packages xorg) + #:use-module (gnu services) + #:use-module (guix gexp) + #:use-module (guix licenses) + #:use-module (guix packages) + #:export (xcompmgr-service)) + +(define xcompmgr-shepherd-service + (shepherd-service + (provision '(xcompmgr)) + (start #~(make-forkexec-constructor + (list #$(file-append xcompmgr "/bin/xcompmgr")) + #:directory + (getenv "HOME") + #:log-file + (string-append (getenv "XDG_LOG_HOME") + "/xcompmgr.log"))) + (stop #~(make-kill-destructor)) + (documentation "Shepherd service which runs `xcompmgr` - a simple +compositor."))) + +(define xcompmgr-service + (simple-service 'xcompmgr-service + home-shepherd-service-type + (list xcompmgr-shepherd-service)))