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

Bug#512645: lintian reports errors in package foo, because it does not honor files in the foo-data package, on which foo depends



Hello Russ,

Russ Allbery schrieb:
Right, the problem is that Lintian checks a package at a time, so while
it's checking foo, it has no access to foo-data.  Lintian is designed to
check each package in isolation.  It's difficult to do more than that and
still support things like lintian.d.o.

OK, I see...

That being said, there is a possible hack that we can apply here that may
fix the common case of checking a *.changes file for a set of related
packages and on lintian.d.o.  See the discussion in #456657 for more
details.

Well, I have no clue about lintian internals, but isn't the check for the dangling /usr/lib/libfoo.so -> /usr/lib/libfoo.so.$SONAME in libfoo-dev packages a similar exception? At least it throws no error if /usr/lib/libfoo.so.$SONAME does exist in the libfoo$SONAME package and libfoo-dev depends on it.

This is why binary-without-manpage explicitly says to add an override for
this case, though.

The binary-without-manpage warning is only the simplest one that crossed my mind. A more complicated example is realted to debian/foo.menu files.

Imagine the same situation than before: A binary /usr/bin/foo in the foo package and all arch-indep content of /usr/share in the foo-data package. foo denepds on foo-data. Now I add a debian/foo.menu file which contains the lines 'command="/usr/bin/foo"' and 'icon="/usr/share/pixmaps/foo.xpm"'. Of course, since the file /usr/share/pixmaps/foo.xpm cannot be found in the foo package, lintian throws the menu-icon-missing warning. This will be another lintian overrides. :/ On the other hand, if I move the menu file to debian/foo-data.menu, the menu-icon-missing warning will be gone, but the menu-command-not-in-package warning will appear instead, since /usr/bin/foo is not part of foo-data. Even worse, I cannot make foo-data depend on foo, because I have to avoid circular dependencies. So all I can do is make foo-data recommend foo, but then it is still possible that a user mistakenly install foo-data without foo and ends up with a dead menu entry.

Please, I really don't want to add a bunch of lintian overrides for reasonably packaged split-up packages. ;)

Cheers,
Fabian


--
Dipl.-Phys. Fabian Greffrath

Ruhr-Universität Bochum
Lehrstuhl für Energieanlagen und Energieprozesstechnik (LEAT)
Universitätsstr. 150, IB 3/134
D-44780 Bochum

Telefon: +49 (0)234 / 32-26334
Fax:     +49 (0)234 / 32-14227
E-Mail:  greffrath@leat.ruhr-uni-bochum.de



Reply to: