From 211bfcb54435e19bc587d94dcafce2ab311fa311 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Wed, 20 Apr 2022 17:17:57 -0700 Subject: Use forkexec, not system, constructor for syncthing I thought that ‘syncthing-gtk’ was a program that would fork (given the fact that it has a ‘--quit’ command), but it turns out that it doesn't. Using the system constructor means that shepherd will block until ‘syncthing-gtk’ is closed. --- oni/home/services/syncthing.scm | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'oni/home/services/syncthing.scm') diff --git a/oni/home/services/syncthing.scm b/oni/home/services/syncthing.scm index 821f813..eee8d23 100644 --- a/oni/home/services/syncthing.scm +++ b/oni/home/services/syncthing.scm @@ -25,13 +25,12 @@ (provision '(syncthing)) (auto-start? #t) (start - #~(make-system-constructor - #$(file-append (home-syncthing-configuration-package config) "/bin/syncthing-gtk") - " --minimized")) + #~(make-forkexec-constructor + (list #$(file-append (home-syncthing-configuration-package config) "/bin/syncthing-gtk") + "--minimized" + #:log-file (format #f "~a/.local/var/log/syncthing.log" (getenv "HOME"))))) (stop - #~(make-system-destructor - #$(file-append (home-syncthing-configuration-package config) "/bin/syncthing-gtk") - " --quit"))))) + #~(make-kill-destructor))))) (define home-syncthing-service-type (service-type -- cgit v1.2.3-54-g00ecf