Status of upstart in Debian?

Scott James Remnant scott at
Tue Apr 6 12:11:07 UTC 2010

On Mon, 2010-03-29 at 08:13 +0200, Petter Reinholdtsen wrote:

> [Michael Goetze]
> > Hi folks,
> >
> > there was a flurry of activity on this list in November about
> > migrating to upstart, but things have been very quiet since then. Is
> > anyone actually working on this for squeeze? Is anyone planning to
> > work on it for squeeze+1?
> There is as far as I know, no work being done.  The blocking part is
> to implement /lib/init/upstart-job, which would allow packages to
> migrate from init.d scripts to upstart jobs without breaking existing
> sysvinit based installations.
> The insserv part of this is implemented (see #547235), but the upstart
> part is not.
> Without this part in place, I believe the migration will not happen.
> The plans to implement /lib/init/upstart-job have not been followed
> up, and I suspect someone else need to take over this task for it to
> get done.  At the moment, Squeeze+1 seem to be the most likely target
> for this migration, assuming we get the upstart-job implementation
> ready in time.
Just for the purposes of clarification, my understanding of the missing
pieces is that:

 - there should be a /lib/init/upstart-job binary

 - for compatibility with systems that retain sysvinit, symlinks to this
   binary are placed in /etc/init.d with "old init script names"

 - upstart-job is called via these symlinks, or with an upstart job or
   init script name as the first argument

 - the next argument is a standard "start", "stop", "restart", "reload"
   or "force-reload" argument

 - upstart-job will run the appropriate action by using the
   matching /etc/init/*.conf as a template, as if Upstart were

The two thing I don't have in my notes are insserv related

 - how does insserv query upstart-job for the dependencies, etc. of the
   job (for when being run from sysvinit)

 - how do we run insserv, skipping upstart jobs (for when being run from

What have you implemented here?

Assuming that this upstart-job binary is in place with the agreed
functionality, I understand that you are happy for the Essential tags of
sysvinit to be dropped - and Upstart to exist as a bona fide replacement
for it.

This would mean:

 - a system with Upstart installed would parse and run Upstart jobs
   natively, and use insserv to run other init scripts

 - a system with sysvinit installed would use insserv to run both init
   scripts and Upstart jobs (via upstart-job)

Is this correct?

Scott James Remnant
scott at
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part
URL: <>

More information about the initscripts-ng-devel mailing list