launch: make pulseaudio.service properly order and require the socket
authorFelipe Sateler <fsateler@debian.org>
Wed, 20 Jul 2016 13:57:13 +0000 (09:57 -0400)
committerTanu Kaskinen <tanuk@iki.fi>
Wed, 20 Jul 2016 20:35:03 +0000 (23:35 +0300)
This commit fixes two problems:

1. Because there are no implicit dependencies between sockets and services,
   the socket, as set up by systemd will race with the socket, as set up
   by the pulseaudio daemon. This can cause the pulseaudio.socket unit to
   fail (even though the pulseaudio service started just fine), which can
   confuse users.
2. While it is possible to use the service without the socket, it is not
   clear why it would be desirable. And a user installing pulseaudio and
   doing `systemctl --user start pulseaudio` will not get the socket
   started, which might be confusing and problematic if the server is to
   be restarted later on, as the client autospawn feature might kick in.

src/daemon/systemd/user/pulseaudio.service.in

index df42fc3..0bd2a91 100644 (file)
@@ -1,5 +1,7 @@
 [Unit]
 Description=Sound Service
+Requires=pulseaudio.socket
+After=pulseaudio.socket
 
 [Service]
 # Note that notify will only work if --daemonize=no