blob: 003e3bfa2868704c5a0ccb4c91a5f165475346c3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  | 
(define-module (jd features shepherd)
  #:use-module (guix gexp)
  #:use-module (gnu services)
  #:use-module (gnu home services shepherd)
  #:use-module (rde features)
  #:export (feature-shepherd-repl))
(define-public (feature-shepherd-repl)
  (define f-name 'shepherd-repl)
  (define (shepherd-repl-service _)
    (list
     (shepherd-service
      (provision '(repl))
      (modules '((shepherd service repl)))
      (free-form #~(repl-service)))))
  (define shepherd-repl-service-type
    (service-type
     (name 'shepherd-repl)
     (extensions
      (list (service-extension home-shepherd-service-type shepherd-repl-service)))
     (description "Create shepherd repl socket.")
     (default-value '())))
  (define (get-home-services config)
    (list
     (service shepherd-repl-service-type)))
  (feature
   (name f-name)
   (values `((,f-name . #t)))
   (home-services-getter get-home-services)))
 
  |