blob: b227b1927ac079f933ee241cf824f86d30656aaa (
plain) (
blame)
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
|
(define-module (mirenn services tailscale)
#:use-module (guix gexp)
#:use-module (gnu services)
#:use-module (gnu services shepherd)
#:use-module (mirenn packages tailscale))
(define (tailscale-shepherd-service config)
(list
(shepherd-service
(documentation "Run the tailscale daemon")
(provision '(tailscale tailscaled))
(requirement '(user-processes NetworkManager))
(start #~(make-forkexec-constructor
;; (mkdir-p "/var/lib/tailscale")
;; (mkdir-p "/run/tailscale")
(list #$(file-append tailscale "/bin/tailscaled"))))
;; "--state=/var/lib/tailscale/tailscaled.state"
;; "--socket=/run/tailscale/tailscaled.sock"
;; "--port=41641")
;; #:preserve-environment? #t
;; #:directory "/var/lib/tailscale"))
(stop #~(make-kill-destructor)))))
;; (list #(file-append tailscale "bin/tailscaled")
;; "--cleanup")))))
(define-public tailscale-service-type
(service-type
(name 'tailscale)
(extensions
(list (service-extension shepherd-root-service-type tailscale-shepherd-service)
(service-extension profile-service-type (lambda _
(list tailscale)))))
(default-value #f)
(description "Run and connect to tailscale")))
|