diff options
author | Sven Wegener <swegener@gentoo.org> | 2005-01-17 19:40:10 +0000 |
---|---|---|
committer | Sven Wegener <swegener@gentoo.org> | 2005-01-17 19:40:10 +0000 |
commit | 78eda1ab62689315cae2a37be818982ba5d789f7 (patch) | |
tree | 14ec5f7e35dd0d5ab0189234039f483081faf1dc /net-nntp/inn | |
parent | Moved from net-news/nntpswitch to net-nntp/nntpswitch. (diff) | |
download | gentoo-2-78eda1ab62689315cae2a37be818982ba5d789f7.tar.gz gentoo-2-78eda1ab62689315cae2a37be818982ba5d789f7.tar.bz2 gentoo-2-78eda1ab62689315cae2a37be818982ba5d789f7.zip |
Moved from net-news/inn to net-nntp/inn.
Diffstat (limited to 'net-nntp/inn')
-rw-r--r-- | net-nntp/inn/ChangeLog | 75 | ||||
-rw-r--r-- | net-nntp/inn/Manifest | 6 | ||||
-rw-r--r-- | net-nntp/inn/files/2.4.1-berkdb.patch | 32 | ||||
-rw-r--r-- | net-nntp/inn/files/digest-inn-2.4.1 | 2 | ||||
-rw-r--r-- | net-nntp/inn/files/innd | 21 | ||||
-rw-r--r-- | net-nntp/inn/inn-2.4.1.ebuild | 264 | ||||
-rw-r--r-- | net-nntp/inn/metadata.xml | 5 |
7 files changed, 405 insertions, 0 deletions
diff --git a/net-nntp/inn/ChangeLog b/net-nntp/inn/ChangeLog new file mode 100644 index 000000000000..f894ba00c482 --- /dev/null +++ b/net-nntp/inn/ChangeLog @@ -0,0 +1,75 @@ +# ChangeLog for net-news/inn +# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2 +# $Header: /var/cvsroot/gentoo-x86/net-nntp/inn/ChangeLog,v 1.1 2005/01/17 19:40:10 swegener Exp $ + +*inn-2.4.1 (17 Jan 2005) + + 17 Jan 2005; Sven Wegener <swegener@gentoo.org> +metadata.xml, + +files/2.4.1-berkdb.patch, +files/innd, +inn-2.4.1.ebuild: + Moved from net-news/inn to net-nntp/inn. + + 15 Oct 2004; David Holm <dholm@gentoo.org> inn-2.4.1.ebuild: + Added to ~ppc. + + 02 Oct 2004; Sven Wegener <swegener@gentoo.org> -inn-2.3.5.ebuild: + Removed old ebuild. + + 27 Sep 2004; Sven Wegener <swegener@gentoo.org> inn-2.4.1.ebuild: + Added elibtoolize to src_unpack() because the included libtool is broken. + Modified to not use lazy bindings. + + 12 Sep 2004; Sven Wegener <swegener@gentoo.org> files/2.4.1-berkdb.patch, + inn-2.4.1.ebuild: + Added a patch from Maurice Mueller <maurice_mueller@gmx.de> to make inn + compile with BerkeleyDB 4.x. Modified ebuild to correctly initialize tagged + hash table in pkg_config and install SSL certificates into the right location + to prevent overwriting them when upgrading. + + 08 Sep 2004; Sven Wegener <swegener@gentoo.org> +files/2.4.1-berkdb.patch, + files/innd, inn-2.4.1.ebuild: + Added support for BerkeleyDB via the USE flag berkdb. Added support for the + local USE flags innkeywords and inntaggedhash that enable automatic keyword + generation support and use a tagged hash table for history. + +*inn-2.4.1 (07 Sep 2004) + + 07 Sep 2004; Sven Wegener <swegener@gentoo.org> +inn-2.4.1.ebuild: + Version bump, package.mask'ed for testing, please report bugs to bug #29020. + + 19 Jun 2004; Sven Wegener <swegener@gentoo.org> +metadata.xml: + Added metadata.xml + + 15 Mar 2004; Michael Sterrett <mr_bones_@gentoo.org> inn-2.3.5.ebuild: + don't unset/assign P; (bug #44712); use CFLAGS/CXXFLAGS; use use_with; don't + assign default to S; header fix; tidy + + 14 Mar 2004; Michael Sterrett <mr_bones_@gentoo.org> inn-2.3.3.ebuild: + clean older version + + 07 Dec 2003; Michael Sterrett <mr_bones_@gentoo.org> inn-2.3.5.ebuild: + chown x.y -> chown x:y (bug 35127) + + 05 Dec 2003; Chuck Short <zul@gentoo.org> inn-2.3.5.ebuild: + Chown fixes + + 12 Jun 2003; <msterret@gentoo.org> inn-2.3.3.ebuild, inn-2.3.5.ebuild: + add Header + +*inn-2.3.5 (17 Apr 2003) + + 17 Apr 2003; Martin Holzer <mholzer@gentoo.org> Manifest, inn-2.3.5.ebuild: + Version bumped. Ebuild submitted by Stefan Förster <gentoo@stefan-foerster.de> + in #14601. + +*inn-2.3.3 (13 Jun 2002) + + 26 Aug 2002; Seemant Kulleen <seemant@gentoo.org> inn-2.3.3.ebuild : + + The compile process does not like parallel make (emake). Thanks to: + psi-jack@myrealbox.com (Eric Renfro) in bug #7021 for finding and + reporting. + + 13 Jun 2002; Preston A. Elder <prez@gentoo.org> inn-2.3.3.ebuild, + files/digest-inn-2.3.3, files/innd, ChangeLog : + + - Added for the first time diff --git a/net-nntp/inn/Manifest b/net-nntp/inn/Manifest new file mode 100644 index 000000000000..e4dc99993765 --- /dev/null +++ b/net-nntp/inn/Manifest @@ -0,0 +1,6 @@ +MD5 92eade8ea983c3b5aee3b56ed8362512 ChangeLog 2679 +MD5 d4764f5c17f5e0b416f7ddf271c77d71 metadata.xml 161 +MD5 13c9fb371216ef57405b76b04f282d4e inn-2.4.1.ebuild 8193 +MD5 9bfea7a0644e2f3adc2738d86bfa2254 files/innd 436 +MD5 69e1740d0d4d85a272e0491fa1a7ddb7 files/2.4.1-berkdb.patch 1393 +MD5 12b5b155a7df558664f522f72ab5f723 files/digest-inn-2.4.1 118 diff --git a/net-nntp/inn/files/2.4.1-berkdb.patch b/net-nntp/inn/files/2.4.1-berkdb.patch new file mode 100644 index 000000000000..f6ea97f7497a --- /dev/null +++ b/net-nntp/inn/files/2.4.1-berkdb.patch @@ -0,0 +1,32 @@ +diff -Nur inn-2.4.1.orig/configure.in inn-2.4.1/configure.in +--- inn-2.4.1.orig/configure.in 2004-09-07 14:53:23.800246638 +0200 ++++ inn-2.4.1/configure.in 2004-09-07 14:55:04.045893609 +0200 +@@ -375,20 +375,20 @@ + done + fi + if test x"$BERKELEY_DB_DIR" = xyes ; then +- for v in db41 db4 db3 db2 ; do ++ for v in 4.2 4.1 4 3 2 ; do +- if test -d "/usr/local/include/$v" ; then ++ if test -d "/usr/local/include/db$v" ; then + BERKELEY_DB_LDFLAGS="-L/usr/local/lib" +- BERKELEY_DB_CFLAGS="-I/usr/local/include/$v" +- BERKELEY_DB_LIB="-l$v" ++ BERKELEY_DB_CFLAGS="-I/usr/local/include/db$v" ++ BERKELEY_DB_LIB="-ldb-$v" + AC_MSG_RESULT(FreeBSD locations) + break + fi + done + if test x"$BERKELEY_DB_LIB" = x ; then +- for v in db41 db4 db3 db2 ; do ++ for v in 4.2 4.1 4 3 2 ; do +- if test -d "/usr/include/$v" ; then ++ if test -d "/usr/include/db$v" ; then +- BERKELEY_DB_CFLAGS="-I/usr/include/$v" +- BERKELEY_DB_LIB="-l$v" ++ BERKELEY_DB_CFLAGS="-I/usr/include/db$v" ++ BERKELEY_DB_LIB="-ldb-$v" + AC_MSG_RESULT(Linux locations) + break + fi diff --git a/net-nntp/inn/files/digest-inn-2.4.1 b/net-nntp/inn/files/digest-inn-2.4.1 new file mode 100644 index 000000000000..e6fc48c71de1 --- /dev/null +++ b/net-nntp/inn/files/digest-inn-2.4.1 @@ -0,0 +1,2 @@ +MD5 bec635b6e70188071fdb539cd374f2ba inn-2.4.1.tar.gz 1849845 +MD5 aa35f4496d180e372cfa4ecdb9864f03 inn_db4.tar.gz 644 diff --git a/net-nntp/inn/files/innd b/net-nntp/inn/files/innd new file mode 100644 index 000000000000..ea2a392cf85d --- /dev/null +++ b/net-nntp/inn/files/innd @@ -0,0 +1,21 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-nntp/inn/files/innd,v 1.1 2005/01/17 19:40:10 swegener Exp $ + +depend() { + need net +} + +start() { + ebegin "Starting innd" + su - news -c /usr/lib/news/bin/rc.news + eend $? +} + +stop() { + ebegin "Stopping innd" + su - news -c '/usr/lib/news/bin/rc.news stop' + sleep 2 + eend $? +} diff --git a/net-nntp/inn/inn-2.4.1.ebuild b/net-nntp/inn/inn-2.4.1.ebuild new file mode 100644 index 000000000000..e598a0046906 --- /dev/null +++ b/net-nntp/inn/inn-2.4.1.ebuild @@ -0,0 +1,264 @@ +# Copyright 1999-2005 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-nntp/inn/inn-2.4.1.ebuild,v 1.1 2005/01/17 19:40:10 swegener Exp $ + +inherit fixheadtails ssl-cert eutils libtool flag-o-matic + +DESCRIPTION="The Internet News daemon, fully featured NNTP server" +HOMEPAGE="http://www.isc.org/products/INN" +SRC_URI="ftp://ftp.isc.org/isc/inn/${P}.tar.gz + http://mauricem.com/inn_db4.tar.gz" +SLOT="0" +LICENSE="as-is BSD GPL-2" +KEYWORDS="~x86 ~ppc" +IUSE="ipv6 kerberos sasl ssl perl python tcltk berkdb inntaggedhash innkeywords" + +RDEPEND="virtual/mta + kerberos? ( virtual/krb5 ) + sasl? ( >=dev-libs/cyrus-sasl-2 ) + ssl? ( dev-libs/openssl ) + perl? ( dev-lang/perl ) + python? ( dev-lang/python ) + tcltk? ( dev-lang/tcl ) + berkdb? ( sys-libs/db ) + virtual/gzip" +DEPEND="${RDEPEND} + >=sys-devel/autoconf-2.13 + sys-devel/libtool + >=sys-apps/sed-4" + +append-ldflags -Wl,-z,now + +src_unpack() { + unpack ${A} + cd ${S} + + epatch ${FILESDIR}/2.4.1-berkdb.patch + epatch ${WORKDIR}/db_patch.patch + + ht_fix_file configure.in support/fixscript.in + + export WANT_AUTOCONF="2.1" + autoconf || die "autoconf failed" + + sed -i \ + -e "s/ -B .OLD//" \ + Makefile.global.in \ + control/Makefile \ + doc/man/Makefile + + elibtoolize || die "elibtoolize failed" +} + +src_compile() { + econf \ + --prefix=/usr/lib/news \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-control-dir=/usr/lib/news/bin/control \ + --with-etc-dir=/etc/news \ + --with-filter-dir=/usr/lib/news/bin/filter \ + --with-db-dir=/var/spool/news/db \ + --with-doc-dir=/usr/share/doc/${PF} \ + --with-spool-dir=/var/spool/news \ + --with-log-dir=/var/log/news \ + --with-run-dir=/var/run/news \ + --with-tmp-path=/var/spool/news/tmp \ + --enable-libtool \ + --enable-setgid-inews \ + --enable-uucp-rnews \ + --with-gnu-ld \ + $(use_with perl) \ + $(use_with python) \ + $(use_with tcltk tcl) \ + $(use_with kerberos kerberos /usr) \ + $(use_with sasl) \ + $(use_with ssl openssl) \ + $(use_with berkdb berkeleydb) \ + $(use_enable ipv6) \ + $(use_enable !inntaggedhash largefiles) \ + $(use_enable inntaggedhash tagged-hash) \ + $(use_enable innkeywords keywords) \ + || die "econf failed" + emake -j1 P="" || die "emake failed" +} + +src_install() { + make DESTDIR=${D} P="" install || die "make install failed" + + chown -R root.root ${D}/usr/{lib/news/{lib,include},share/{doc,man}} + chmod 644 ${D}/etc/news/* + for file in control.ctl expire.ctl incoming.conf nntpsend.ctl passwd.nntp readers.conf + do + chmod 640 ${D}/etc/news/${file} + done + + # Prevent old db/* files from being overwritten + dodir /usr/share/doc/${PF}/dbexamples + for db_file in active active.times distributions history newsgroups + do + if [ -f ${D}/var/spool/news/db/${db_file} ] + then + mv ${D}/var/spool/news/db/${db_file} ${D}/usr/share/doc/${PF}/dbexamples + fi + done + + keepdir \ + /var/{log,run}/news \ + /var/spool/news/{,archive,articles,db,incoming{,/bad},innfeed,outgoing,overview,tmp} + + dodoc ChangeLog MANIFEST README* doc/checklist + use ipv6 && dodoc doc/IPv6-info + + # So other programs can build against INN. (eg. Suck) + insinto /usr/lib/news/include + doins include/*.h + + exeinto /etc/init.d + doexe ${FILESDIR}/innd innd + + if use ssl + then + insinto /etc/news/cert + + docert cert + fowners news:news /etc/news/cert/cert.{crt,csr,key,pem} + + for cert in cert.{crt,csr,key,pem} + do + dosym "/etc/news/cert/${cert}" "/usr/lib/news/lib/${cert}" + done + fi +} + +pkg_postinst() { + for db_file in active active.times distributions history newsgroups + do + if [ -f ${ROOT}/usr/share/doc/${PF}/dbexamples/${db_file} \ + -a ! -f ${ROOT}/var/spool/news/db/${db_file} ] + then + cp -p ${ROOT}/usr/share/doc/${PF}/dbexamples/${db_file} \ + ${ROOT}/var/spool/news/db/${db_file} + chmod 664 ${ROOT}/var/spool/news/db/${db_file} + fi + done + + chown -R news:news ${ROOT}/var/{log,spool}/news + + einfo "Do not forget to update your cron entries, and also run" + einfo "makedbz if you need to. If this is a first-time installation" + einfo "a minimal active file has been installed. You will need to" + einfo "touch history and run 'makedbz -i' to initialize the history" + einfo "database. See INSTALL for more information." + einfo + einfo "You need to assign a real shell to the news user, or else" + einfo "starting inn will fail. You can use 'usermod -s /bin/bash news'" + einfo "for this." + + if use ssl + then + einfo + einfo "You may want to start nnrpd manually for native ssl support." + einfo "If you choose to do so, automating this with a bootscript might" + einfo "also be a good choice." + einfo "Have a look at man nnrpd for valid parameters." + fi +} + +pkg_postrm() { + einfo + einfo "If you want your newsspool or altered configuration files" + einfo "to be removed, please do so now manually." + einfo +} + +pkg_config() { + NEWSSPOOL_DIR="${ROOT}/var/spool/news" + NEWS_SHELL="`awk -F':' '/^news:/ {print $7;}' ${ROOT}/etc/passwd`" + NEWS_ERRFLAG="0" + + if [ "${NEWS_SHELL}" == "/bin/false" -o "${NEWS_SHELL}" == "/dev/null" ] + then + if [ ${UID} -eq 0 ] + then + einfo 'Changing shell to /bin/bash for user news...' + usermod -s /bin/bash news + else + NEWS_ERRFLAG=1 + eerror '' + eerror 'Could not change shell for user news.' + eerror 'Please run "usermod -s /bin/bash news" as root.' + fi + else + einfo "Shell for user news unchanged ('${NEWS_SHELL}')." + if [ "${NEWS_SHELL}" != "/bin/sh" -a "${NEWS_SHELL}" != "/bin/bash" ] + then + ewarn "You might want to change it to '/bin/bash', though." + fi + fi + + if [ ! -e "${NEWSSPOOL_DIR}/db/history}" ] + then + if [ ! -f "${NEWSSPOOL_DIR}/db/history.dir" \ + -a ! -f "${NEWSSPOOL_DIR}/db/history.pag" \ + -a ! -f "${NEWSSPOOL_DIR}/db/history.hash" \ + -a ! -f "${NEWSSPOOL_DIR}/db/history.index" ] + then + einfo 'Building history database...' + touch "${NEWSSPOOL_DIR}/db/history" + chown news:news "${NEWSSPOOL_DIR}/db/history" + chmod 644 "${NEWSSPOOL_DIR}/db/history" + su - news -c "/usr/lib/news/bin/makedbz -i" + mv -f "${NEWSSPOOL_DIR}/db/history.n.dir" "${NEWSSPOOL_DIR}/db/history.dir" + [ -f "${NEWSSPOOL_DIR}/db/history.n.pag" ] && mv -f "${NEWSSPOOL_DIR}/db/history.n.pag" "${NEWSSPOOL_DIR}/db/history.pag" + [ -f "${NEWSSPOOL_DIR}/db/history.n.hash" ] && mv -f "${NEWSSPOOL_DIR}/db/history.n.hash" "${NEWSSPOOL_DIR}/db/history.hash" + [ -f "${NEWSSPOOL_DIR}/db/history.n.index" ] && mv -f "${NEWSSPOOL_DIR}/db/history.n.index" "${NEWSSPOOL_DIR}/db/history.index" + su - news -c "/usr/lib/news/bin/makehistory" + else + NEWS_ERRFLAG="1" + eerror + eerror "Your installation seems to be screwed up." + eerror "${NEWSSPOOL_DIR}/db/history does not exist, but there's" + eerror "one of the files history.dir, history.hash or history.index" + eerror "within ${NEWSSPOOL_DIR}/db." + eerror "Use your backup to restore the history database." + fi + else + einfo "${NEWSSPOOL_DIR}/db/history found. Leaving history database as it is." + fi + + INNCFG_INODES="`sed -e '/innwatchspoolnodes/ ! d' /etc/news/inn.conf | sed -e 's/[^ ]*[ ]*\([^ ]*\)/\1/'`" + INNSPOOL_INODES="`df -Pi ${NEWSSPOOL_DIR} | sed -e 's/[^ ]*[ ]*\([^ ]*\).*/\1/' | sed -e '1 d'`" + if [ ${INNCFG_INODES} -gt ${INNSPOOL_INODES} ] + then + ewarn "Setting innwatchspoolinodes to zero, because the filesystem behind" + ewarn "$NEWSSPOOL_DIR works without inodes." + ewarn + cp /etc/news/inn.conf /etc/news/inn.conf.OLD + einfo "A copy of your old inn.conf has been saved to /etc/news/inn.conf.OLD." + sed -i -e '/innwatchspoolnodes/ s/\([^ ]*\)\([ ]*\).*/\1\20/' /etc/news/inn.conf + chown news:news /etc/news/inn.conf + chmod 644 /etc/news/inn.conf + fi + + INNCHECK_LINES="`su - news -c "/usr/lib/news/bin/inncheck | wc -l"`" + if [ "${INNCHECK_LINES}" -gt 0 ] + then + NEWS_ERRFLAG="1" + ewarn "inncheck most certainly found an error." + ewarn "Please check its output:" + eerror "`su - news -c /usr/lib/news/bin/inncheck`" + fi + + if [ "${NEWS_ERRFLAG}" -gt 0 ] + then + eerror + eerror "There were one or more errors/warnings checking your configuration." + eerror "Please read inn's documentation and fix them accordingly." + else + einfo + einfo "Inn configuration tests passed successfully." + einfo + ewarn "Please ensure you configured inn properly." + fi +} diff --git a/net-nntp/inn/metadata.xml b/net-nntp/inn/metadata.xml new file mode 100644 index 000000000000..4d0ebe73a55f --- /dev/null +++ b/net-nntp/inn/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>net-news</herd> +</pkgmetadata> |