diff --git a/units/org.freedesktop.resolve1.busname b/units/org.freedesktop.resolve1.busname index 02588fbfab..5b7a7fed3f 100644 --- a/units/org.freedesktop.resolve1.busname +++ b/units/org.freedesktop.resolve1.busname @@ -10,6 +10,11 @@ Description=Network Name Resolution Service Bus Name Documentation=man:systemd-resolved.service(8) Documentation=http://www.freedesktop.org/wiki/Software/systemd/resolved +# This is pulled in by systemd-resolved.service, since it cannot run +# without its policy set. However, let's conditionalize this unit on +# non-kdbus system. +ConditionPathExists=/sys/fs/kdbus/0-system/ + [BusName] Service=systemd-resolved.service AllowWorld=talk diff --git a/units/systemd-resolved.service.in b/units/systemd-resolved.service.in index 0133621622..e06868494b 100644 --- a/units/systemd-resolved.service.in +++ b/units/systemd-resolved.service.in @@ -10,6 +10,11 @@ Description=Network Name Resolution Documentation=man:systemd-resolved.service(8) After=systemd-networkd.service network.service +# On kdbus systems we pull in the busname explicitly, because it +# carries policy that allows the daemon to acquire its name. +Wants=org.freedesktop.resolve1.busname +After=org.freedesktop.resolve1.busname + [Service] Type=notify Restart=always