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

Bug#913466: lintian: init.d-script-does-not-implement-optional-option status is actually required by LSB



Package: lintian
Version: 2.5.112
Severity: normal

Dear Maintainer,

There's currently a lintian warning for init.d scripts lacking 'status'
that reads eg.:

I: util-linux: init.d-script-does-not-implement-optional-option etc/init.d/hwclock.sh status
N: 
N:    The /etc/init.d script does not implement the status option. This is not
N:    required by the Policy, but often requested by users.
N:    
N:    Refer to https://wiki.debian.org/LSBInitScripts for details.
N:    
N:    Severity: wishlist, Certainty: certain
N:    
N:    Check: init.d, Type: binary

I think this is misleading.

This isn't "optional", it's *required* by LSB to implement status.
(The only reason policy doesn't list it as required is because I didn't
want to make lots of package insta-RC-buggy. However it's also not
listed as optional in policy! A special level was invented for it
between optional and required just to avoid the insta-RC-buggy problem.
Policy should be fixed to list status as required once people have fixed
up their init script.... yeah right, like that'll ever happen. ;P)

Please either be lazy and list it under the
'init.d-script-does-not-implement-required-option' tag
or invent a new "semi-required" tag just for status.

The text could read something like this:

N:    The /etc/init.d script does not implement the status option. This is
N:    required by LSB, often requested by users and will be required by
N:    the Policy in the future.
N:
N:    Refer to https://wiki.debian.org/LSBInitScripts for details.

The "often requested by users" bit might give a cozy feeling to include
but I wonder how accurate it's considered to be today, given most users
will have 'service foo status' given it's backed by 'systemctl status
foo' and doesn't need init script to support it.... Only sysvinit users
benefit from it. (Which makes me wonder why I bothered to touch anything
related to this in policy in the first place. Must have been some
compatibility stuff that's overly complex because we can't rely on
init scripts always providing status I guess.)

Raising this to a lintian warning might probably be the best way to
get people to notice and fix this. However I'm not sure how useful
it is to have people spend their time on this. Given there doesn't
seem to be consensus that it's time to start dropping init scripts
from package distribution wide yet, it feels wrong however to not
even attempt to fix this obvious thing up..... I'm torn.

Anyway, now I've shared what I know about status. I don't have
a strong opinion or care deeply so feel free take what you want
from this or just close the bug report if there's nothing useful
here.

(I hope this isn't a duplicate, because I've certainly thought about
reporting this before.)

Regards,
Andreas Henriksson

-- System Information:
Debian Release: buster/sid
  APT prefers unstable-debug
  APT policy: (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'unstable'), (1, 'experimental-debug'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.18.0-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en (charmap=UTF-8)
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages lintian depends on:
ii  binutils                       2.31.1-7
ii  bzip2                          1.0.6-9
ii  diffstat                       1.61-1+b1
ii  dpkg                           1.19.2
ii  dpkg-dev                       1.19.2
ii  file                           1:5.34-2
ii  gettext                        0.19.8.1-9
ii  gpg                            2.2.10-3
ii  intltool-debian                0.35.0+20060710.4
ii  libapt-pkg-perl                0.1.34+b1
ii  libarchive-zip-perl            1.64-1
ii  libcgi-pm-perl                 4.40-1
ii  libclass-accessor-perl         0.51-1
ii  libclone-perl                  0.41-1+b1
ii  libdpkg-perl                   1.19.2
ii  libemail-valid-perl            1.202-1
ii  libfile-basedir-perl           0.08-1
ii  libipc-run-perl                20180523.0-1
ii  liblist-moreutils-perl         0.416-1+b4
ii  libparse-debianchangelog-perl  1.2.0-13
ii  libtext-levenshtein-perl       0.13-1
ii  libtimedate-perl               2.3000-2
ii  liburi-perl                    1.74-1
ii  libxml-simple-perl             2.25-1
ii  libyaml-libyaml-perl           0.75+repack-1
ii  man-db                         2.8.4-3
ii  patchutils                     0.3.4-2
ii  perl [libdigest-sha-perl]      5.28.0-3
ii  t1utils                        1.41-2
ii  xz-utils                       5.2.2-1.3

Versions of packages lintian recommends:
ii  libperlio-gzip-perl  0.19-1+b5

Versions of packages lintian suggests:
pn  binutils-multiarch     <none>
ii  libhtml-parser-perl    3.72-3+b3
ii  libtext-template-perl  1.53-1

-- no debconf information


Reply to: