summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--yellowsquid/services/mako.scm36
1 files changed, 36 insertions, 0 deletions
diff --git a/yellowsquid/services/mako.scm b/yellowsquid/services/mako.scm
new file mode 100644
index 0000000..4316078
--- /dev/null
+++ b/yellowsquid/services/mako.scm
@@ -0,0 +1,36 @@
+(define-module (yellowsquid services mako)
+ #:use-module (gnu home services)
+ #:use-module (gnu packages wm)
+ #:use-module (gnu services configuration)
+ #:use-module (guix gexp)
+ #:use-module (guix packages)
+ #:export (mako-configuration
+ mako-service-type))
+
+(define-configuration mako-configuration
+ (package
+ (package mako)
+ "Package to use")
+ (config-parts
+ (text-config '())
+ "Configuration file parts"))
+
+(define (mako-files config)
+ `(("config/mako/config"
+ ,(serialize-configuration
+ config
+ (filter-configuration-fields
+ mako-configuration-fields
+ 'config-parts)))))
+
+(define mako-service-type
+ (service-type (name 'mako)
+ (extensions
+ (list (service-extension
+ home-files-service-type
+ mako-files)
+ (service-extension
+ home-profile-service-type
+ mako-configuration-package)))
+ (default-value (mako-configuration))
+ (description "Install and configure mako.")))