systemd: add socket activation files

This commit is contained in:
Max Kellermann 2014-02-12 21:22:36 +01:00
parent 5a486a940c
commit 9e02b13ab3
4 changed files with 17 additions and 17 deletions

View File

@ -1250,6 +1250,7 @@ FILTER_LIBS = \
if HAVE_SYSTEMD
systemdsystemunit_DATA = \
systemd/mpd.socket \
systemd/mpd.service
endif

1
NEWS
View File

@ -33,6 +33,7 @@ ver 0.19 (not yet released)
- name each thread (for debugging)
* new resampler option using libsoxr
* allow playlist directory without music directory
* install systemd unit for socket activation
ver 0.18.8 (2014/02/07)
* decoder

View File

@ -135,29 +135,18 @@ apt-get install g++ automake autoconf \
<para>
Using <filename>systemd</filename>, you can launch
<filename>mpd</filename> on demand when the first client
attempts to connect. Create two files in
<filename>/etc/systemd/system/</filename>; first
<filename>mpd.socket</filename>:
attempts to connect.
</para>
<programlisting>[Socket]
ListenStream=/run/mpd.socket
ListenStream=6600
[Install]
WantedBy=sockets.target</programlisting>
<para>
Now create <filename>mpd.service</filename>:
MPD comes with two <filename>systemd</filename> unit files: a
"service" unit and a "socket" unit. These will only be
installed when MPD was configured with
<parameter>--with-systemdsystemunitdir=/lib/systemd</parameter>.
</para>
<programlisting>[Unit]
Description=Music Player Daemon
After=sound.target
[Service]
ExecStart=/usr/bin/mpd --stdout --no-daemon</programlisting>
<para>
Start the socket:
To enable socket activation, type:
</para>
<programlisting>systemctl enable mpd.socket

9
systemd/mpd.socket Normal file
View File

@ -0,0 +1,9 @@
[Socket]
ListenStream=/run/mpd/socket
ListenStream=6600
Backlog=5
KeepAlive=true
PassCredentials=true
[Install]
WantedBy=sockets.target