Bug#746578: Dealing with the conflicting dbus policies?
[Context: bug 765101 occurred because systemd-shim installs a dbus
policy that broke systemd.]
Given the increasing desire to install systemd-shim even on systems
moving to systemd, both to make init=/lib/sysvinit/init work and to
smooth the transition as part of 746578, I think we need a better
solution for this problem than just updating systemd-shim every time
systemd's dbus policy changes.
Simple solution: given that systemd-shim exists to help run systemd
services without systemd as PID 1, how about making systemd-shim depend
on systemd, which contains those services? libpam-systemd (the normal
reason someone would want systemd-shim installed) already depends on
systemd, so this shouldn't change anything for potential users of
systemd-shim. systemd-shim could then stop shipping a dbus policy at
all, and instead rely on the policy already shipped as part of systemd.
More elaborate solution, if the above is undesirable for some reason:
teach dbus to also reach policies from /run/dbus-1, and have
systemd-shim ship an init script that symlinks a policy file there iff
not booted via systemd.
- Josh Triplett