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: