[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#426877: dpkg: Option "--oknodo" should be the default behaviour for "start-stop-daemon" (LSB specs)

On Thu, Jul 03, 2008 at 10:40:53PM +0200, Raphael Hertzog wrote:
> > The option "--oknodo" changes the behaviour to the LSB recomendations but
> > many services in Debian don't use this option and return 1 in the case
> > I've quotted. This is very problematic for me when I try to use a Debian
> > service init script with HeartBeat that expects to receive a 0.

> I'm reluctant to change the default behaviour of start-stop-daemon at this
> point. What do other people think of making --oknodo the default behaviour
> and adding a new option to force the current default behaviour (exit with
> failure if nothing had to be done)?

I think this sounds like there's no real transition plan between the two
states; anything that actually relies on the current behavior of s-s-d
without --oknodo will suddenly be broken.  Changing the semantics of core
tools in this way is a bad idea.

The right answer is that we should be fixing the wrong init scripts, not
trying to coerce all the init scripts with a change in s-s-d semantics.  An
init script may have a legitimate reason to want to check for the
difference between exit statuses 0 and 1, without necessarily using this
information a way that breaks the init script's own exit status, and
changing s-s-d behavior will break these legitimate use cases.

> The alternative is to change policy and/or lintian to ensure that packages
> are using --oknodo unless they have a good reason not to.

This was already discussed on debian-devel in March of this year.


Feel free to propose an amendment to policy that clarifies that "sensible"
behavior is equivalent to --oknodo (without implying that init scripts are
required to use s-s-d!), and I will happily second it; as I already
commented in that thread, I think this is a mere clarification of what the
policy has always been, not a change to policy at all.

> > [1] LSB specifications about init script actions:
> > http://www.linux-foundation.org/spec/refspecs/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/iniscrptact.html

That one's starting to get up there right next to "our priorities are our
users and free software" on my list of Facile Arguments That Demonstrate The
Poster Has No Clue. :P

Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org

Reply to: