Summary: | net-dns/bind-9.16.4 : file collision with net-dns/bind-tools-9.16.3 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Toralf Förster <toralf> |
Component: | Current packages | Assignee: | Christian Ruppert (idl0r) <idl0r> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | anrock623, che, hanno, jbowler, reuben-gentoo-bugzilla, runtarod, timo, uleysky, zlogene |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
emerge-info.txt
emerge-history.txt etc.portage.tbz2 logs.tbz2 net-dns:bind-9.16.4:20200630-045102.log.bz2 |
Description
Toralf Förster
2020-06-30 07:30:21 UTC
this seems to be either still an issue or a similarity to the one reported in bug 547284 Created attachment 647162 [details]
emerge-info.txt
Created attachment 647164 [details]
emerge-history.txt
Created attachment 647166 [details]
etc.portage.tbz2
Created attachment 647168 [details]
logs.tbz2
Created attachment 647170 [details]
net-dns:bind-9.16.4:20200630-045102.log.bz2
This seems to be the same bug but a completely different symptom:
>>> Install net-dns/bind-tools-9.16.4 into /var/tmp/portage/net-dns/bind-tools-9.16.4/image
!!! doman: delv.1 does not exist
* ERROR: net-dns/bind-tools-9.16.4::gentoo failed (install phase):
* doman failed
I.e. no file collision but /usr/share/man/man1/delv.1.bz2 is missing from the image to be installed:
hippopopus ~ # emerge -pqv '=net-dns/bind-tools-9.16.4::gentoo'
[ebuild U ] net-dns/bind-tools-9.16.4 [9.16.3] USE="caps ipv6 readline xml -doc -gssapi -idn -libedit -libressl"
I guess I'll try with 'doc' enabled and report back... BTW 9.16.3 re-emerges just fine (i.e. unmerge net-dns/bind-tools then emerge the older version.)
The manpages were removed from the top level Makefile.in in 9.16.4 - the only change from 9.16.3 - and they don't get built in 9.16.4 in my build. I still can't see if this is actually the same as the file collision issue, which I can't reproduce. My version of this bug has been fixed by the changes to bind-tools-9.16.4.ebuild which accommodate the new man page directory doc/man and now build the man pages in 'compile'. I don't understand how the file collision happened; I checked both 9.16.3 and 9.16.4 with "equery belongs" and the .bz2 file did belong to both, but that is expected: hippopopus /usr/portage/net-dns/bind-tools # equery belongs /usr/share/man/man1/delv.1.bz2 * Searching for /usr/share/man/man1/delv.1.bz2 ... net-dns/bind-tools-9.16.4 (/usr/share/man/man1/delv.1.bz2) bind-9.16.4.ebuild.orig --------------------------------------------------------------------------------------- # Let's get rid of those tools and their manpages since they're provided by bind-tools rm -f "${ED}"/usr/share/man/man1/{dig,host,nslookup}.1* || die rm -f "${ED}"/usr/share/man/man8/nsupdate.8* || die rm -f "${ED}"/usr/bin/{dig,host,nslookup,nsupdate} || die rm -f "${ED}"/usr/sbin/{dig,host,nslookup,nsupdate} || die --------------------------------------------------------------------------------------- portageq owners / /usr/share/man/man1/delv.1.bz2 net-dns/bind-tools-9.16.4 /usr/share/man/man1/delv.1.bz2 portageq owners / /usr/share/man/man1/nsupdate.1.bz2 net-dns/bind-tools-9.16.4 /usr/share/man/man1/nsupdate.1.bz2 This is wrong. The owner of these file must be bind-tools not bind! You see man_dir is wrong in bind-tools.ebuild. bind-tools-9.16.4.ebuild.orig -------------------------------------------------------------------------------------- local man_dir="${S}/doc/man" doman ${man_dir}/nsupdate.1 doman ${man_dir}/nsupdate.1 -------------------------------------------------------------------------------------- Probably Fix --> bind-tools-9.16.4.ebuild --> change man_dir to '/usr/share/man/man1' -------------------------------------------------------------------------------------- local man_dir="/usr/share/man/man1" -------------------------------------------------------------------------------------- ++++++++++++++++ Probably Fix --> bind-9.16.4.ebuild --> add {delv,nsupdate} -------------------------------------------------------------------------------------- # Let's get rid of those tools and their manpages since they're provided by bind-tools rm -f "${ED}"/usr/share/man/man1/{dig,host,nslookup,delv,nsupdate}.1* || die rm -f "${ED}"/usr/share/man/man8/nsupdate.8* || die rm -f "${ED}"/usr/bin/{dig,host,nslookup,nsupdate} || die rm -f "${ED}"/usr/sbin/{dig,host,nslookup,nsupdate} || die -------------------------------------------------------------------------------------- Then we need to re-emerge bind-tools so it will take ownership. Update: 1) Don't touch bind-tools-9.16.4.ebuild now. Keep it as original. 2) rm -rf /usr/share/man/man1/nsupdate.1.bz2 /usr/share/man/man1/delv.1.bz2 3) re-emerge bind-tools-9.16.4.ebuild 3) Edit bind-9.16.4.ebuild --> Change line 196 --------------- - rm -f "${ED}"/usr/share/man/man1/{dig,host,nslookup}.1* || die + rm -f "${ED}"/usr/share/man/man1/{dig,host,nslookup,delv,nsupdate}.1* || die ------------------------------------------------ portageq owners / /usr/share/man/man1/delv.1.bz2 net-dns/bind-tools-9.16.4 /usr/share/man/man1/delv.1.bz2 portageq owners / /usr/share/man/man1/nsupdate.1.bz2 net-dns/bind-tools-9.16.4 /usr/share/man/man1/nsupdate.1.bz2 Done. I don't have bind installed, only bind-tools, which is why I saw what was apparently a different bug (in bind-tools) which is now fixed. Should be fixed now. |