summaryrefslogtreecommitdiff
path: root/gnu/home
diff options
context:
space:
mode:
authorLilah Tascheter <lilah@lunabee.space>2025-11-03 17:19:19 -0600
committerjgart <jgart@dismail.de>2025-12-02 12:49:38 -0600
commitf0d971ee1b2f7101e46580ea76374f873dfc9b3f (patch)
tree86d53939368124538d29fd231b772c82568d3cbe /gnu/home
parent26cb836c4ec695aa1282b077fde99d280f3817e0 (diff)
gnu: home: Add himitsu-secret-service service.
* gnu/home/services/secrets.scm (home-himitsu-secret-service-configuration): New configuration. (himitsu-secret-service-shepherd-service): New procedure. (home-himitsu-secret-service-type): New service. Change-Id: Ifb05edce06dbe6a24282701c94007a95dcda1313 Signed-off-by: jgart <jgart@dismail.de>
Diffstat (limited to 'gnu/home')
-rw-r--r--gnu/home/services/secrets.scm34
1 files changed, 33 insertions, 1 deletions
diff --git a/gnu/home/services/secrets.scm b/gnu/home/services/secrets.scm
index 451a9a9816b..7bbeeb12928 100644
--- a/gnu/home/services/secrets.scm
+++ b/gnu/home/services/secrets.scm
@@ -30,7 +30,10 @@
30 home-himitsu-service-type 30 home-himitsu-service-type
31 31
32 home-himitsu-ssh-configuration 32 home-himitsu-ssh-configuration
33 home-himitsu-ssh-service-type)) 33 home-himitsu-ssh-service-type
34
35 home-himitsu-secret-service-configuration
36 home-himitsu-secret-service-type))
34 37
35;; 38;;
36;; himitsu 39;; himitsu
@@ -187,3 +190,32 @@ same has persist.")
187 (const (list himitsu-ssh))))) 190 (const (list himitsu-ssh)))))
188 (default-value (home-himitsu-ssh-configuration)) 191 (default-value (home-himitsu-ssh-configuration))
189 (description "Add support for ssh to store keys in Himitsu."))) 192 (description "Add support for ssh to store keys in Himitsu.")))
193
194;;
195;; himitsu-secret-service
196;;
197
198(define-configuration home-himitsu-secret-service-configuration
199 (package (file-like himitsu-secret-service) "himitsu-secret-service package to
200use." empty-serializer)
201 (prefix himitsu-))
202
203(define (himitsu-secret-service-shepherd-service config)
204 (let* ((package (home-himitsu-secret-service-configuration-package config))
205 (binary (file-append package "/bin/hisecrets-agent")))
206 (list (shepherd-service
207 (documentation "Start the Himitsu secret-service implementation.")
208 (provision '(himitsu-secret-service secret-service))
209 (requirement '(himitsud dbus))
210 (start #~(make-forkexec-constructor (list #$binary)))
211 (stop #~(make-kill-destructor))))))
212
213(define home-himitsu-secret-service-type
214 (service-type
215 (name 'himitsu-secret-service)
216 (extensions
217 (list (service-extension home-shepherd-service-type
218 himitsu-secret-service-shepherd-service)))
219 (default-value (home-himitsu-secret-service-configuration))
220 (description "Add support to Himitsu for the freedesktop.org
221secret-service protocol.")))