From effdc6c83e7000bf062526f4256de69899e13b40 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 23 Sep 2022 23:45:27 -0400 Subject: services: jami-service-type: Streamline stop slot. * gnu/services/telephony.scm (jami-shepherd-services) [stop]: Use make-kill-destructor with SIGKILL. Add comment. --- gnu/services/telephony.scm | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/gnu/services/telephony.scm b/gnu/services/telephony.scm index 3d855221e5..b66c7a8563 100644 --- a/gnu/services/telephony.scm +++ b/gnu/services/telephony.scm @@ -685,13 +685,11 @@ argument, either a registered username or the fingerprint of the account.") ;; Finally, return the PID of the daemon process. daemon-pid)) - (stop - #~(lambda (pid . args) - (kill pid SIGKILL) - ;; Wait for the process to exit; this prevents overlapping - ;; processes when issuing 'herd restart'. - (waitpid pid) - #f)))))))) + ;; XXX: jamid takes some time to terminate, and GNU Shepherd + ;; doesn't block when calling waitpid (see: + ;; https://issues.guix.gnu.org/57922). Using SIGKILL instead + ;; of SIGTERM works around that. + (stop #~(make-kill-destructor SIGKILL)))))))) (define jami-service-type (service-type -- cgit v1.2.3