dbus no longer supports Upstart service activation

Bug #1238514 reported by James Hunt on 2013-10-11
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
dbus (Ubuntu)
Undecided
Unassigned

Bug Description

In certain areas, Ubuntu Touch needs to use D-Bus activation to start Upstart jobs.

= Overview =

This bug is for tracking the re-enabling of Upstart service activation in D-Bus.

In certain areas, Ubuntu Touch needs to use D-Bus activation to start Upstart jobs. The version of D-Bus in Ubuntu no longer supports Upstart service activation which has resulted in work-arounds being introduced for Touch that attempt to simulate proper service activation with varying degrees of success.

= Background =

D-Bus in Ubuntu used to support Upstart service activation. The lp:ubuntu/dbus logs shows that it was added in r112:

revno: 112 [merge]
fixes bug: https://launchpad.net/bugs/1014850
author: Sebastien Bacher <email address hidden>, Iain Lane
committer: Package Import Robot <email address hidden>
branch nick: quantal
timestamp: Fri 2012-08-03 14:05:38 +0200
message:
  * Upload to quantal (lp: #1014850)
  * debian/control:
    - use "Breaks: unity-services (<< 6.0.0-0ubuntu6)", the new dbus
      eavedropping protection was creating issues with previous versions

  [ Iain Lane ]
  * Merge with Debian experimental for the new stable series. Remaining Ubuntu
    changes:
    - Install binaries into / rather than /usr:
      + debian/rules: Set --exec-prefix=/
      + debian/dbus.install, debian/dbus-x11.install: Install from /bin
    - Use upstart to start:
      + Add debian/dbus.upstart.
      + debian/control: Add upstart dependency.
      + debian/dbus.postinst: Use upstart call instead of invoking the init.d
        script for checking if we are already running.
      + debian/control: versioned dependency on netbase that emits the new
        deconfiguring-networking event used in upstart script.
    - 20_system_conf_limit.patch: Increase max_match_rules_per_connection for
      the system bus to 5000 (LP #454093)
    - 81-session.conf-timeout.patch: Raise the service startup timeout from 25
      to 60 seconds. It may be too short on the live CD with slow machines.
    - Add 0001-activation-allow-for-more-variation-than-just-system.patch,
      0002-bus-change-systemd-activation-to-activation-systemd.patch,
      0003-upstart-add-upstart-as-a-possible-activation-type.patch,
      0004-upstart-add-UpstartJob-to-service-desktop-files.patch,
      0005-activation-implement-upstart-activation.patch: Patches from Scott
      James Remnant to implement Upstart service activation. Not upstream.
      Disable patches since they do not apply and this facility is unused
      anyway.
  * Remove systemd BDs; not appropriate for Ubuntu.

At some point [1], the lp:ubuntu/dbus branch lost the ability to support Upstart service activation [2] as the patches were dropped.

[1] - Can't find out exactly when since lp:ubuntu/dbus is not current:

        Most recent Ubuntu version: 1.6.12-0ubuntu8
        Packaging branch version: 1.6.12-0ubuntu1
        Packaging branch status: OUT-OF-DATE

[2] - See debian/patches/series Where the following patches are commented out:

      0001-activation-allow-for-more-variation-than-just-system.patch
      0002-bus-change-systemd-activation-to-activation-systemd.patch
      0003-upstart-add-upstart-as-a-possible-activation-type.patch
      0004-upstart-add-UpstartJob-to-service-desktop-files.patch
      0005-activation-implement-upstart-activation.patch

= Plan =

The existing patches may need slight rework to apply now. It would be highly preferable if upstream D-Bus merge Upstart service activation since dbus-daemon already provides a '--systemd-activation' option.

However, the ideal would be a consistent and generic service activation approach which does not require hard-coding particular init daemon names anywhere.

= References =

- https://bugs.freedesktop.org/show_bug.cgi?id=34526
- http://lists.freedesktop.org/archives/dbus/2010-December/013868.html

Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in dbus (Ubuntu):
status: New → Confirmed
Ted Gould (ted) wrote :

I know there's an "affects you" button at the top, but I still wanted to add a +1 to landing this :-)

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers