summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/services/security-token.scm6
1 files changed, 4 insertions, 2 deletions
diff --git a/gnu/services/security-token.scm b/gnu/services/security-token.scm
index 0cbb591e10..52afad84a6 100644
--- a/gnu/services/security-token.scm
+++ b/gnu/services/security-token.scm
@@ -61,8 +61,10 @@
                    (let ((socket "/run/pcscd/pcscd.comm"))
                      (when (file-exists? socket)
                        (delete-file socket)))
-                   (invoke #$(file-append pcsc-lite "/sbin/pcscd"))
-                   (call-with-input-file "/run/pcscd/pcscd.pid" read)))
+                   (fork+exec-command
+                    (list #$(file-append pcsc-lite "/sbin/pcscd")
+                          "--foreground")
+                    #:log-file "/var/log/pcscd.log")))
         (stop #~(make-kill-destructor)))))))
 
 (define pcscd-activation