Subject: [bug#32358] Add pcscd service

From: Clément Lassieur <[email-masked]>
Date: Mon, 13 Aug 2018 01:31:44 +0200

Hi all!

Chris Marusich <[email-masked]> writes:

> Hi Arun,
>
> It turns out that when we run pcscd in the foreground with the -f
> option, it won't emit messages to syslog.  Instead, it emits messages to
> stderr, and those messages will not be stored in logs, as explained in
> the following bug report:
>
> https://debbugs.gnu.org/cgi/bugreport.cgi?bug=30939
>
> To ensure users can easily find the messages, I think we should avoid
> using the "-f" option.
>
> In addition, pcscd logs its PID to /var/run/pcscd/pcscd.pid.  To ensure
> that Shepherd can still tell if the service is alive even when we do not
> run it in the foreground, we should invoke make-forkexec-constructor
> with the #:pid-file keyword argument.

Without the '-f' option, pcscd would return immediately, and thus
calling MAKE-FORKEXEC-CONSTRUCTOR wouldn't make sense.  Instead, you
could just INVOKE it.  See the 'prosody', 'postgres' and 'nginx'
services for examples.  And you could stop it by sending SIGTERM to the
PID in /var/run/pcscd/pcscd.pid I guess.

Also, the systemd unit files I've seen use the '--auto-exit' and
'--hotplug' options.  Do you know if they make sense for us?

Clément