aboutsummaryrefslogtreecommitdiff
path: root/kbg/services/shepherd.scm
blob: e3f6efb97f22c2279f9bbf28472ae3e45e8874ff (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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
(define-module (kbg services shepherd)
  #:use-module (kbg)
  #:use-module (gnu)
  #:use-module (guix)
  #:use-module (gnu services)
  #:use-module (gnu services shepherd)
  #:use-module (gnu home services)
  #:use-module (gnu home services shepherd)
  #:use-module (gnu services audio)
  #:use-module (system repl server)
  #:use-module (kbg services gnupg)
  #:use-module (kbg services languagetool)
  #:use-module (kbg services mcron)
  #:use-module (kbg services mpd)
  #:use-module (kbg services parallel)
  #:use-module (kbg services syncthing)
  #:export (services-for-host))

(define daeva-shepherd-services
  (list (service home-shepherd-service-type
                 (home-shepherd-configuration
                  (services (append gnupg-service
                                    languagetool-service
                                    mpd-service
                                    syncthing-service))))))
(define axo-shepherd-services
  (list (service home-shepherd-service-type
                 (home-shepherd-configuration
                  (services (append gnupg-service
                                    languagetool-service
                                    mpd-service
                                    parallel-mk-temp-dir-service
                                    syncthing-service))))))


(define yak-shepherd-services
  (list (service home-shepherd-service-type
                 (home-shepherd-configuration
                  (services (append gnupg-service
                                    languagetool-service
                                    mpd-service
                                    parallel-mk-temp-dir-service
                                    syncthing-service))))))

(define koi-shepherd-services
  (list (service home-shepherd-service-type
                 (home-shepherd-configuration
                  (services (append gnupg-service
                                    languagetool-service
                                    mpd-service
                                    syncthing-service))))))

(define (services-for-host hostname)
  (cond ((eq? hostname 'daeva)
         daeva-shepherd-services)
        ((eq? hostname 'axo)
         axo-shepherd-services)
        ((eq? hostname 'yak)
         yak-shepherd-services)
        ((eq? hostname 'koi)
         koi-shepherd-services)
        (else '())))