On Wed, 2017-09-06 at 19:55 -0300, Felipe Sateler wrote: > The autospawn mechanism already had a root-autospawn protection mechanism. When > using systemd that was lost. Systemd 234 has a mechanism to conditionalize unit starting > on the running user, so lets do that to protect against root autospawning. > --- > src/daemon/systemd/user/pulseaudio.service.in | 1 + > src/daemon/systemd/user/pulseaudio.socket | 1 + > 2 files changed, 2 insertions(+) > > diff --git a/src/daemon/systemd/user/pulseaudio.service.in b/src/daemon/systemd/user/pulseaudio.service.in > index 2bd780f8..46897bf5 100644 > --- a/src/daemon/systemd/user/pulseaudio.service.in > +++ b/src/daemon/systemd/user/pulseaudio.service.in > @@ -14,6 +14,7 @@ Description=Sound Service > # After=pulseaudio.socket is not needed, as it is already implicit in the > # socket-service relationship, see systemd.socket(5). > Requires=pulseaudio.socket > +ConditionUser=!root > > [Service] > # Note that notify will only work if --daemonize=no > diff --git a/src/daemon/systemd/user/pulseaudio.socket b/src/daemon/systemd/user/pulseaudio.socket > index 332ece89..98c1002a 100644 > --- a/src/daemon/systemd/user/pulseaudio.socket > +++ b/src/daemon/systemd/user/pulseaudio.socket > @@ -1,5 +1,6 @@ > [Unit] > Description=Sound System > +ConditionUser=!root > > [Socket] > Priority=6 What happens if these units are used with older systemd versions? Is the unrecognized option just ignored? -- Tanu https://www.patreon.com/tanuk