Bug 168039 - net-* ebuilds abusing ROOT
|
Bug#:
168039
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: All
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: qa@gentoo.org
|
Reported By: ciaran.mccreesh@googlemail.com
|
|
Component: Applications
|
|
|
URL:
|
|
Summary: net-* ebuilds abusing ROOT
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2007-02-22 21:34 0000
|
QA checks for package directory /net-analyzer/net-snmp:
/net-analyzer/net-snmp/net-snmp-5.2.1.2-r1.ebuild
93: --with-logfile="${ROOT}/var/log/net-snmpd.log" \
94: --with-persistent-directory="${ROOT}/var/lib/net-snmp" \
/net-analyzer/net-snmp/net-snmp-5.2.2-r3.ebuild
91: --with-logfile="${ROOT}/var/log/net-snmpd.log" \
92: --with-persistent-directory="${ROOT}/var/lib/net-snmp" \
/net-analyzer/net-snmp/net-snmp-5.3.0.1.ebuild
92: --with-logfile="${ROOT}/var/log/net-snmpd.log" \
93: --with-persistent-directory="${ROOT}/var/lib/net-snmp" \
/net-analyzer/net-snmp/net-snmp-5.3.1-r1.ebuild
97: --with-logfile="${ROOT}/var/log/net-snmpd.log" \
98: --with-persistent-directory="${ROOT}/var/lib/net-snmp" \
/net-analyzer/net-snmp/net-snmp-5.3.1.ebuild
92: --with-logfile="${ROOT}/var/log/net-snmpd.log" \
93: --with-persistent-directory="${ROOT}/var/lib/net-snmp" \
/net-analyzer/net-snmp/net-snmp-5.4.ebuild
89: --with-logfile="${ROOT}/var/log/net-snmpd.log" \
90: --with-persistent-directory="${ROOT}/var/lib/net-snmp" \
herds: netmon
QA checks for package directory /net-analyzer/sguil-server:
/net-analyzer/sguil-server/sguil-server-0.5.3.ebuild
68: if ! [ -f ${ROOT}/etc/sguil/sguild.key ]; then
/net-analyzer/sguil-server/sguil-server-0.6.0_p1.ebuild
71: if ! [ -f ${ROOT}/etc/sguil/sguild.key ]; then
/net-analyzer/sguil-server/sguil-server-0.6.1.ebuild
71: if ! [ -f ${ROOT}/etc/sguil/sguild.key ]; then
herds: netmon
maintainer: <strerror@gentoo.org>
QA checks for package directory /net-dialup/ltmodem:
/net-dialup/ltmodem/ltmodem-8.31_alpha10-r3.ebuild
85: if [ -e "${ROOT}/dev/.devfsd" ] ; then
87: elif [ -e "${ROOT}/dev/.udev" ] ; then
herds: net-dialup
QA checks for package directory /net-dialup/rp-pppoe:
/net-dialup/rp-pppoe/rp-pppoe-3.8.ebuild
64: if [ -n "${PPPD_VER}" ] && [ -f
"${ROOT}/usr/lib/pppd/${PPPD_VER}/rp-pppoe.so" ] ; then
herds: net-dialup
QA checks for package directory /net-dialup/slmodem:
/net-dialup/slmodem/slmodem-2.9.11_pre20051101-r3.ebuild
100: if [ -e "${ROOT}/dev/.devfsd" ] ; then
102: elif [ -e "${ROOT}/dev/.udev" ] ; then
/net-dialup/slmodem/slmodem-2.9.11_pre20061021-r1.ebuild
102: if [ -e "${ROOT}/dev/.devfsd" ] ; then
104: elif [ -e "${ROOT}/dev/.udev" ] ; then
herds: net-dialup
QA checks for package directory /net-dns/ddclient:
/net-dns/ddclient/ddclient-3.7.0.ebuild
48: [[ -e "${ROOT}/etc/${PN}/${sample}" ]] && sample="${sample}.sample"
herds: no-herd
maintainer: Matthew Smith <matthewsmith@iinet.net.au>
QA checks for package directory /net-dns/pdnsd:
/net-dns/pdnsd/pdnsd-1.2.4-r1.ebuild
60: IPS=$(grep ^nameserver "${ROOT}/etc/resolv.conf" | sed -e 's/nameserver
\(.*\)/\tip=\1;/g' | xargs)
82: [ -f "${ROOT}/var/lib/pdnsd/pdnsd.cache" ] && \
83: cp "${ROOT}/var/lib/pdnsd/pdnsd.cache" "${D}/var/cache/pdnsd/pdnsd.cache"
87: [ -f "${ROOT}/var/cache/pdnsd/pdnsd.cache" ] && \
/net-dns/pdnsd/pdnsd-1.2.4-r3.ebuild
60: IPS=$(grep ^nameserver "${ROOT}/etc/resolv.conf" | sed -e 's/nameserver
\(.*\)/\tip=\1;/g' | xargs)
82: [ -f "${ROOT}/var/lib/pdnsd/pdnsd.cache" ] && \
83: cp "${ROOT}/var/lib/pdnsd/pdnsd.cache" "${D}/var/cache/pdnsd/pdnsd.cache"
87: [ -f "${ROOT}/var/cache/pdnsd/pdnsd.cache" ] && \
/net-dns/pdnsd/pdnsd-1.2.5.ebuild
53: IPS=$(grep ^nameserver "${ROOT}/etc/resolv.conf" | sed -e 's/nameserver
\(.*\)/\tip=\1;/g' | xargs)
75: [ -f "${ROOT}/var/lib/pdnsd/pdnsd.cache" ] && \
76: cp "${ROOT}/var/lib/pdnsd/pdnsd.cache" "${D}/var/cache/pdnsd/pdnsd.cache"
80: [ -f "${ROOT}/var/cache/pdnsd/pdnsd.cache" ] && \
herds: net-dialup
QA checks for package directory /net-firewall/ipp2p:
/net-firewall/ipp2p/ipp2p-0.8.2-r2.ebuild
44: local IPTABLES_VERSION="$("${ROOT}"/sbin/iptables --version | cut -f2
-dv)"
46: IPTABLES_SRC="${ROOT}/usr" IPTABLES_VERSION="${IPTABLES_VERSION}"
libipt_ipp2p.so \
52: IPTABLES_SRC="${ROOT}/usr" IPTABLES_VERSION="${IPTABLES_VERSION}" \
herds: no-herd
maintainer: <eradicator@gentoo.org>
maintainer: Alin Năstac <mrness@gentoo.org>
QA checks for package directory /net-firewall/ipset:
/net-firewall/ipset/ipset-2.1.0.20050119.ebuild
48: if [ -L ${ROOT}/usr/src/linux -o -d ${ROOT}/usr/src/linux ]; then
herds: no-herd
maintainer: <robbat2@gentoo.org>
QA checks for package directory /net-firewall/kmyfirewall:
/net-firewall/kmyfirewall/kmyfirewall-1.0.1.ebuild
24: echo -e
"[PATHS]\nDistribution=gentoo\nIPTPath=${ROOT}sbin/iptables\nModprobePath=${ROOT}sbin/modprobe\nrcDefaultPath=${ROOT}etc/runlevels/default/"
>> ${S}/kmyfirewall/kmyfirewallrc}
herds: netmon
QA checks for package directory /net-ftp/glftpd:
/net-ftp/glftpd/glftpd-2.00.ebuild
48: export MAKETLS=$(yesno [[ ! -e ${ROOT}/etc/glftpd-dsa.pem ]])
59: if [[ -e ${ROOT}/etc/glftpd-dsa.pem ]] ; then
60: cp "${ROOT}"/etc/glftpd-dsa.pem "${D}"/etc/
/net-ftp/glftpd/glftpd-2.01.ebuild
46: export MAKETLS=$(yesno [[ ! -e ${ROOT}/etc/glftpd-dsa.pem ]])
57: if [[ -e ${ROOT}/etc/glftpd-dsa.pem ]] ; then
58: cp "${ROOT}"/etc/glftpd-dsa.pem "${D}"/etc/
maintainer: <maintainer-needed@gentoo.org>
QA checks for package directory /net-ftp/tnftp:
/net-ftp/tnftp/tnftp-20050625-r1.ebuild
31: if [ ! -e "${ROOT}"/usr/bin/${x} ]
herds: no-herd
maintainer: Sven Wegenery <swegener@gentoo.org>
QA checks for package directory /net-ftp/twoftpd:
/net-ftp/twoftpd/twoftpd-1.21.ebuild
26: echo "$(tc-getCC) ${CFLAGS} -I${ROOT}/usr/include/bglibs" > conf-cc
27: echo "$(tc-getCC) -s -L${ROOT}/usr/lib/bglibs" > conf-ld
herds: no-herd
maintainer: Thilo Bangert <bangert@gentoo.org>
QA checks for package directory /net-irc/xchatosd:
/net-irc/xchatosd/xchatosd-5.19.ebuild
25: cp -f "${ROOT}"/usr/include/xchat/xchat-plugin.h "${S}"/xchat-plugin.h
herds: net-irc
QA checks for package directory /net-libs/libssh:
/net-libs/libssh/libssh-0.1.ebuild
21: [ ! -e "${ROOT}/usr/bin/ssh" ] && dosym ${PN}-ssh /usr/bin/ssh
22: [ ! -e "${ROOT}/usr/bin/sftp" ] && dosym ${PN}-ssh /usr/bin/sftp
herds: netmon
QA checks for package directory /net-mail/dovecot:
/net-mail/dovecot/dovecot-1.0_rc22.ebuild
123: if ! [[ -e "${ROOT}"/etc/ssl/dovecot/server.pem && \
124: -e "${ROOT}"/etc/ssl/dovecot/server.key ]]; then
126: insinto "${ROOT}"/etc/ssl/dovecot
/net-mail/dovecot/dovecot-1.0_rc23.ebuild
123: if ! [[ -e "${ROOT}"/etc/ssl/dovecot/server.pem && \
124: -e "${ROOT}"/etc/ssl/dovecot/server.key ]]; then
126: insinto "${ROOT}"/etc/ssl/dovecot
herds: net-mail
maintainer: Roy Marples <uberlord@gentoo.org>
QA checks for package directory /net-mail/mailman:
/net-mail/mailman/mailman-2.1.9.ebuild
98: for i in ${ROOT}/var/mailman ${ROOT}/home/mailman \
99: ${ROOT}/usr/local/mailman ${INSTALLDIR}
/net-mail/mailman/mailman-2.1.9_rc1.ebuild
99: for i in ${ROOT}/var/mailman ${ROOT}/home/mailman \
100: ${ROOT}/usr/local/mailman ${INSTALLDIR}
herds: net-mail
maintainer: <hanno@gentoo.org>
QA checks for package directory /net-mail/qmail-autoresponder:
/net-mail/qmail-autoresponder/qmail-autoresponder-0.96.1-r1.ebuild
38: echo "${ROOT}/usr/include/bglibs" > conf-bgincs
39: echo "${ROOT}/usr/lib/bglibs" > conf-bglibs
/net-mail/qmail-autoresponder/qmail-autoresponder-0.96.2.ebuild
27: echo "${ROOT}/usr/include/bglibs" > conf-bgincs
28: echo "${ROOT}/usr/lib/bglibs" > conf-bglibs
herds: qmail
maintainer: Thilo Bangert <bangert@gentoo.org>
QA checks for package directory /net-mail/qmail-qfilter:
/net-mail/qmail-qfilter/qmail-qfilter-2.1.ebuild
28: echo "${ROOT}/usr/include/bglibs" > conf-bgincs
29: echo "${ROOT}/usr/lib/bglibs" > conf-bglibs
herds: qmail
maintainer: Thilo Bangert <bangert@gentoo.org>
QA checks for package directory /net-misc/asterisk:
/net-misc/asterisk/asterisk-1.2.13-r1.ebuild
327: elog "into ${ROOT}etc/asterisk, use etc-update or dispatch-conf to
update them"
329: elog "Configuration samples have been moved to:
$ROOT/usr/share/doc/${PF}/conf"
/net-misc/asterisk/asterisk-1.2.13.ebuild
323: elog "into ${ROOT}etc/asterisk, use etc-update or dispatch-conf to
update them"
325: elog "Configuration samples have been moved to:
$ROOT/usr/share/doc/${PF}/conf"
/net-misc/asterisk/asterisk-1.2.14.ebuild
312: elog "into ${ROOT}etc/asterisk, use etc-update or dispatch-conf to
update them"
314: elog "Configuration samples have been moved to:
$ROOT/usr/share/doc/${PF}/conf"
herds: voip
maintainer: Rajiv Aaron Manglani <rajiv@gentoo.org>
maintainer: Stefan Knoblich <stkn@gentoo.org>
QA checks for package directory /net-misc/ebayagent:
/net-misc/ebayagent/ebayagent-0.9.11-r2.ebuild
30: sed -i -e "s|X_eBayAgentLocation\ \=>\ \"\",|X_eBayAgentLocation\ \=>\
\"${ROOT}\/usr\/bin\/eBayAgent\",|" ${S}/XeBayAgent.pl
herds: perl
maintainer: <perl@gentoo.org>
QA checks for package directory /net-misc/gfax:
/net-misc/gfax/gfax-0.7.4_pre20051223.ebuild
42: addwrite "${ROOT}/root/.gconf" "${ROOT}/root/.gconfd"
herds: comm-fax
maintainer: Stefan Schweizer <genstef@gentoo.org>
QA checks for package directory /net-misc/ossh:
/net-misc/ossh/ossh-1.5.12.ebuild
31: append-flags -I${ROOT}/usr/include/openssl
maintainer: <maintainer-needed@gentoo.org>
QA checks for package directory /net-misc/ssh:
/net-misc/ssh/ssh-3.2.9.1-r1.ebuild
45: # TODO: fix this crap which messes with $ROOT
46: if [ -e ${ROOT}/etc/ssh2/hostkey ] ; then
49: doins ${ROOT}/etc/ssh2/hostkey{,.pub}
herds: no-herd
maintainer: <humpback@gentoo.org>
QA checks for package directory /net-nds/ypserv:
/net-nds/ypserv/ypserv-2.18.ebuild
45: if [ -f ${ROOT}/var/yp/Makefile ]; then
47: cp ${ROOT}/var/yp/Makefile ${D}/var/yp/Makefile
/net-nds/ypserv/ypserv-2.19.ebuild
45: if [ -f ${ROOT}/var/yp/Makefile ]; then
47: cp ${ROOT}/var/yp/Makefile ${D}/var/yp/Makefile
herds: no-herd
maintainer: Jeremy Huddleston <eradicator@gentoo.org>
QA checks for package directory /net-p2p/bittornado:
/net-p2p/bittornado/bittornado-0.3.15.ebuild
44: cp -pPR ${ROOT}/etc/mailcap ${D}/etc/
/net-p2p/bittornado/bittornado-0.3.18.ebuild
44: cp -pPR ${ROOT}/etc/mailcap ${D}/etc/
herds: net-p2p
QA checks for package directory /net-p2p/transmission:
/net-p2p/transmission/transmission-0.6.1-r1.ebuild
44: make PREFIX="${D}${ROOT}usr" LOCALEDIR="\$(PREFIX)/share/locale" install
\
herds: net-p2p
maintainer: Saleem Abdulrasool <compnerd@gentoo.org>
maintainer: Jon Hood <squinky86@gentoo.org>
QA checks for package directory /net-proxy/wwwoffle:
/net-proxy/wwwoffle/wwwoffle-2.9-r1.ebuild
47: if [ -f "${ROOT}/etc/wwwoffle.conf" ] ; then
49: cp "${ROOT}/etc/wwwoffle.conf" conf/wwwoffle.conf
75: #if [ -f "${ROOT}/etc/wwwoffle.conf" ]; then
/net-proxy/wwwoffle/wwwoffle-2.9a.ebuild
45: if [ -f "${ROOT}/etc/wwwoffle.conf" ] ; then
47: cp "${ROOT}/etc/wwwoffle.conf" conf/wwwoffle.conf
73: #if [ -f "${ROOT}/etc/wwwoffle.conf" ]; then
herds: net-proxy
maintainer: Alin Nastac <mrness@gentoo.org>
QA checks for package directory /net-wireless/hostapd:
/net-wireless/hostapd/hostapd-0.4.8.ebuild
62: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> ${CONFIG}
/net-wireless/hostapd/hostapd-0.4.9.ebuild
62: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> ${CONFIG}
/net-wireless/hostapd/hostapd-0.5.2.ebuild
66: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> ${CONFIG}
/net-wireless/hostapd/hostapd-0.5.3.ebuild
70: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> ${CONFIG}
/net-wireless/hostapd/hostapd-0.5.4.ebuild
67: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> ${CONFIG}
/net-wireless/hostapd/hostapd-0.5.7.ebuild
66: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> ${CONFIG}
herds: mobile
QA checks for package directory /net-wireless/wpa_supplicant:
/net-wireless/wpa_supplicant/wpa_supplicant-0.4.9.ebuild
102: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> ${CONFIG}
/net-wireless/wpa_supplicant/wpa_supplicant-0.5.4.ebuild
105: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> "${CONFIG}"
/net-wireless/wpa_supplicant/wpa_supplicant-0.5.5.ebuild
124: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> .config
/net-wireless/wpa_supplicant/wpa_supplicant-0.5.6.ebuild
120: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> .config
/net-wireless/wpa_supplicant/wpa_supplicant-0.5.7.ebuild
121: echo "CFLAGS += -I${ROOT}/usr/include/madwifi" >> .config
herds: mobile
maintainer: Roy Marples <uberlord@gentoo.org>
QA checks for package directory /net-www/mod_watch:
/net-www/mod_watch/mod_watch-3.18-r2.ebuild
38: keepdir "${ROOT}"/var/lib/${PN}
/net-www/mod_watch/mod_watch-4.03-r2.ebuild
43: keepdir "${ROOT}"/var/lib/${PN}
herds: apache
maintainer: <apache-bugs@gentoo.org>
(that's them all)
(In reply to comment #0)
> * ROOT can't be used correctly in src_*, since ROOT might be different when
> merging a binary package. For example, a binary package might be built with
> ROOT=/ and then installed onto a system using ROOT=/somewhere.
Is it OK to create a variable in pkg_setup that references ROOT for file
existance so that src_install can use it to install a file or not? Otherwise
how should this be handled?
(In reply to comment #4)
> Is it OK to create a variable in pkg_setup that references ROOT for file
> existance so that src_install can use it to install a file or not? Otherwise
> how should this be handled?
Install the file. If, based on the contents of $ROOT, you decide that you don't
want to merge it, remove it in pkg_preinst.
(In reply to comment #5)
> (In reply to comment #4)
> > Is it OK to create a variable in pkg_setup that references ROOT for file
> > existance so that src_install can use it to install a file or not? Otherwise
> > how should this be handled?
>
> Install the file. If, based on the contents of $ROOT, you decide that you don't
> want to merge it, remove it in pkg_preinst.
>
How about a solution where it doesn't have to waste half an hour on slow
machines making a file that it doesn't need once installed?
SSL certs shouldn't be in a bin pkg anyway, but due to the nature of the eclass
it needs to be created in src_install - unless I'm missing something.
If you have a solution that won't create incomplete binary packages when / on
the build host happens to have the file in question then I'll be interested to
know.
ssl certs don't belong in binary packages - they are specific to the machine
it's generated on. But due to the nature of the ssl-cert eclass it has to be
used in src_*.
Until that is resolved dovecot and probably all server related packages that
use this eclass will continue to violate this QA report.
(In reply to comment #8)
> ssl certs don't belong in binary packages - they are specific to the machine
> it's generated on. But due to the nature of the ssl-cert eclass it has to be
> used in src_*.
In which case that code is still broken, in the case when / on the build
machine does not have the file and the ssl certs end up in the package.
> Until that is resolved dovecot and probably all server related packages that
> use this eclass will continue to violate this QA report.
So we need to fix the eclass. Thanks for pointing this out.
perl can neither confirm nor deny if these are our natural ROOTs.
(In reply to comment #6)
> How about a solution where it doesn't have to waste half an hour on slow
> machines making a file that it doesn't need once installed?
>
> SSL certs shouldn't be in a bin pkg anyway, but due to the nature of the eclass
> it needs to be created in src_install - unless I'm missing something.
You'll need to modify the eclass to let you create it in pkg_preinst.
net-ftp/twoftpd
net-mail/qmail-autoresponder
net-mail/qmail-qfilter
fixed!
thanks!
I did net-p2p/*, removing herd and affected maintainers.
no asterisk-1.0.x ebuilds have issues. voip: check the 1.2.x ebuilds.
net-firewall/ipp2p and net-proxy/wwwoffle have been fixed
following net-dialup packages have been fixed:
net-dns/pdnsd
net-dialup/ltmodem
net-dialup/rp-pppoe
net-dialup/slmodem
Fixed net-wireless/hostapd for the mobile herd. That leaves wpa_supplicant but
that is Uberlord's package.
(In reply to comment #20)
> Fixed net-wireless/hostapd for the mobile herd. That leaves wpa_supplicant but
> that is Uberlord's package.
Read comment #11 - it's already fixed.
(In reply to comment #21)
> (In reply to comment #20)
> > Fixed net-wireless/hostapd for the mobile herd. That leaves wpa_supplicant but
> > that is Uberlord's package.
>
> Read comment #11 - it's already fixed.
>
Sorry about that. Removing mobile.
net-www/mod_watch fixed.
Best regards, CHTEKK.
all fixed, except ddclient, glftpd, libssh, ossh and ypserv, for which i'll
open individual reports.
thanks.