Debian Bug report logs -
#512645
[checks/manpages] missing man pages reported for foo that are in foo-data
Reported by: Fabian Greffrath <greffrath@leat.rub.de>
Date: Thu, 22 Jan 2009 15:09:01 UTC
Severity: wishlist
Merged with 120323,
456657
Found in versions 1.20.16, lintian/1.23.36, lintian/2.1.5
Fixed in version lintian/2.5.0~rc3
Done: Niels Thykier <niels@thykier.net>
Bug is archived. No further changes may be made.
Toggle useless messages
Report forwarded
to debian-bugs-dist@lists.debian.org, Debian Lintian Maintainers <lintian-maint@debian.org>:
Bug#512645; Package lintian.
(Thu, 22 Jan 2009 15:09:03 GMT) (full text, mbox, link).
Acknowledgement sent
to Fabian Greffrath <greffrath@leat.rub.de>:
New Bug report received and forwarded. Copy sent to Debian Lintian Maintainers <lintian-maint@debian.org>.
(Thu, 22 Jan 2009 15:09:04 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Package: lintian
Severity: minor
Version: 2.1.5
Dear lintian maintainers,
sorry for the subject line, but my concern is a little bit too
complicated to describe it in one line, I guess. ;)
Imagine I build a package foo, which consists of a binary in /usr/bin
and architecture-independent content in /usr/share. Since the stuff in
/usr/share takes quite a lot of space (think of files in
/usr/share/locale) I want to put it in an arch:all package called
foo-data. To achieve this I tell foo's Makefile that it must install
into destdir=$CURDIR)/debian/tmp; then I create a debian/foo.install
file containing the line "debian/tmp/usr/bin" and a
debian/foo-data.install file that contains "debian/tmp/usr/share". Of
course foo now also needs to depend on foo-data which I achieve by
adding "foo-data (=${source:Version})" to foo's Depends line in
debian/control. Alright, nothing new so far.
But now, if I run lintian on the newly created packages, I get
warnings like "binary-without-manpage: usr/bin/foo" which simply isn't
true. There *is* a manpage for /usr/bin/foo, it simply isn't installed
in the foo package but in the foo-data package and I even made sure
that foo does not get installed without foo-data.
Could you please make lintian check if there is a package (foo-data)
created from the same source that contains the obviously missing files
and if the assumed faulty package (foo) depends on this package
(foo-data)?
Thank you very much!
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
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian Lintian Maintainers <lintian-maint@debian.org>:
Bug#512645; Package lintian.
(Thu, 22 Jan 2009 19:21:04 GMT) (full text, mbox, link).
Acknowledgement sent
to Russ Allbery <rra@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Lintian Maintainers <lintian-maint@debian.org>.
(Thu, 22 Jan 2009 19:21:04 GMT) (full text, mbox, link).
Message #10 received at 512645@bugs.debian.org (full text, mbox, reply):
severity 512645 wishlist
merge 512645 120323
retitle 512645 [checks/manpages] missing man pages reported for foo that are in foo-data
thanks
Fabian Greffrath <greffrath@leat.rub.de> writes:
> But now, if I run lintian on the newly created packages, I get warnings
> like "binary-without-manpage: usr/bin/foo" which simply isn't
> true. There *is* a manpage for /usr/bin/foo, it simply isn't installed
> in the foo package but in the foo-data package and I even made sure that
> foo does not get installed without foo-data.
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.
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.
This is why binary-without-manpage explicitly says to add an override for
this case, though.
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian Lintian Maintainers <lintian-maint@debian.org>:
Bug#512645; Package lintian.
(Fri, 23 Jan 2009 08:36:02 GMT) (full text, mbox, link).
Acknowledgement sent
to Fabian Greffrath <greffrath@leat.rub.de>:
Extra info received and forwarded to list. Copy sent to Debian Lintian Maintainers <lintian-maint@debian.org>.
(Fri, 23 Jan 2009 08:36:02 GMT) (full text, mbox, link).
Message #15 received at 512645@bugs.debian.org (full text, mbox, reply):
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
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian Lintian Maintainers <lintian-maint@debian.org>:
Bug#512645; Package lintian.
(Fri, 23 Jan 2009 20:09:02 GMT) (full text, mbox, link).
Acknowledgement sent
to Russ Allbery <rra@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian Lintian Maintainers <lintian-maint@debian.org>.
(Fri, 23 Jan 2009 20:09:02 GMT) (full text, mbox, link).
Message #20 received at 512645@bugs.debian.org (full text, mbox, reply):
Fabian Greffrath <greffrath@leat.rub.de> writes:
> Russ Allbery schrieb:
>> 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.
Lintian intentionally doesn't check for dangling symlinks at all because
of this issue. See #217023.
>> 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.
In this case, I think you should keep the menu package in the binary
package and not move it to the data package. (Honestly, I would do the
same thing with the man pages as well.) There really isn't a need to move
everything into /usr/share, only the large data. Man pages and menu files
are small and don't waste much space in the binary package, and I would
just leave them there.
Otherwise, you can add an override here as well.
> Please, I really don't want to add a bunch of lintian overrides for
> reasonably packaged split-up packages. ;)
I understand your concern, but it's unlikely that Lintian is going to
change in any significant way in this area.
--
Russ Allbery (rra@debian.org) <http://www.eyrie.org/~eagle/>
Severity set to `wishlist' from `minor'
Request was from Russ Allbery <rra@debian.org>
to control@bugs.debian.org.
(Sat, 24 Jan 2009 21:42:03 GMT) (full text, mbox, link).
Changed Bug title to `[checks/manpages] missing man pages reported for foo that are in foo-data' from `lintian reports errors in package foo, because it does not honor files in the foo-data package, on which foo depends'.
Request was from Russ Allbery <rra@debian.org>
to control@bugs.debian.org.
(Sat, 24 Jan 2009 21:42:06 GMT) (full text, mbox, link).
Information forwarded
to debian-bugs-dist@lists.debian.org, Debian Lintian Maintainers <lintian-maint@debian.org>:
Bug#512645; Package lintian.
(Mon, 26 Jan 2009 07:57:02 GMT) (full text, mbox, link).
Acknowledgement sent
to Fabian Greffrath <greffrath@leat.rub.de>:
Extra info received and forwarded to list. Copy sent to Debian Lintian Maintainers <lintian-maint@debian.org>.
(Mon, 26 Jan 2009 07:57:03 GMT) (full text, mbox, link).
Message #31 received at 512645@bugs.debian.org (full text, mbox, reply):
Russ Allbery schrieb:
> Lintian intentionally doesn't check for dangling symlinks at all because
> of this issue. See #217023.
Oh, I didn't know this.
> In this case, I think you should keep the menu package in the binary
> package and not move it to the data package. (Honestly, I would do the
> same thing with the man pages as well.) There really isn't a need to move
> everything into /usr/share, only the large data. Man pages and menu files
> are small and don't waste much space in the binary package, and I would
> just leave them there.
This is what I did, i.e. I put parts of /usr/share in the foo-data
package and other parts like /usr/share/{applications,pixmaps,man} in
the foo package to get rid of lintian warning. However, this is what I
initially wanted to avoid, i.e. mix up arch-indep stuff between
arch:any and arch:all packages.
> Otherwise, you can add an override here as well.
This is what I wanted to avoid, too.
> I understand your concern, but it's unlikely that Lintian is going to
> change in any significant way in this area.
Alright, but it feels good having talked about it. ;) I'll leave the
bug report open, though.
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
Blocking bugs of 120323 added: 513663
Request was from Russ Allbery <rra@debian.org>
to control@bugs.debian.org.
(Sat, 31 Jan 2009 06:03:03 GMT) (full text, mbox, link).
Added tag(s) pending.
Request was from Niels Thykier <niels@thykier.net>
to control@bugs.debian.org.
(Tue, 12 Apr 2011 13:03:06 GMT) (full text, mbox, link).
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Mon, 30 May 2011 07:33:09 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Sun Nov 19 12:50:27 2023;
Machine Name:
bembo
Debian Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.