diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-nntp | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-nntp')
107 files changed, 4875 insertions, 0 deletions
diff --git a/net-nntp/brag/Manifest b/net-nntp/brag/Manifest new file mode 100644 index 000000000000..495577931b3a --- /dev/null +++ b/net-nntp/brag/Manifest @@ -0,0 +1 @@ +DIST brag-1.4.3.tar.gz 18230 SHA256 f2c8110c38805c31ad181f4737c26e766dc8ecfa2bce158197b985be892cece6 diff --git a/net-nntp/brag/brag-1.4.3.ebuild b/net-nntp/brag/brag-1.4.3.ebuild new file mode 100644 index 000000000000..fb8a19a89de7 --- /dev/null +++ b/net-nntp/brag/brag-1.4.3.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +DESCRIPTION="Brag collects and assembles multipart binary attachments from newsgroups" +HOMEPAGE="http://brag.sourceforge.net/" +SRC_URI="mirror://sourceforge/brag/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ppc x86" +IUSE="" + +RDEPEND=" + dev-lang/tcl:0 + app-text/uudeview" + +src_compile() { :; } + +src_install() { + dobin brag + dodoc CHANGES README + doman brag.1 +} diff --git a/net-nntp/brag/metadata.xml b/net-nntp/brag/metadata.xml new file mode 100644 index 000000000000..a1e90794ffc0 --- /dev/null +++ b/net-nntp/brag/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>net-news</herd> + <upstream> + <remote-id type="sourceforge">brag</remote-id> + </upstream> +</pkgmetadata> diff --git a/net-nntp/hellanzb/Manifest b/net-nntp/hellanzb/Manifest new file mode 100644 index 000000000000..1f70809ac417 --- /dev/null +++ b/net-nntp/hellanzb/Manifest @@ -0,0 +1 @@ +DIST hellanzb-0.13.tar.gz 163698 SHA256 565b08725eb92ac1e278fa7df2c7b27b21588c4e24c140fddbec4a5625159127 diff --git a/net-nntp/hellanzb/files/hellanzb-0.13-Choose_interface_to_bind_on.patch b/net-nntp/hellanzb/files/hellanzb-0.13-Choose_interface_to_bind_on.patch new file mode 100644 index 000000000000..a254a9d23c9a --- /dev/null +++ b/net-nntp/hellanzb/files/hellanzb-0.13-Choose_interface_to_bind_on.patch @@ -0,0 +1,52 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 001-Choose_interface_to_bind_on +## by Adam Cécile (Le_Vert) <gandalf@le-vert.net> +## +## DP: Add a Hellanzb.XMLRPC_SERVER option which allowusers to set on which +## DP: IP address XMLRPC server will be binded. + +@DPATCH@ +diff -u hellanzb-0.11/Hellanzb/HellaXMLRPC/__init__.py hellanzb-0.11/Hellanzb/HellaXMLRPC/__init__.py.new +--- hellanzb-0.11/Hellanzb/HellaXMLRPC/__init__.py 2007-01-30 03:51:05.000000000 +0100 ++++ hellanzb-0.11/Hellanzb/HellaXMLRPC/__init__.py.new 2007-02-10 15:19:14.000000000 +0100 +@@ -597,9 +597,9 @@ + try: + if SECURE: + secure = HtPasswdWrapper(hxmlrpcs, 'hellanzb', Hellanzb.XMLRPC_PASSWORD, 'hellanzb XML RPC') +- reactor.listenTCP(Hellanzb.XMLRPC_PORT, Site(secure)) ++ reactor.listenTCP(Hellanzb.XMLRPC_PORT, Site(secure), 50, Hellanzb.XMLRPC_SERVER_BIND) + else: +- reactor.listenTCP(Hellanzb.XMLRPC_PORT, Site(hxmlrpcs)) ++ reactor.listenTCP(Hellanzb.XMLRPC_PORT, Site(hxmlrpcs), 50, Hellanzb.XMLRPC_SERVER_BIND) + except CannotListenError, cle: + error(str(cle)) + raise FatalError('Cannot bind to XML RPC port, is another hellanzb queue daemon already running?') + +diff -u hellanzb-0.11/etc/hellanzb.conf.sample hellanzb-0.11/etc/hellanzb.conf.sample.new +--- hellanzb-0.11/etc/hellanzb.conf.sample 2007-01-30 03:51:05.000000000 +0100 ++++ hellanzb-0.11/etc/hellanzb.conf.sample.new 2007-02-10 15:18:10.000000000 +0100 +@@ -151,6 +151,10 @@ + # Hostname for the XMLRPC client to connect to. By default, localhost + Hellanzb.XMLRPC_SERVER = 'localhost' + ++# IP address on which the XMLRPC Server will be binded to. ++# Type '0.0.0.0' for any interfaces, '127.0.0.1' will disable remote access ++Hellanzb.XMLRPC_SERVER_BIND = '127.0.0.1' ++ + # Port number the XML RPC server will listen on, and the client will connect to. + # Set to 'None' (without the quotes!) for no XML RPC server + Hellanzb.XMLRPC_PORT = 8760 +diff -u hellanzb-0.11/Hellanzb/Core.py hellanzb-0.11/Hellanzb/Core.py.new +--- hellanzb-0.11/Hellanzb/Core.py 2007-01-30 03:51:05.000000000 +0100 ++++ hellanzb-0.11/Hellanzb/Core.py.new 2007-02-10 15:18:10.000000000 +0100 +@@ -113,7 +106,9 @@ + + if not hasattr(Hellanzb, 'SKIP_UNRAR') or Hellanzb.SKIP_UNRAR is None: + Hellanzb.SKIP_UNRAR = False +- ++ if not hasattr(Hellanzb, 'XMLRPC_SERVER_BIND') or Hellanzb.XMLRPC_SERVER_BIND is None: ++ print 'Warning: Hellanzb.XMLRPC_SERVER_BIND is not set, bind to 127.0.0.1' ++ Hellanzb.XMLRPC_SERVER_BIND = '127.0.0.1' + + if not hasattr(Hellanzb, 'SMART_PAR'): + Hellanzb.SMART_PAR = True diff --git a/net-nntp/hellanzb/files/hellanzb-0.13-Fix_conf_file_search_path.patch b/net-nntp/hellanzb/files/hellanzb-0.13-Fix_conf_file_search_path.patch new file mode 100644 index 000000000000..ee22dd20c1ed --- /dev/null +++ b/net-nntp/hellanzb/files/hellanzb-0.13-Fix_conf_file_search_path.patch @@ -0,0 +1,31 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 000-Fix_conf_file_search_path by +## Adam Cécile (Le_Vert) <gandalf@le-vert.net> +## +## DP: Search for configuration file in $HOME/.hellanzb/ or /etc/ + +@DPATCH@ + +diff -u hellanzb-0.11/Hellanzb/Core.py hellanzb-0.11/Hellanzb/Core.py.new +--- hellanzb-0.11/Hellanzb/Core.py 2007-02-10 15:01:50.000000000 +0100 ++++ hellanzb-0.11/Hellanzb/Core.py.new 2007-02-10 15:05:48.000000000 +0100 +@@ -33,16 +33,9 @@ + else: + error('Unable to load specified config file: ' + optionalConfigFile) + sys.exit(1) +- +- # look for conf in this order: sys.prefix, ./, or ./etc/ +- confDirs = [os.path.join(sys.prefix, 'etc')] +- try: +- confDirs.append(os.path.join(os.getcwd(), 'etc')) +- confDirs.append(os.getcwd()) +- except OSError, ose: +- if ose.errno != 2: +- raise +- # OSError: [Errno 2] No such file or directory. cwd doesn't exist ++ ++ # Look for conf file in /etc or $HOME/.hellanzb ++ confDirs = [ os.path.expanduser('~') + '/.hellanzb', '/etc' ] + + # hard coding preferred Darwin config file location, kind of lame. but I'd rather do + # this then make an etc dir in os x's Python.framework directory diff --git a/net-nntp/hellanzb/files/hellanzb-0.13-datafiles.patch b/net-nntp/hellanzb/files/hellanzb-0.13-datafiles.patch new file mode 100644 index 000000000000..88c5899c5b8e --- /dev/null +++ b/net-nntp/hellanzb/files/hellanzb-0.13-datafiles.patch @@ -0,0 +1,13 @@ +Index: hellanzb-0.13/setup.py +=================================================================== +--- hellanzb-0.13.orig/setup.py ++++ hellanzb-0.13/setup.py +@@ -38,8 +38,6 @@ def runSetup(): + packages = [ 'Hellanzb', 'Hellanzb.NZBLeecher', 'Hellanzb.HellaXMLRPC', + 'Hellanzb.external', 'Hellanzb.external.elementtree' ], + scripts = [ 'hellanzb.py' ], +- data_files = [ ( 'etc', [ 'etc/hellanzb.conf.sample' ] ), +- ( 'share/doc/hellanzb', [ 'CHANGELOG', 'CREDITS', 'README', 'LICENSE' ] ) ], + ) + py2app_options = dict( + app = [ 'hellanzb.py' ], diff --git a/net-nntp/hellanzb/files/hellanzb-0.13-fix_multiples_hosts.diff b/net-nntp/hellanzb/files/hellanzb-0.13-fix_multiples_hosts.diff new file mode 100644 index 000000000000..5cf39c311a82 --- /dev/null +++ b/net-nntp/hellanzb/files/hellanzb-0.13-fix_multiples_hosts.diff @@ -0,0 +1,107 @@ +diff -r bdbcba80e0fa Hellanzb/NZBLeecher/Protocol.py +--- a/Hellanzb/NZBLeecher/Protocol.py Wed Nov 14 10:00:29 2007 +0100 ++++ b/Hellanzb/NZBLeecher/Protocol.py Thu Nov 22 22:32:04 2007 +0100 +@@ -27,18 +27,14 @@ PHI = 1.6180339887498948 # (1 + math.sqr + PHI = 1.6180339887498948 # (1 + math.sqrt(5)) / 2 + class NZBLeecherFactory(ReconnectingClientFactory): + +- def __init__(self, username, password, activeTimeout, antiIdleTimeout, hostname, ++ def __init__(self, username, password, activeTimeout, antiIdleTimeout, + serverPoolName, skipGroupCmd, fillServerPriority = 0, color = None): + self.username = username + self.password = password + self.antiIdleTimeout = antiIdleTimeout + self.activeTimeout = activeTimeout +- self.hostname = hostname + self.serverPoolName = serverPoolName + self.fillServerPriority = fillServerPriority +- +- self.host = None +- self.port = None + + # statistics for the current session (sessions end when downloading stops on all + # clients). sessionReadBytes and sessionStartime are used to calculate the average +@@ -88,6 +84,7 @@ class NZBLeecherFactory(ReconnectingClie + p.factory = self + p.id = self.clientIds[0] + self.clientIds.remove(p.id) ++ p.host, p.port = addr.host, addr.port + + # All clients inherit the factory's anti idle timeout setting + # FIXME: I don't think there's any reason to copy these values to the +@@ -323,7 +320,7 @@ class NZBLeecher(NNTPClient, TimeoutMixi + "Override for notification when authInfoFailed() action fails" + debug(str(self) + ' AUTHINFO failed: ' + str(err)) + # FIXME: This gives us too much scroll. Need to only do it selectively +- #error(self.factory.hostname + '[' + str(self.id).zfill(2) + '] Authorization failed: ' + str(err)) ++ #error(self.host + '[' + str(self.id).zfill(2) + '] Authorization failed: ' + str(err)) + self.transport.loseConnection() + + def connectionMade(self): +@@ -428,7 +425,7 @@ class NZBLeecher(NNTPClient, TimeoutMixi + login """ + if self.username == None and self.password == None: + warn('Could not MODE READER on no auth server (%s:%i), returned: %s' % \ +- (self.factory.host, self.factory.port, str(err))) ++ (self.host, self.port, str(err))) + reactor.callLater(0, self.fetchNextNZBSegment) + elif not self.isLoggedIn: + self.setReaderAfterLogin = True +diff -r bdbcba80e0fa Hellanzb/NZBLeecher/__init__.py +--- a/Hellanzb/NZBLeecher/__init__.py Wed Nov 14 10:00:29 2007 +0100 ++++ b/Hellanzb/NZBLeecher/__init__.py Thu Nov 22 22:32:04 2007 +0100 +@@ -122,30 +122,28 @@ def connectServer(serverName, serverDict + connectionCount = 0 + hosts = serverDict['hosts'] + connections = int(serverDict['connections']) ++ antiIdle = int(setWithDefault(serverDict, 'antiIdle', defaultAntiIdle)) ++ idleTimeout = int(setWithDefault(serverDict, 'idleTimeout', defaultIdleTimeout)) ++ skipGroupCmd = setWithDefault(serverDict, 'skipGroupCmd', False) ++ fillServer = setWithDefault(serverDict, 'fillserver', 0) ++ useSSL = setWithDefault(serverDict, 'ssl', False) ++ ++ nsf = NZBLeecherFactory(serverDict['username'], serverDict['password'], ++ idleTimeout, antiIdle, serverName, skipGroupCmd, ++ fillServer) ++ color = nsf.color ++ Hellanzb.nsfs.append(nsf) ++ ++ preWrappedNsf = nsf ++ nsf = HellaThrottlingFactory(nsf) + + for host in hosts: +- antiIdle = int(setWithDefault(serverDict, 'antiIdle', defaultAntiIdle)) +- idleTimeout = int(setWithDefault(serverDict, 'idleTimeout', defaultIdleTimeout)) +- skipGroupCmd = setWithDefault(serverDict, 'skipGroupCmd', False) +- fillServer = setWithDefault(serverDict, 'fillserver', 0) +- useSSL = setWithDefault(serverDict, 'ssl', False) +- +- nsf = NZBLeecherFactory(serverDict['username'], serverDict['password'], +- idleTimeout, antiIdle, host, serverName, skipGroupCmd, +- fillServer) +- color = nsf.color +- Hellanzb.nsfs.append(nsf) +- + split = host.split(':') + host = split[0] + if len(split) == 2: + port = int(split[1]) + else: + port = 119 +- nsf.host, nsf.port = host, port +- +- preWrappedNsf = nsf +- nsf = HellaThrottlingFactory(nsf) + + ctxf = None + if useSSL: +@@ -195,7 +193,8 @@ def connectServer(serverName, serverDict + if antiIdle == 0: + preWrappedNsf.leecherConnectors.append(connector) + connectionCount += 1 +- preWrappedNsf.setConnectionCount(connectionCount) ++ ++ preWrappedNsf.setConnectionCount(connectionCount) + + if antiIdle == 0: + action = '' diff --git a/net-nntp/hellanzb/files/hellanzb-0.13-gettinggroup.patch b/net-nntp/hellanzb/files/hellanzb-0.13-gettinggroup.patch new file mode 100644 index 000000000000..2f7af1ad1a96 --- /dev/null +++ b/net-nntp/hellanzb/files/hellanzb-0.13-gettinggroup.patch @@ -0,0 +1,14 @@ +diff -r 92936345c3f5 Hellanzb/NZBLeecher/Protocol.py +--- a/Hellanzb/NZBLeecher/Protocol.py Mon Aug 18 10:38:55 2008 +0200 ++++ b/Hellanzb/NZBLeecher/Protocol.py Mon Aug 18 11:34:20 2008 +0200 +@@ -655,7 +655,7 @@ + reactor.callInThread(decode, segment) + + def gotGroup(self, group): +- group = group[3] ++ group = self.gettingGroup + self.activeGroups.append(group) + self.gettingGroup = None + debug(str(self) + ' got GROUP: ' + group) + + diff --git a/net-nntp/hellanzb/files/hellanzb-0.13-python_26_fixes.patch b/net-nntp/hellanzb/files/hellanzb-0.13-python_26_fixes.patch new file mode 100644 index 000000000000..4f981adedbb3 --- /dev/null +++ b/net-nntp/hellanzb/files/hellanzb-0.13-python_26_fixes.patch @@ -0,0 +1,90 @@ +https://bugs.gentoo.org/show_bug.cgi?id=262881 + +Index: Hellanzb/Growl.py +=================================================================== +--- Hellanzb/Growl.py (Revision 1094) ++++ Hellanzb/Growl.py (Arbeitskopie) +@@ -7,7 +7,13 @@ + __contributors__ = "Ingmar J Stein (Growl Team)" + + import struct +-import md5 ++ ++# The md5 module has been deprecated as of Python 2.6. ++try: ++ from hashlib import md5 ++except ImportError: ++ from md5 import md5 ++ + from socket import AF_INET, SOCK_DGRAM, socket + + GROWL_UDP_PORT=9887 +@@ -51,7 +57,7 @@ + self.data += encoded + for default in self.defaults: + self.data += struct.pack("B", default) +- self.checksum = md5.new() ++ self.checksum = md5() + self.checksum.update(self.data) + if self.password: + self.checksum.update(self.password) +@@ -89,7 +95,7 @@ + self.data += self.title + self.data += self.description + self.data += self.application +- self.checksum = md5.new() ++ self.checksum = md5() + self.checksum.update(self.data) + if password: + self.checksum.update(password) +Index: Hellanzb/Util.py +=================================================================== +--- Hellanzb/Util.py (Revision 1094) ++++ Hellanzb/Util.py (Arbeitskopie) +@@ -28,9 +28,6 @@ + + class FatalError(Exception): + """ An error that will cause the program to exit """ +- def __init__(self, message): +- self.args = [message] +- self.message = message + + class EmptyForThisPool(Empty): + """ The queue is empty in terms of our current serverPool, but there are still segments to +Index: Hellanzb/HellaXMLRPC/HtPasswdAuth.py +=================================================================== +--- Hellanzb/HellaXMLRPC/HtPasswdAuth.py (Revision 1094) ++++ Hellanzb/HellaXMLRPC/HtPasswdAuth.py (Arbeitskopie) +@@ -8,7 +8,13 @@ + (c) Copyright 2005 Philip Jenvey + [See end of file] + """ +-import md5 ++ ++# The md5 module has been deprecated as of Python 2.6. ++try: ++ from hashlib import md5 ++except ImportError: ++ from md5 import md5 ++ + from twisted.web import static + from twisted.web.resource import Resource + +@@ -70,7 +76,7 @@ + + self.user = user + +- m = md5.new() ++ m = md5() + m.update(password) + del password + self.passwordDigest = m.digest() +@@ -90,7 +96,7 @@ + def authenticateUser(self, request): + username, password = request.getUser(), request.getPassword() + +- m = md5.new() ++ m = md5() + m.update(password) + + authenticated = username == self.user and self.passwordDigest == m.digest() diff --git a/net-nntp/hellanzb/files/hellanzb-0.13-twisted-10.0.0.patch b/net-nntp/hellanzb/files/hellanzb-0.13-twisted-10.0.0.patch new file mode 100644 index 000000000000..e1a57892ceef --- /dev/null +++ b/net-nntp/hellanzb/files/hellanzb-0.13-twisted-10.0.0.patch @@ -0,0 +1,36 @@ +https://bugs.gentoo.org/show_bug.cgi?id=316725 +http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=573221 + +--- xmlrpc.py 2010-03-10 18:29:19.000000000 -0600 ++++ /usr/share/pyshared/Hellanzb/HellaXMLRPC/xmlrpc.py 2010-03-10 18:30:03.000000000 -0600 +@@ -31,7 +31,7 @@ + from twisted.python import log, reflect + + import twisted.copyright +-if twisted.copyright.version >= '2.0.0': ++if twisted.copyright.version >= '2.0.0' or twisted.copyright.version >= '10.0.0': + from twisted.web import http + else: + from twisted.protocols import http +--- HtPasswdAuth.py 2010-03-10 18:30:29.000000000 -0600 ++++ /usr/share/pyshared/Hellanzb/HellaXMLRPC/HtPasswdAuth.py 2010-03-10 18:30:49.000000000 -0600 +@@ -19,7 +19,7 @@ + from twisted.web.resource import Resource + + import twisted.copyright +-if twisted.copyright.version >= '2.0.0': ++if twisted.copyright.version >= '2.0.0' or twisted.copyright.version >= '10.0.0': + from twisted.web import http + else: + from twisted.protocols import http +--- HellaReactor.py 2010-03-10 18:22:34.000000000 -0600 ++++ /usr/share/pyshared/Hellanzb/HellaReactor.py 2010-03-10 18:30:07.000000000 -0600 +@@ -9,7 +9,7 @@ + import Hellanzb, sys, time + + import twisted.copyright +-if twisted.copyright.version >= '2.0.0': ++if twisted.copyright.version >= '2.0.0' or twisted.copyright.version >= '10.0.0': + from twisted.internet.selectreactor import SelectReactor + from twisted.internet.selectreactor import _NO_FILENO + from twisted.internet.selectreactor import _NO_FILEDESC diff --git a/net-nntp/hellanzb/files/hellanzb.conf b/net-nntp/hellanzb/files/hellanzb.conf new file mode 100644 index 000000000000..e6553f89a76b --- /dev/null +++ b/net-nntp/hellanzb/files/hellanzb.conf @@ -0,0 +1,19 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +# /etc/conf.d/hellanzb +# Config file for hellanzb init script + +# Which user to run hellanzb as, you should change this. +HELLA_USER="root" +HELLA_GROUP="root" + +# Location of config file, create a copy from /etc/hellanzb.conf for this. +# Make sure the user specified above can read this file. +HELLA_CONFIGFILE="/etc/hellanzb.conf" + +# Specify some other cli-options to hellanzb.py if you want. +HELLA_OPTS="" + +# All the other options to hellanzb can be configured in ${CONFIG_FILE}. diff --git a/net-nntp/hellanzb/files/hellanzb.init b/net-nntp/hellanzb/files/hellanzb.init new file mode 100644 index 000000000000..be318d56c49d --- /dev/null +++ b/net-nntp/hellanzb/files/hellanzb.init @@ -0,0 +1,41 @@ +#!/sbin/runscript +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +opts="start stop" + +depend() { + need net +} + +start() { + ebegin "Starting hellanzb" + if ! check_config ; then + eend 1 + return 1 + fi + if [ "${RC_CMD}" = "restart" ] ; then + sleep 1 # wait for socket to be released + fi + + start-stop-daemon --start -c ${HELLA_USER} \ + -g ${HELLA_GROUP} --name hellanzb.py \ + --exec /usr/bin/hellanzb.py -- \ + -D -c ${HELLA_CONFIGFILE} ${HELLA_OPTS} &> /dev/null + eend $? +} + +stop() { + ebegin "Stopping hellanzb" + /usr/bin/hellanzb.py shutdown &> /dev/null + eend $? +} + +check_config() { + if [ ! -e ${HELLA_CONFIGFILE} ] ; then + eerror "ERROR: can't find ${HELLA_CONFIGFILE}." + return 1 + else + return 0 + fi +} diff --git a/net-nntp/hellanzb/hellanzb-0.13-r8.ebuild b/net-nntp/hellanzb/hellanzb-0.13-r8.ebuild new file mode 100644 index 000000000000..4e7159c3cd1e --- /dev/null +++ b/net-nntp/hellanzb/hellanzb-0.13-r8.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="3" +PYTHON_DEPEND="2" + +inherit distutils eutils + +DESCRIPTION="Retrieves and processes .nzb files" +HOMEPAGE="http://www.hellanzb.com/" +SRC_URI="http://www.hellanzb.com/distfiles/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-solaris" +IUSE="libnotify ssl" + +RDEPEND=">=dev-python/twisted-core-2.0 + dev-python/twisted-web + || ( app-arch/unrar + app-arch/rar ) + app-arch/par2cmdline + ssl? ( dev-python/pyopenssl ) + libnotify? ( dev-python/notify-python )" + +DEPEND="" + +DOCS="CHANGELOG CREDITS PKG-INFO README" +PYTHON_MODNAME="Hellanzb" + +pkg_setup() { + python_set_active_version 2 + python_pkg_setup +} + +src_prepare() { + distutils_src_prepare + + epatch "${FILESDIR}/${P}-datafiles.patch" + epatch "${FILESDIR}/${P}-Fix_conf_file_search_path.patch" + epatch "${FILESDIR}/${P}-Choose_interface_to_bind_on.patch" + epatch "${FILESDIR}/${P}-fix_multiples_hosts.diff" + epatch "${FILESDIR}/${P}-gettinggroup.patch" + epatch "${FILESDIR}/${P}-python_26_fixes.patch" + epatch "${FILESDIR}/${P}-twisted-10.0.0.patch" +} + +src_install() { + distutils_src_install + + newconfd "${FILESDIR}/hellanzb.conf" hellanzb + newinitd "${FILESDIR}/hellanzb.init" hellanzb + + insinto etc + doins etc/hellanzb.conf.sample +} + +pkg_postinst() { + distutils_pkg_postinst + + elog "You can start hellanzb in the background automatically by using" + elog "the init-script. To do this, add it to your default runlevel:" + elog "" + elog " rc-update add hellanzb default" + elog "" + elog "Use this command to start the daemon now:" + elog "" + elog " /etc/init.d/hellanzb start" + elog "" + elog "You will have to config /etc/conf.d/hellanzb before the init-script" + elog "will work. It is recommended that you change the user under which" + elog "the daemon will run." +} diff --git a/net-nntp/hellanzb/metadata.xml b/net-nntp/hellanzb/metadata.xml new file mode 100644 index 000000000000..12beccf5f895 --- /dev/null +++ b/net-nntp/hellanzb/metadata.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>net-news</herd> + <maintainer> + <email>aballier@gentoo.org</email> + <name>Alexis Ballier</name> + </maintainer> + <longdescription lang="en"> + hellanzb is a Python application designed for *nix environments that + retrieves nzb files and fully processes them. The goal being to make + getting files from Usenet (e.g.: Giganews Newsgroups) as hands-free as + possible. Once fully installed, all thats required is moving an nzb file + to the queue directory. The rest; fetching, par-checking, un-raring, + etc. is taken care of by hellanzb. + </longdescription> +</pkgmetadata> + diff --git a/net-nntp/inn/Manifest b/net-nntp/inn/Manifest new file mode 100644 index 000000000000..00dc8d70d58b --- /dev/null +++ b/net-nntp/inn/Manifest @@ -0,0 +1,3 @@ +DIST inn-2.5.3.tar.gz 2412119 SHA256 60f0042b144499680cc577a4330aeaac5dac20c5994649c0e945d32b5f8dbcf1 SHA512 e579944571f0ec4fcdbf86de8458342075ce08f60df046bc8c45969b39f396ede8f5034f734542e1c64fb7792ae01c117c6a7af170fe5a43e1d0b2693f34d392 WHIRLPOOL a6d08020bfc458ad52567d225f14ef2f92fd605767c7ae4292724e3a3f49e1b42630fd787e7f79aae8a16d236479cef13b9531862eae050db839d3d0530f7999 +DIST inn-2.5.4.tar.gz 2408600 SHA256 5b62240c3074f2f38b3bcc656c343c587f2a923ec9d45e19f0d4ce269cb3f3f4 SHA512 f632599d009e8965d1b0ce7fef84dfbe48034c3a86825694a5ca4311123347647f9a4b534cff59820437f619ec09867bcff16f8f18c705e056eeea6493bc5441 WHIRLPOOL a313cb90e5dd55f4db5b70ede6b6d98561d2601f8d27e1b9b3983b90491b5ab300f0571d5fc1ac74f7892997ff6219189c863b122d569fe8673f3fcd13b0b67a +DIST inn-2.5.5.tar.gz 2419841 SHA256 4245602c2c30fd3fe38513e9403c8d0ea4eb76256961591f97da630c341053bf SHA512 aada60b15952810fa31c3b2078b4ca1b1e560cee348cc81d076e0ba1f8b785497310d60aca89b9ecc4af85a1493eefa8a2b976cb349b8ea96482c93cbcf049f1 WHIRLPOOL b931d0f6a1e60b0157fafcc269e84d4f1f6c914ca7b95799be1a99feeec5c5568e41a9c7384da122d05eac7393d457a612be9ffbb79a01122e0c37c1de76785a diff --git a/net-nntp/inn/files/inn-2.5.3-ar.patch b/net-nntp/inn/files/inn-2.5.3-ar.patch new file mode 100644 index 000000000000..ac4f8158c44f --- /dev/null +++ b/net-nntp/inn/files/inn-2.5.3-ar.patch @@ -0,0 +1,37 @@ +Use system AR. + +Gentoo bug #461254. + +--- lib/Makefile ++++ lib/Makefile +@@ -53,7 +53,7 @@ + -rpath $(PATHLIB) -version-info 2:0:0 + + libinn.a: $(OBJECTS) +- ar r $@ $(OBJECTS) ++ $(AR) r $@ $(OBJECTS) + $(RANLIB) libinn.a + + .c.o .c.lo: +--- storage/Makefile ++++ storage/Makefile +@@ -55,7 +55,7 @@ + -rpath $(PATHLIB) -version-info 2:0:0 + + libstorage.a: $(OBJECTS) +- ar r $@ $(OBJECTS) ++ $(AR) r $@ $(OBJECTS) + $(RANLIB) libstorage.a + + # Make.methods is included in the distribution tarball since some non-GNU +--- history/Makefile ++++ history/Makefile +@@ -51,7 +51,7 @@ + -rpath $(PATHLIB) -version-info 2:0:0 + + libinnhist.a: $(OBJECTS) +- ar r $@ $(OBJECTS) ++ $(AR) r $@ $(OBJECTS) + $(RANLIB) libinnhist.a + + # Try to set up these rules so that buildconfig is only run once. diff --git a/net-nntp/inn/files/inn-2.5.3-tests.patch b/net-nntp/inn/files/inn-2.5.3-tests.patch new file mode 100644 index 000000000000..6511508308d6 --- /dev/null +++ b/net-nntp/inn/files/inn-2.5.3-tests.patch @@ -0,0 +1,19 @@ +Certain filesystems (such as reiserfs) cannot properly report +the number of free inodes. In this case, inndf reports an absurdly +high number instead of nothing, which standard df does. +There seems to be some confusion about which FOO_MAX is returned, +so this patch adds an actual value known to be returned. + +See bug #348490. + +--- tests/util/inndf.t ++++ tests/util/inndf.t +@@ -62,7 +62,7 @@ + real=`df -i . | sed 1d | awk '{ print $4 }'` + fi + try=`$inndf -i .` +- if [ "$try" = 4294967295 ] ; then ++ if [ "$try" = 4294967295 ] || [ "$try" = 2147483647 ] ; then + printcount "ok" + else + diff=`expr "$real" - "$try"` diff --git a/net-nntp/inn/files/innd b/net-nntp/inn/files/innd new file mode 100644 index 000000000000..b22ce0946d5d --- /dev/null +++ b/net-nntp/inn/files/innd @@ -0,0 +1,22 @@ +#!/sbin/runscript +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +depend() { + need net +} + +start() { + ebegin "Starting innd" + checkpath -d -m 0755 -o news:news /var/run/news + start-stop-daemon --start --user news --exec /usr/lib/news/bin/rc.news + eend $? +} + +stop() { + ebegin "Stopping innd" + start-stop-daemon --start --user news --exec /usr/lib/news/bin/rc.news -- stop + sleep 2 + eend $? +} diff --git a/net-nntp/inn/files/innd-r1 b/net-nntp/inn/files/innd-r1 new file mode 100644 index 000000000000..1169a6755b8b --- /dev/null +++ b/net-nntp/inn/files/innd-r1 @@ -0,0 +1,23 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +depend() { + need net +} + +start() { + ebegin "Starting ${SVCNAME}" + checkpath -d -m 0755 -o news:news /run/news + start-stop-daemon --start --user news --pidfile /run/news/${SVCNAME}.pid \ + --exec /usr/lib/news/bin/rc.news + eend $? +} + +stop() { + ebegin "Stopping ${SVCNAME}" + start-stop-daemon --start --user news --exec /usr/lib/news/bin/rc.news -- stop + sleep 2 + eend $? +} diff --git a/net-nntp/inn/inn-2.5.3-r1.ebuild b/net-nntp/inn/inn-2.5.3-r1.ebuild new file mode 100644 index 000000000000..7c45a9fc6646 --- /dev/null +++ b/net-nntp/inn/inn-2.5.3-r1.ebuild @@ -0,0 +1,280 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils multilib python-single-r1 ssl-cert + +DESCRIPTION="The Internet News daemon, fully featured NNTP server" +HOMEPAGE="https://www.isc.org/software/inn" +SRC_URI="ftp://ftp.isc.org/isc/inn/${P}.tar.gz" + +# GPL-2 only for init script +LICENSE="ISC GPL-2+ public-domain BSD-4 BSD-2 RSA BSD MIT GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc x86" +IUSE="berkdb innkeywords inntaggedhash ipv6 kerberos perl python sasl ssl" + +DEPEND=" + virtual/mta + dev-perl/MIME-tools + sys-libs/pam + sys-libs/zlib + kerberos? ( virtual/krb5 ) + sasl? ( >=dev-libs/cyrus-sasl-2 ) + ssl? ( dev-libs/openssl ) + python? ( ${PYTHON_DEPS} ) + berkdb? ( sys-libs/db ) +" +RDEPEND="${DEPEND}" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-tests.patch + + sed -e 's: -B .OLD::' -i Makefile.global.in || die + + # Do not treat LDFLAGS as if it contained libraries to link to + sed -e 's:LDFLAGS::g' -i m4/python.m4 || die + + # We do not have the biff service, but we do have comsat + sed -e 's:"biff":"comsat":g' -i tests/lib/getnameinfo-t.c || die + + eautoreconf +} + +src_configure() { + econf \ + --prefix=/usr/$(get_libdir)/news \ + --sysconfdir=/etc/news \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-control-dir=/usr/$(get_libdir)/news/bin/control \ + --with-filter-dir=/usr/$(get_libdir)/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-dir=/var/spool/news/tmp \ + --disable-libtool \ + --with-gnu-ld \ + --enable-setgid-inews \ + --enable-uucp-rnews \ + $(use_with perl) \ + $(use_with python) \ + $(use_with kerberos kerberos /usr) \ + $(use_with sasl) \ + $(use_with ssl openssl) \ + $(use_with berkdb berkeleydb /usr) \ + $(use_enable ipv6) \ + $(use_enable !inntaggedhash largefiles) \ + $(use_enable inntaggedhash tagged-hash) \ + $(use_enable innkeywords keywords) +} + +src_install() { + emake DESTDIR="${D}/" P="" SPECIAL="" install + + chown -R root:0 \ + "${D}"/usr/$(get_libdir)/news/$(get_libdir) \ + "${D}"/usr/$(get_libdir)/news/include \ + "${D}"/usr/share/doc \ + "${D}"/usr/share/man \ + || die + chmod 644 "${D}"/etc/news/* || die + chmod 640 \ + "${D}"/etc/news/control.ctl \ + "${D}"/etc/news/expire.ctl \ + "${D}"/etc/news/incoming.conf \ + "${D}"/etc/news/nntpsend.ctl \ + "${D}"/etc/news/passwd.nntp \ + "${D}"/etc/news/readers.conf \ + || die + + # Prevent old db/* files from being overwritten + insinto /usr/share/inn/dbexamples + newins site/active.minimal active + newins site/newsgroups.minimal newsgroups + + keepdir \ + /var/log/news \ + /var/spool/news/archive \ + /var/spool/news/articles \ + /var/spool/news/db \ + /var/spool/news/incoming \ + /var/spool/news/incoming/bad \ + /var/spool/news/innfeed \ + /var/spool/news/outgoing \ + /var/spool/news/overview \ + /var/spool/news/tmp + + fowners news:news /var/log/news + + dodoc ChangeLog MANIFEST README* doc/checklist + use ipv6 && dodoc doc/IPv6-info + + # So other programs can build against INN + insinto /usr/$(get_libdir)/news/include + doins include/*.h + + doinitd "${FILESDIR}"/innd + + rm -r "${D}"/var/run +} + +pkg_postinst() { + for db_file in active newsgroups + do + [[ -f ${ROOT}/var/spool/news/db/${db_file} ]] && continue + + if [[ -f ${ROOT}/usr/share/inn/dbexamples/${db_file} ]] + then + cp "${ROOT}"/usr/share/inn/dbexamples/${db_file} \ + "${ROOT}"/var/spool/news/db/${db_file} + else + touch "${ROOT}"/var/spool/news/db/${db_file} + fi + + chown news:news "${ROOT}"/var/spool/news/db/${db_file} + chmod 664 "${ROOT}"/var/spool/news/db/${db_file} + done + + elog "Do not forget to update your cron entries, and also run" + elog "makedbz if you need to. If this is a first-time installation" + elog "a minimal active file has been installed. You will need to" + elog "touch history and run 'makedbz -i' to initialize the history" + elog "database. See INSTALL for more information." + elog + elog "You need to assign a real shell to the news user, or else" + elog "starting inn will fail. You can use 'usermod -s /bin/bash news'" + elog "for this." + + if use ssl + then + install_cert /etc/news/cert/cert + chown news:news \ + "${ROOT}"/etc/news/cert/cert.{crt,csr,key,pem} + + elog + elog "You may want to start nnrpd manually for native ssl support." + elog "If you choose to do so, automating this with a bootscript might" + elog "also be a good choice." + elog "Have a look at man nnrpd for valid parameters." + elog + elog "The certificate location in /etc/news/sasl.conf has been changed" + elog "to /etc/news/cert!" + + fi +} + +pkg_postrm() { + elog + elog "If you want your newsspool or altered configuration files" + elog "to be removed, please do so now manually." + elog +} + +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 || ${NEWS_SHELL} == /dev/null ]]; then + einfo "Changing shell to /bin/bash for user news..." + usermod -s /bin/bash news + else + einfo "Shell for user news unchanged ('${NEWS_SHELL}')." + if [[ ${NEWS_SHELL} != /bin/sh && ${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 \ + && ! -f ${NEWSSPOOL_DIR}/db/history.pag \ + && ! -f ${NEWSSPOOL_DIR}/db/history.hash \ + && ! -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 + + einfo "Running makedbz -i ..." + su - news -c "/usr/$(get_libdir)/news/bin/makedbz -i" + + einfo "Moving files into place ..." + [[ -f ${NEWSSPOOL_DIR}/db/history.n.dir ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.dir \ + "${NEWSSPOOL_DIR}"/db/history.dir + [[ -f ${NEWSSPOOL_DIR}/db/history.n.pag ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.pag \ + "${NEWSSPOOL_DIR}"/db/history.pag + [[ -f ${NEWSSPOOL_DIR}/db/history.n.hash ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.hash \ + "${NEWSSPOOL_DIR}"/db/history.hash + [[ -f ${NEWSSPOOL_DIR}/db/history.n.index ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.index \ + "${NEWSSPOOL_DIR}"/db/history.index + + einfo "Running makehistory ..." + su - news -c /usr/$(get_libdir)/news/bin/makehistory + else + NEWS_ERRFLAG="1" + 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." + einfo "Leaving history database as it is." + fi + + INNCFG_INODES=$( + sed /etc/news/inn.conf \ + -e '/innwatchspoolnodes/ ! d; s:[^ ]*[ ]*\([^ ]*\):\1:' + ) + INNSPOOL_INODES=$( + df -Pi ${NEWSSPOOL_DIR} | \ + sed -e 's:[^ ]*[ ]*\([^ ]*\).*:\1:; 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 /etc/news/inn.conf \ + -e '/innwatchspoolnodes/ s:\([^ ]*\)\([ ]*\).*:\1\20:' + chown news:news /etc/news/inn.conf + chmod 644 /etc/news/inn.conf + fi + + INNCHECK_LINES=$( + su - news -c "/usr/$(get_libdir)/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/$(get_libdir)/news/bin/inncheck`" + fi + + if [[ ${NEWS_ERRFLAG} -gt 0 ]]; then + eerror "There were one or more errors/warnings checking your" + eerror "configuration. Please read inn's documentation and" + eerror "fix them accordingly." + else + einfo "INN configuration tests passed successfully." + ewarn "Please ensure you have configured inn properly." + fi +} diff --git a/net-nntp/inn/inn-2.5.3-r2.ebuild b/net-nntp/inn/inn-2.5.3-r2.ebuild new file mode 100644 index 000000000000..5921291d5661 --- /dev/null +++ b/net-nntp/inn/inn-2.5.3-r2.ebuild @@ -0,0 +1,287 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils multilib python-single-r1 ssl-cert toolchain-funcs + +DESCRIPTION="The Internet News daemon, fully featured NNTP server" +HOMEPAGE="https://www.isc.org/software/inn" +SRC_URI="ftp://ftp.isc.org/isc/inn/${P}.tar.gz" + +# GPL-2 only for init script +LICENSE="ISC GPL-2+ public-domain BSD-4 BSD-2 RSA BSD MIT GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="berkdb innkeywords inntaggedhash ipv6 kerberos perl python sasl ssl" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND=" + virtual/mta + dev-perl/MIME-tools + sys-libs/pam + sys-libs/zlib + kerberos? ( virtual/krb5 ) + sasl? ( >=dev-libs/cyrus-sasl-2 ) + ssl? ( dev-libs/openssl ) + python? ( ${PYTHON_DEPS} ) + berkdb? ( sys-libs/db ) +" +RDEPEND="${DEPEND}" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + epatch "${FILESDIR}"/${P}-ar.patch + epatch "${FILESDIR}"/${P}-tests.patch + + sed -e 's: -B .OLD::' -i Makefile.global.in || die + + # Do not treat LDFLAGS as if it contained libraries to link to + sed -e 's:LDFLAGS::g' -i m4/python.m4 || die + + # We do not have the biff service, but we do have comsat + sed -e 's:"biff":"comsat":g' -i tests/lib/getnameinfo-t.c || die + + eautoreconf +} + +src_configure() { + tc-export AR + + econf \ + --prefix=/usr/$(get_libdir)/news \ + --sysconfdir=/etc/news \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-control-dir=/usr/$(get_libdir)/news/bin/control \ + --with-filter-dir=/usr/$(get_libdir)/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=/run/news \ + --with-tmp-dir=/var/spool/news/tmp \ + --disable-libtool \ + --with-gnu-ld \ + --enable-setgid-inews \ + --enable-uucp-rnews \ + $(use_with perl) \ + $(use_with python) \ + $(use_with kerberos kerberos /usr) \ + $(use_with sasl) \ + $(use_with ssl openssl) \ + $(use_with berkdb berkeleydb /usr) \ + $(use_enable ipv6) \ + $(use_enable !inntaggedhash largefiles) \ + $(use_enable inntaggedhash tagged-hash) \ + $(use_enable innkeywords keywords) +} + +src_install() { + emake DESTDIR="${D}/" P="" SPECIAL="" install + + chown -R root:0 \ + "${D}"/usr/$(get_libdir)/news/$(get_libdir) \ + "${D}"/usr/$(get_libdir)/news/include \ + "${D}"/usr/share/doc \ + "${D}"/usr/share/man \ + || die + chmod 644 "${D}"/etc/news/* || die + chmod 640 \ + "${D}"/etc/news/control.ctl \ + "${D}"/etc/news/expire.ctl \ + "${D}"/etc/news/incoming.conf \ + "${D}"/etc/news/innfeed.conf \ + "${D}"/etc/news/nntpsend.ctl \ + "${D}"/etc/news/passwd.nntp \ + "${D}"/etc/news/readers.conf \ + || die + + # Prevent old db/* files from being overwritten + insinto /usr/share/inn/dbexamples + newins site/active.minimal active + newins site/newsgroups.minimal newsgroups + + keepdir \ + /var/log/news \ + /var/spool/news/archive \ + /var/spool/news/articles \ + /var/spool/news/db \ + /var/spool/news/incoming \ + /var/spool/news/incoming/bad \ + /var/spool/news/innfeed \ + /var/spool/news/outgoing \ + /var/spool/news/overview \ + /var/spool/news/tmp + + fowners news:news /var/log/news + + dodoc ChangeLog MANIFEST README* doc/checklist + use ipv6 && dodoc doc/IPv6-info + + # So other programs can build against INN + insinto /usr/$(get_libdir)/news/include + doins include/*.h + + newinitd "${FILESDIR}"/innd-r1 innd +} + +pkg_postinst() { + for db_file in active newsgroups + do + [[ -f ${ROOT}var/spool/news/db/${db_file} ]] && continue + + if [[ -f ${ROOT}usr/share/inn/dbexamples/${db_file} ]] + then + cp "${ROOT}"usr/share/inn/dbexamples/${db_file} \ + "${ROOT}"var/spool/news/db/${db_file} + else + touch "${ROOT}"var/spool/news/db/${db_file} + fi + + chown news:news "${ROOT}"var/spool/news/db/${db_file} + chmod 664 "${ROOT}"var/spool/news/db/${db_file} + done + + elog "It is recommended to run emerge --config ${CATEGORY}/${PN}" + elog "now to finish setting up this package." + elog + elog "Do not forget to update your cron entries, and also run" + elog "makedbz if you need to. If this is a first-time installation" + elog "a minimal active file has been installed. You will need to" + elog "touch history and run 'makedbz -i' to initialize the history" + elog "database. See INSTALL for more information." + elog + elog "You need to assign a real shell to the news user, or else" + elog "starting inn will fail. You can use 'usermod -s /bin/bash news'" + elog "for this." + + if use ssl + then + install_cert /etc/news/cert/cert + chown news:news \ + "${ROOT}"etc/news/cert/cert.{crt,csr,key,pem} + + elog + elog "You may want to start nnrpd manually for native ssl support." + elog "If you choose to do so, automating this with a bootscript might" + elog "also be a good choice." + elog "Have a look at man nnrpd for valid parameters." + elog + elog "The certificate location in /etc/news/sasl.conf has been changed" + elog "to /etc/news/cert!" + + fi +} + +pkg_postrm() { + elog + elog "If you want your newsspool or altered configuration files" + elog "to be removed, please do so now manually." + elog +} + +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 || ${NEWS_SHELL} == /dev/null ]]; then + einfo "Changing shell to /bin/bash for user news..." + usermod -s /bin/bash news + else + einfo "Shell for user news unchanged ('${NEWS_SHELL}')." + if [[ ${NEWS_SHELL} != /bin/sh && ${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 \ + && ! -f ${NEWSSPOOL_DIR}/db/history.pag \ + && ! -f ${NEWSSPOOL_DIR}/db/history.hash \ + && ! -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 + + einfo "Running makedbz -i ..." + su - news -c "/usr/$(get_libdir)/news/bin/makedbz -i" + + einfo "Moving files into place ..." + [[ -f ${NEWSSPOOL_DIR}/db/history.n.dir ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.dir \ + "${NEWSSPOOL_DIR}"/db/history.dir + [[ -f ${NEWSSPOOL_DIR}/db/history.n.pag ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.pag \ + "${NEWSSPOOL_DIR}"/db/history.pag + [[ -f ${NEWSSPOOL_DIR}/db/history.n.hash ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.hash \ + "${NEWSSPOOL_DIR}"/db/history.hash + [[ -f ${NEWSSPOOL_DIR}/db/history.n.index ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.index \ + "${NEWSSPOOL_DIR}"/db/history.index + + einfo "Running makehistory ..." + su - news -c /usr/$(get_libdir)/news/bin/makehistory + else + NEWS_ERRFLAG="1" + 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." + einfo "Leaving history database as it is." + fi + + INNCFG_INODES=$( + sed /etc/news/inn.conf \ + -e '/innwatchspoolnodes/ ! d; s:[^ ]*[ ]*\([^ ]*\):\1:' + ) + INNSPOOL_INODES=$( + df -Pi ${NEWSSPOOL_DIR} | \ + sed -e 's:[^ ]*[ ]*\([^ ]*\).*:\1:; 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 /etc/news/inn.conf \ + -e '/innwatchspoolnodes/ s:\([^ ]*\)\([ ]*\).*:\1\20:' + chown news:news /etc/news/inn.conf + chmod 644 /etc/news/inn.conf + fi + + INNCHECK_LINES=$( + su - news -c "/usr/$(get_libdir)/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/$(get_libdir)/news/bin/inncheck`" + fi + + if [[ ${NEWS_ERRFLAG} -gt 0 ]]; then + eerror "There were one or more errors/warnings checking your" + eerror "configuration. Please read inn's documentation and" + eerror "fix them accordingly." + else + einfo "INN configuration tests passed successfully." + ewarn "Please ensure you have configured inn properly." + fi +} diff --git a/net-nntp/inn/inn-2.5.4.ebuild b/net-nntp/inn/inn-2.5.4.ebuild new file mode 100644 index 000000000000..a76c4d97da47 --- /dev/null +++ b/net-nntp/inn/inn-2.5.4.ebuild @@ -0,0 +1,287 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils multilib python-single-r1 ssl-cert toolchain-funcs + +DESCRIPTION="The Internet News daemon, fully featured NNTP server" +HOMEPAGE="https://www.isc.org/software/inn" +SRC_URI="ftp://ftp.isc.org/isc/inn/${P}.tar.gz" + +# GPL-2 only for init script +LICENSE="ISC GPL-2+ public-domain BSD-4 BSD-2 RSA BSD MIT GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="berkdb innkeywords inntaggedhash ipv6 kerberos perl python sasl ssl" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND=" + virtual/mta + dev-perl/MIME-tools + sys-libs/pam + sys-libs/zlib + kerberos? ( virtual/krb5 ) + sasl? ( >=dev-libs/cyrus-sasl-2 ) + ssl? ( dev-libs/openssl ) + python? ( ${PYTHON_DEPS} ) + berkdb? ( sys-libs/db ) +" +RDEPEND="${DEPEND}" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-2.5.3-ar.patch + epatch "${FILESDIR}"/${PN}-2.5.3-tests.patch + + sed -e 's: -B .OLD::' -i Makefile.global.in || die + + # Do not treat LDFLAGS as if it contained libraries to link to + sed -e 's:LDFLAGS::g' -i m4/python.m4 || die + + # We do not have the biff service, but we do have comsat + sed -e 's:"biff":"comsat":g' -i tests/lib/getnameinfo-t.c || die + + eautoreconf +} + +src_configure() { + tc-export AR + + econf \ + --prefix=/usr/$(get_libdir)/news \ + --sysconfdir=/etc/news \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-control-dir=/usr/$(get_libdir)/news/bin/control \ + --with-filter-dir=/usr/$(get_libdir)/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=/run/news \ + --with-tmp-dir=/var/spool/news/tmp \ + --disable-libtool \ + --with-gnu-ld \ + --enable-setgid-inews \ + --enable-uucp-rnews \ + $(use_with perl) \ + $(use_with python) \ + $(use_with kerberos kerberos /usr) \ + $(use_with sasl) \ + $(use_with ssl openssl) \ + $(use_with berkdb berkeleydb /usr) \ + $(use_enable ipv6) \ + $(use_enable !inntaggedhash largefiles) \ + $(use_enable inntaggedhash tagged-hash) \ + $(use_enable innkeywords keywords) +} + +src_install() { + emake DESTDIR="${D}/" P="" SPECIAL="" install + + chown -R root:0 \ + "${D}"/usr/$(get_libdir)/news/$(get_libdir) \ + "${D}"/usr/$(get_libdir)/news/include \ + "${D}"/usr/share/doc \ + "${D}"/usr/share/man \ + || die + chmod 644 "${D}"/etc/news/* || die + chmod 640 \ + "${D}"/etc/news/control.ctl \ + "${D}"/etc/news/expire.ctl \ + "${D}"/etc/news/incoming.conf \ + "${D}"/etc/news/innfeed.conf \ + "${D}"/etc/news/nntpsend.ctl \ + "${D}"/etc/news/passwd.nntp \ + "${D}"/etc/news/readers.conf \ + || die + + # Prevent old db/* files from being overwritten + insinto /usr/share/inn/dbexamples + newins site/active.minimal active + newins site/newsgroups.minimal newsgroups + + keepdir \ + /var/log/news \ + /var/spool/news/archive \ + /var/spool/news/articles \ + /var/spool/news/db \ + /var/spool/news/incoming \ + /var/spool/news/incoming/bad \ + /var/spool/news/innfeed \ + /var/spool/news/outgoing \ + /var/spool/news/overview \ + /var/spool/news/tmp + + fowners news:news /var/log/news + + dodoc ChangeLog MANIFEST README* doc/checklist + use ipv6 && dodoc doc/IPv6-info + + # So other programs can build against INN + insinto /usr/$(get_libdir)/news/include + doins include/*.h + + newinitd "${FILESDIR}"/innd-r1 innd +} + +pkg_postinst() { + for db_file in active newsgroups + do + [[ -f ${ROOT}var/spool/news/db/${db_file} ]] && continue + + if [[ -f ${ROOT}usr/share/inn/dbexamples/${db_file} ]] + then + cp "${ROOT}"usr/share/inn/dbexamples/${db_file} \ + "${ROOT}"var/spool/news/db/${db_file} + else + touch "${ROOT}"var/spool/news/db/${db_file} + fi + + chown news:news "${ROOT}"var/spool/news/db/${db_file} + chmod 664 "${ROOT}"var/spool/news/db/${db_file} + done + + elog "It is recommended to run emerge --config ${CATEGORY}/${PN}" + elog "now to finish setting up this package." + elog + elog "Do not forget to update your cron entries, and also run" + elog "makedbz if you need to. If this is a first-time installation" + elog "a minimal active file has been installed. You will need to" + elog "touch history and run 'makedbz -i' to initialize the history" + elog "database. See INSTALL for more information." + elog + elog "You need to assign a real shell to the news user, or else" + elog "starting inn will fail. You can use 'usermod -s /bin/bash news'" + elog "for this." + + if use ssl + then + install_cert /etc/news/cert/cert + chown news:news \ + "${ROOT}"etc/news/cert/cert.{crt,csr,key,pem} + + elog + elog "You may want to start nnrpd manually for native ssl support." + elog "If you choose to do so, automating this with a bootscript might" + elog "also be a good choice." + elog "Have a look at man nnrpd for valid parameters." + elog + elog "The certificate location in /etc/news/sasl.conf has been changed" + elog "to /etc/news/cert!" + + fi +} + +pkg_postrm() { + elog + elog "If you want your newsspool or altered configuration files" + elog "to be removed, please do so now manually." + elog +} + +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 || ${NEWS_SHELL} == /dev/null ]]; then + einfo "Changing shell to /bin/bash for user news..." + usermod -s /bin/bash news + else + einfo "Shell for user news unchanged ('${NEWS_SHELL}')." + if [[ ${NEWS_SHELL} != /bin/sh && ${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 \ + && ! -f ${NEWSSPOOL_DIR}/db/history.pag \ + && ! -f ${NEWSSPOOL_DIR}/db/history.hash \ + && ! -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 + + einfo "Running makedbz -i ..." + su - news -c "/usr/$(get_libdir)/news/bin/makedbz -i" + + einfo "Moving files into place ..." + [[ -f ${NEWSSPOOL_DIR}/db/history.n.dir ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.dir \ + "${NEWSSPOOL_DIR}"/db/history.dir + [[ -f ${NEWSSPOOL_DIR}/db/history.n.pag ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.pag \ + "${NEWSSPOOL_DIR}"/db/history.pag + [[ -f ${NEWSSPOOL_DIR}/db/history.n.hash ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.hash \ + "${NEWSSPOOL_DIR}"/db/history.hash + [[ -f ${NEWSSPOOL_DIR}/db/history.n.index ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.index \ + "${NEWSSPOOL_DIR}"/db/history.index + + einfo "Running makehistory ..." + su - news -c /usr/$(get_libdir)/news/bin/makehistory + else + NEWS_ERRFLAG="1" + 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." + einfo "Leaving history database as it is." + fi + + INNCFG_INODES=$( + sed /etc/news/inn.conf \ + -e '/innwatchspoolnodes/ ! d; s:[^ ]*[ ]*\([^ ]*\):\1:' + ) + INNSPOOL_INODES=$( + df -Pi ${NEWSSPOOL_DIR} | \ + sed -e 's:[^ ]*[ ]*\([^ ]*\).*:\1:; 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 /etc/news/inn.conf \ + -e '/innwatchspoolnodes/ s:\([^ ]*\)\([ ]*\).*:\1\20:' + chown news:news /etc/news/inn.conf + chmod 644 /etc/news/inn.conf + fi + + INNCHECK_LINES=$( + su - news -c "/usr/$(get_libdir)/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/$(get_libdir)/news/bin/inncheck`" + fi + + if [[ ${NEWS_ERRFLAG} -gt 0 ]]; then + eerror "There were one or more errors/warnings checking your" + eerror "configuration. Please read inn's documentation and" + eerror "fix them accordingly." + else + einfo "INN configuration tests passed successfully." + ewarn "Please ensure you have configured inn properly." + fi +} diff --git a/net-nntp/inn/inn-2.5.5.ebuild b/net-nntp/inn/inn-2.5.5.ebuild new file mode 100644 index 000000000000..a76c4d97da47 --- /dev/null +++ b/net-nntp/inn/inn-2.5.5.ebuild @@ -0,0 +1,287 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +PYTHON_COMPAT=( python2_7 ) + +inherit autotools eutils multilib python-single-r1 ssl-cert toolchain-funcs + +DESCRIPTION="The Internet News daemon, fully featured NNTP server" +HOMEPAGE="https://www.isc.org/software/inn" +SRC_URI="ftp://ftp.isc.org/isc/inn/${P}.tar.gz" + +# GPL-2 only for init script +LICENSE="ISC GPL-2+ public-domain BSD-4 BSD-2 RSA BSD MIT GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="berkdb innkeywords inntaggedhash ipv6 kerberos perl python sasl ssl" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +DEPEND=" + virtual/mta + dev-perl/MIME-tools + sys-libs/pam + sys-libs/zlib + kerberos? ( virtual/krb5 ) + sasl? ( >=dev-libs/cyrus-sasl-2 ) + ssl? ( dev-libs/openssl ) + python? ( ${PYTHON_DEPS} ) + berkdb? ( sys-libs/db ) +" +RDEPEND="${DEPEND}" + +pkg_setup() { + use python && python-single-r1_pkg_setup +} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-2.5.3-ar.patch + epatch "${FILESDIR}"/${PN}-2.5.3-tests.patch + + sed -e 's: -B .OLD::' -i Makefile.global.in || die + + # Do not treat LDFLAGS as if it contained libraries to link to + sed -e 's:LDFLAGS::g' -i m4/python.m4 || die + + # We do not have the biff service, but we do have comsat + sed -e 's:"biff":"comsat":g' -i tests/lib/getnameinfo-t.c || die + + eautoreconf +} + +src_configure() { + tc-export AR + + econf \ + --prefix=/usr/$(get_libdir)/news \ + --sysconfdir=/etc/news \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --with-control-dir=/usr/$(get_libdir)/news/bin/control \ + --with-filter-dir=/usr/$(get_libdir)/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=/run/news \ + --with-tmp-dir=/var/spool/news/tmp \ + --disable-libtool \ + --with-gnu-ld \ + --enable-setgid-inews \ + --enable-uucp-rnews \ + $(use_with perl) \ + $(use_with python) \ + $(use_with kerberos kerberos /usr) \ + $(use_with sasl) \ + $(use_with ssl openssl) \ + $(use_with berkdb berkeleydb /usr) \ + $(use_enable ipv6) \ + $(use_enable !inntaggedhash largefiles) \ + $(use_enable inntaggedhash tagged-hash) \ + $(use_enable innkeywords keywords) +} + +src_install() { + emake DESTDIR="${D}/" P="" SPECIAL="" install + + chown -R root:0 \ + "${D}"/usr/$(get_libdir)/news/$(get_libdir) \ + "${D}"/usr/$(get_libdir)/news/include \ + "${D}"/usr/share/doc \ + "${D}"/usr/share/man \ + || die + chmod 644 "${D}"/etc/news/* || die + chmod 640 \ + "${D}"/etc/news/control.ctl \ + "${D}"/etc/news/expire.ctl \ + "${D}"/etc/news/incoming.conf \ + "${D}"/etc/news/innfeed.conf \ + "${D}"/etc/news/nntpsend.ctl \ + "${D}"/etc/news/passwd.nntp \ + "${D}"/etc/news/readers.conf \ + || die + + # Prevent old db/* files from being overwritten + insinto /usr/share/inn/dbexamples + newins site/active.minimal active + newins site/newsgroups.minimal newsgroups + + keepdir \ + /var/log/news \ + /var/spool/news/archive \ + /var/spool/news/articles \ + /var/spool/news/db \ + /var/spool/news/incoming \ + /var/spool/news/incoming/bad \ + /var/spool/news/innfeed \ + /var/spool/news/outgoing \ + /var/spool/news/overview \ + /var/spool/news/tmp + + fowners news:news /var/log/news + + dodoc ChangeLog MANIFEST README* doc/checklist + use ipv6 && dodoc doc/IPv6-info + + # So other programs can build against INN + insinto /usr/$(get_libdir)/news/include + doins include/*.h + + newinitd "${FILESDIR}"/innd-r1 innd +} + +pkg_postinst() { + for db_file in active newsgroups + do + [[ -f ${ROOT}var/spool/news/db/${db_file} ]] && continue + + if [[ -f ${ROOT}usr/share/inn/dbexamples/${db_file} ]] + then + cp "${ROOT}"usr/share/inn/dbexamples/${db_file} \ + "${ROOT}"var/spool/news/db/${db_file} + else + touch "${ROOT}"var/spool/news/db/${db_file} + fi + + chown news:news "${ROOT}"var/spool/news/db/${db_file} + chmod 664 "${ROOT}"var/spool/news/db/${db_file} + done + + elog "It is recommended to run emerge --config ${CATEGORY}/${PN}" + elog "now to finish setting up this package." + elog + elog "Do not forget to update your cron entries, and also run" + elog "makedbz if you need to. If this is a first-time installation" + elog "a minimal active file has been installed. You will need to" + elog "touch history and run 'makedbz -i' to initialize the history" + elog "database. See INSTALL for more information." + elog + elog "You need to assign a real shell to the news user, or else" + elog "starting inn will fail. You can use 'usermod -s /bin/bash news'" + elog "for this." + + if use ssl + then + install_cert /etc/news/cert/cert + chown news:news \ + "${ROOT}"etc/news/cert/cert.{crt,csr,key,pem} + + elog + elog "You may want to start nnrpd manually for native ssl support." + elog "If you choose to do so, automating this with a bootscript might" + elog "also be a good choice." + elog "Have a look at man nnrpd for valid parameters." + elog + elog "The certificate location in /etc/news/sasl.conf has been changed" + elog "to /etc/news/cert!" + + fi +} + +pkg_postrm() { + elog + elog "If you want your newsspool or altered configuration files" + elog "to be removed, please do so now manually." + elog +} + +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 || ${NEWS_SHELL} == /dev/null ]]; then + einfo "Changing shell to /bin/bash for user news..." + usermod -s /bin/bash news + else + einfo "Shell for user news unchanged ('${NEWS_SHELL}')." + if [[ ${NEWS_SHELL} != /bin/sh && ${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 \ + && ! -f ${NEWSSPOOL_DIR}/db/history.pag \ + && ! -f ${NEWSSPOOL_DIR}/db/history.hash \ + && ! -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 + + einfo "Running makedbz -i ..." + su - news -c "/usr/$(get_libdir)/news/bin/makedbz -i" + + einfo "Moving files into place ..." + [[ -f ${NEWSSPOOL_DIR}/db/history.n.dir ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.dir \ + "${NEWSSPOOL_DIR}"/db/history.dir + [[ -f ${NEWSSPOOL_DIR}/db/history.n.pag ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.pag \ + "${NEWSSPOOL_DIR}"/db/history.pag + [[ -f ${NEWSSPOOL_DIR}/db/history.n.hash ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.hash \ + "${NEWSSPOOL_DIR}"/db/history.hash + [[ -f ${NEWSSPOOL_DIR}/db/history.n.index ]] && \ + mv -vf "${NEWSSPOOL_DIR}"/db/history.n.index \ + "${NEWSSPOOL_DIR}"/db/history.index + + einfo "Running makehistory ..." + su - news -c /usr/$(get_libdir)/news/bin/makehistory + else + NEWS_ERRFLAG="1" + 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." + einfo "Leaving history database as it is." + fi + + INNCFG_INODES=$( + sed /etc/news/inn.conf \ + -e '/innwatchspoolnodes/ ! d; s:[^ ]*[ ]*\([^ ]*\):\1:' + ) + INNSPOOL_INODES=$( + df -Pi ${NEWSSPOOL_DIR} | \ + sed -e 's:[^ ]*[ ]*\([^ ]*\).*:\1:; 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 /etc/news/inn.conf \ + -e '/innwatchspoolnodes/ s:\([^ ]*\)\([ ]*\).*:\1\20:' + chown news:news /etc/news/inn.conf + chmod 644 /etc/news/inn.conf + fi + + INNCHECK_LINES=$( + su - news -c "/usr/$(get_libdir)/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/$(get_libdir)/news/bin/inncheck`" + fi + + if [[ ${NEWS_ERRFLAG} -gt 0 ]]; then + eerror "There were one or more errors/warnings checking your" + eerror "configuration. Please read inn's documentation and" + eerror "fix them accordingly." + else + einfo "INN configuration tests passed successfully." + ewarn "Please ensure you have configured inn properly." + fi +} diff --git a/net-nntp/inn/metadata.xml b/net-nntp/inn/metadata.xml new file mode 100644 index 000000000000..93a158225936 --- /dev/null +++ b/net-nntp/inn/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>net-news</herd> +<use> + <flag name='innkeywords'>Enable automatic keyword generation support</flag> + <flag name='inntaggedhash'>Use tagged hash table for history (disables large + file support)</flag> +</use> +</pkgmetadata> diff --git a/net-nntp/kwooty/Manifest b/net-nntp/kwooty/Manifest new file mode 100644 index 000000000000..95fa8d9e9a44 --- /dev/null +++ b/net-nntp/kwooty/Manifest @@ -0,0 +1 @@ +DIST kwooty-1.1.0.tar.gz 304450 SHA256 578d0e976edd3ccbea6dabd486878a2b0b357d4b69884865eb4149b3a5564981 SHA512 54e93b54045104f89b56fd670677708439bf18dae42f00d6c2fcf546802aa9eeab3a47c0a16e259ba081eacdb57e176fd48ec25dbaf53037898d85f63d959ab5 WHIRLPOOL 7ed200a37f719cb05398fb7f787c6c6c4888dcf66e260032878d8dada3604c8b60f2da47373545e8ef04c3bc191acb5bd3f8940308f040cca8385f1779589f90 diff --git a/net-nntp/kwooty/kwooty-1.1.0.ebuild b/net-nntp/kwooty/kwooty-1.1.0.ebuild new file mode 100644 index 000000000000..300c3366ecb1 --- /dev/null +++ b/net-nntp/kwooty/kwooty-1.1.0.ebuild @@ -0,0 +1,28 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +KDE_LINGUAS="cs de fr" + +inherit kde4-base + +DESCRIPTION="Friendly nzb linux usenet binary client" +HOMEPAGE="http://kwooty.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="4" +KEYWORDS="amd64 x86" +IUSE="debug" + +DEPEND=" + $(add_kdebase_dep libkworkspace) +" +RDEPEND=" + ${DEPEND} + app-arch/unrar + app-arch/par2cmdline +" + +DOCS=( README.txt TODO ) diff --git a/net-nntp/kwooty/metadata.xml b/net-nntp/kwooty/metadata.xml new file mode 100644 index 000000000000..2cf8d8693355 --- /dev/null +++ b/net-nntp/kwooty/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>kde</herd> + <herd>net-news</herd> + <upstream> + <remote-id type="sourceforge">kwooty</remote-id> + <remote-id type="gitorious">kwooty</remote-id> + <bugs-to>http://sourceforge.net/tracker/?group_id=285032</bugs-to> + </upstream> +</pkgmetadata> diff --git a/net-nntp/leafnode/Manifest b/net-nntp/leafnode/Manifest new file mode 100644 index 000000000000..a2486deb0168 --- /dev/null +++ b/net-nntp/leafnode/Manifest @@ -0,0 +1,2 @@ +DIST leafnode-1.11.10.tar.bz2 493480 SHA256 d75ba79961a8900b273eb74c3ad6976bf9fd64c2fa0284273e65f98190c5f2bc SHA512 efffbe9a3fe10da64ebfaff31738b66e9783923ea119e2f792bc0e7e1811d570e85c5ddec17af6787333958deeee3af9bec87d1312c37eb19e355147dfa721ae WHIRLPOOL ed47717d7c2a6d21ba0b07f0daf5a5c716ff90034ea3747d57958163142eb154778267b9c370082b0e5a8e7e35942b3334bd6ff9f9d476186e27d838e2a26897 +DIST leafnode-1.11.8.tar.bz2 504617 SHA256 543d921549a811cbd4a7763b241af7dcfe5722ab1d6b7515c88f680833876e22 SHA512 93f8af5f3e99e7a55f0e8cbd9ceb22d7f3d82f8683e3390c2ee646e686aba7a748caa038f4aef27cd1934d46a5a49c0b29bd317926b7dffeae138607184e7bfb WHIRLPOOL 8848645ac2ef24bb9836a4026c1c5c528d659f45b2f9f49fe2bb63ba41267c42279ba18c52c2bcbea8eaaece55475936dda25b27897830967db57ca314e948dd diff --git a/net-nntp/leafnode/files/fetchnews.cron b/net-nntp/leafnode/files/fetchnews.cron new file mode 100644 index 000000000000..cd4569e6d656 --- /dev/null +++ b/net-nntp/leafnode/files/fetchnews.cron @@ -0,0 +1,10 @@ +#!/bin/sh +# +# Uncomment the following if you want to regularly +# fetch new messages from your news server. +# +# +# This is part of the leafnode package. +# + +#/usr/sbin/fetchnews diff --git a/net-nntp/leafnode/files/leafnode.xinetd b/net-nntp/leafnode/files/leafnode.xinetd new file mode 100644 index 000000000000..fc36ecaaaa03 --- /dev/null +++ b/net-nntp/leafnode/files/leafnode.xinetd @@ -0,0 +1,12 @@ +# default: off +# description: Leafnode - accepts connections on port 119 (NNTP) + +service nntp +{ + socket_type = stream + protocol = tcp + wait = no + user = news + server = /usr/sbin/leafnode + disable = yes +} diff --git a/net-nntp/leafnode/files/texpire.cron b/net-nntp/leafnode/files/texpire.cron new file mode 100644 index 000000000000..643da1ee9000 --- /dev/null +++ b/net-nntp/leafnode/files/texpire.cron @@ -0,0 +1,10 @@ +#!/bin/sh +# +# Uncomment the following if you want to +# clean up your news spool regularly. +# +# +# This is part of the leafnode package. +# + +#/usr/sbin/texpire diff --git a/net-nntp/leafnode/leafnode-1.11.10.ebuild b/net-nntp/leafnode/leafnode-1.11.10.ebuild new file mode 100644 index 000000000000..997ee679a97f --- /dev/null +++ b/net-nntp/leafnode/leafnode-1.11.10.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +DESCRIPTION="A USENET software package designed for small sites" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2" +HOMEPAGE="http://leafnode.sourceforge.net/" +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="ipv6" + +DEPEND=">=dev-libs/libpcre-3.9" +RDEPEND="${DEPEND} + virtual/inetd" +DOCS=( CREDITS ChangeLog FAQ.txt FAQ.pdf INSTALL NEWS README-daemontools UNINSTALL-daemontools README README-MAINTAINER README-FQDN ) + +src_configure() { + econf \ + --sysconfdir=/etc/leafnode \ + --localstatedir=/var \ + --with-spooldir=/var/spool/news \ + $(use_with ipv6) +} + +src_install() { + default + + keepdir \ + /var/lock/news \ + /var/lib/news \ + /var/spool/news/{failed.postings,interesting.groups,leaf.node,out.going,temp.files} \ + /var/spool/news/message.id/{0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9} + + fowners -R news:news /var/{lib,spool}/news + + insinto /etc/xinetd.d + newins "${FILESDIR}"/leafnode.xinetd leafnode-nntp + + exeinto /etc/cron.hourly + newexe "${FILESDIR}"/fetchnews.cron fetchnews + exeinto /etc/cron.daily + newexe "${FILESDIR}"/texpire.cron texpire + + dohtml FAQ.html FAQ.xml README-FQDN.html +} diff --git a/net-nntp/leafnode/leafnode-1.11.8.ebuild b/net-nntp/leafnode/leafnode-1.11.8.ebuild new file mode 100644 index 000000000000..8c2f11be83b2 --- /dev/null +++ b/net-nntp/leafnode/leafnode-1.11.8.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +DESCRIPTION="A USENET software package designed for small sites" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2" +HOMEPAGE="http://leafnode.sourceforge.net/" +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc x86" +IUSE="ipv6" + +DEPEND=">=dev-libs/libpcre-3.9" +RDEPEND="${DEPEND} + virtual/inetd" +DOCS=( CREDITS ChangeLog FAQ.txt FAQ.pdf INSTALL NEWS README-daemontools UNINSTALL-daemontools README README-MAINTAINER README-FQDN ) + +src_configure() { + econf \ + --sysconfdir=/etc/leafnode \ + --localstatedir=/var \ + --with-spooldir=/var/spool/news \ + $(use_with ipv6) +} + +src_install() { + default + + keepdir \ + /var/lock/news \ + /var/lib/news \ + /var/spool/news/{failed.postings,interesting.groups,leaf.node,out.going,temp.files} \ + /var/spool/news/message.id/{0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9} + + fowners -R news:news /var/{lib,spool}/news + + insinto /etc/xinetd.d + newins "${FILESDIR}"/leafnode.xinetd leafnode-nntp + + exeinto /etc/cron.hourly + newexe "${FILESDIR}"/fetchnews.cron fetchnews + exeinto /etc/cron.daily + newexe "${FILESDIR}"/texpire.cron texpire + + dohtml FAQ.html FAQ.xml README-FQDN.html +} diff --git a/net-nntp/leafnode/metadata.xml b/net-nntp/leafnode/metadata.xml new file mode 100644 index 000000000000..a1f1b73219d4 --- /dev/null +++ b/net-nntp/leafnode/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>net-news</herd> + <upstream> + <remote-id type="sourceforge">leafnode</remote-id> + </upstream> +</pkgmetadata> diff --git a/net-nntp/metadata.xml b/net-nntp/metadata.xml new file mode 100644 index 000000000000..fb6c7192915b --- /dev/null +++ b/net-nntp/metadata.xml @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<catmetadata> + <longdescription lang="en"> + The net-nntp category contains NNTP (Network News Transfer Protocol) + software. + </longdescription> + <longdescription lang="de"> + Die Kategorie net-nntp enthält Software für das Network News Transfer Protocol + (NNTP). + </longdescription> + <longdescription lang="es"> + La categoría net-nntp contiene software NNTP (Network News Transfer + Protocol). + </longdescription> + <longdescription lang="ja"> + net-nntpカテゴリーにはネットワーク・ニュース・トランスファー・プロトコルの + ソフトウェアが含まれています。 + </longdescription> + <longdescription lang="nl"> + De net-nntp categorie bevat applicaties voor NNTP (Network News Transfer Protocol). + </longdescription> + <longdescription lang="vi"> + Nhóm net-nntp chứa các phần mềm NNTP (Network News Transfer Protocol). + </longdescription> + <longdescription lang="it"> + La categoria net-nntp contiene software NNTP (Network News Transfer + Protocol). + </longdescription> + <longdescription lang="pt"> + A categoria net-nntp contém programas de NNTP (Network News + Transfer Protocol). + </longdescription> + <longdescription lang="pl"> + Kategoria net-nntp zawiera oprogramowanie związane z NNTP (Network News + Transfer Protocol). + </longdescription> +</catmetadata> + diff --git a/net-nntp/newspost/Manifest b/net-nntp/newspost/Manifest new file mode 100644 index 000000000000..b61217691003 --- /dev/null +++ b/net-nntp/newspost/Manifest @@ -0,0 +1 @@ +DIST newspost-2.1.1.tar.gz 61412 SHA256 bdd1ae83d7459d2cdd726115c028405fce33f9b60e71b88969f82fbc02672be7 SHA512 d7f5b583ef5619a65e87f2ce2edbad307d60da7f29e5c6bef8eaa7c757f97f82f08654409a75ea7b28e5575fd267af57cbc170f467f6737f701bfbd6bd4b2f66 WHIRLPOOL 7ab7e3a39b300ab262293be4933105b2796d85ae8af919a22adf164754bcc598abe9c75974aa99670e3037d211189b78385771128c2d4b871700f52f7bba9ad8 diff --git a/net-nntp/newspost/files/CAN-2005-0101.patch b/net-nntp/newspost/files/CAN-2005-0101.patch new file mode 100644 index 000000000000..2bfdfc2c190d --- /dev/null +++ b/net-nntp/newspost/files/CAN-2005-0101.patch @@ -0,0 +1,11 @@ +--- base/socket.c.orig Tue Jan 18 11:08:02 2005 ++++ base/socket.c Tue Jan 18 11:10:08 2005 +@@ -126,7 +126,7 @@ + + i = 0; + pi = buffer; +- while (TRUE) { ++ while (read_count < STRING_BUFSIZE - 1) { + retval = read(sockfd, pi, 1); + if(retval < 0) + ui_socket_error(errno); diff --git a/net-nntp/newspost/files/newspost-2.1.1-glibc-2.10.patch b/net-nntp/newspost/files/newspost-2.1.1-glibc-2.10.patch new file mode 100644 index 000000000000..fdaa78cbefb7 --- /dev/null +++ b/net-nntp/newspost/files/newspost-2.1.1-glibc-2.10.patch @@ -0,0 +1,57 @@ +diff -ur newspost-2.1.1.orig/base/newspost.c newspost-2.1.1/base/newspost.c +--- newspost-2.1.1.orig/base/newspost.c 2003-04-23 18:33:23.000000000 +0300 ++++ newspost-2.1.1/base/newspost.c 2009-08-06 14:46:41.000000000 +0300 +@@ -342,7 +342,7 @@ + file = fopen(filename, "r"); + if (file != NULL) { + while (!feof(file)) { +- line = getline(line, file); ++ line = get_line(line, file); + if(line == NULL){ + text_buffer = buff_add(text_buffer, "\r\n"); + continue; +diff -ur newspost-2.1.1.orig/base/utils.c newspost-2.1.1/base/utils.c +--- newspost-2.1.1.orig/base/utils.c 2009-08-06 14:44:35.000000000 +0300 ++++ newspost-2.1.1/base/utils.c 2009-08-06 14:45:20.000000000 +0300 +@@ -43,7 +43,7 @@ + return NULL; + } + +-Buff * getline(Buff *buff, FILE *file){ ++Buff * get_line(Buff *buff, FILE *file){ + int c = fgetc(file); + buff = buff_free(buff); + while(TRUE){ +diff -ur newspost-2.1.1.orig/base/utils.h newspost-2.1.1/base/utils.h +--- newspost-2.1.1.orig/base/utils.h 2003-02-08 17:09:41.000000000 +0200 ++++ newspost-2.1.1/base/utils.h 2009-08-06 14:45:13.000000000 +0300 +@@ -26,7 +26,7 @@ + file_entry * file_entry_alloc(); + file_entry * file_entry_free(file_entry *fe); + +-Buff * getline(Buff *buff, FILE *file); ++Buff * get_line(Buff *buff, FILE *file); + Buff *buff_add(Buff *buff, char *data, ... ); + Buff * buff_free(Buff *buff); + Buff *buff_create(Buff *buff, char *data, ... ); +diff -ur newspost-2.1.1.orig/ui/options.c newspost-2.1.1/ui/options.c +--- newspost-2.1.1.orig/ui/options.c 2003-04-23 18:33:33.000000000 +0300 ++++ newspost-2.1.1/ui/options.c 2009-08-06 14:46:31.000000000 +0300 +@@ -332,7 +332,7 @@ + file = fopen(filename->data, "r"); + if (file != NULL) { + while (!feof(file)) { +- line = getline(line, file); ++ line = get_line(line, file); + linenum++; + if(line == NULL) continue; + +@@ -429,7 +429,7 @@ + linenum = 0; + while (linenum < 8) { + linenum++; +- line = getline(line, file); ++ line = get_line(line, file); + if(line == NULL) continue; + + switch (linenum) { diff --git a/net-nntp/newspost/files/newspost-2.1.1-nntp.patch b/net-nntp/newspost/files/newspost-2.1.1-nntp.patch new file mode 100644 index 000000000000..8779e8f36b47 --- /dev/null +++ b/net-nntp/newspost/files/newspost-2.1.1-nntp.patch @@ -0,0 +1,69 @@ +--- newspost-2.1.1.orig/base/nntp.c ++++ newspost-2.1.1/base/nntp.c +@@ -26,6 +26,10 @@ + *** Public Routines + **/ + ++int _nntp_post(const char *subject, newspost_data *data, ++ const char *buffer, long length, ++ boolean no_ui_updates); ++ + boolean nntp_logon(newspost_data *data) { + char buffer[STRING_BUFSIZE]; + +@@ -78,6 +82,35 @@ + int nntp_post(const char *subject, newspost_data *data, + const char *buffer, long length, + boolean no_ui_updates) { ++ int retval = _nntp_post(subject, data, buffer, length, no_ui_updates); ++ ++ if (retval == POSTING_FAILED-64) { ++ /* try log out then back in */ ++ ui_nntp_posting_retry(); ++ nntp_logoff(); ++ socket_close(); ++ sleep(5); ++ ++ /* create the socket */ ++ ui_socket_connect_start(data->address->data); ++ retval = socket_create(data->address->data, data->port); ++ if (retval < 0) ++ return retval; ++ ui_socket_connect_done(); ++ ++ ui_nntp_logon_start(data->address->data); ++ if (nntp_logon(data) == FALSE) ++ return POSTING_FAILED; ++ ui_nntp_logon_done(); ++ ++ retval = _nntp_post(subject, data, buffer, length, no_ui_updates); ++ } ++ return retval; ++} ++ ++int _nntp_post(const char *subject, newspost_data *data, ++ const char *buffer, long length, ++ boolean no_ui_updates) { + char response[STRING_BUFSIZE]; + const char *pi; + long i, chunksize; +@@ -95,7 +128,7 @@ + if (strncmp(response, NNTP_PROCEED_WITH_POST, 3) != 0) { + /* this shouldn't really happen */ + ui_nntp_unknown_response(response); +- return POSTING_FAILED; ++ return POSTING_FAILED-64; + } + + buff = buff_add(buff, "From: %s\r\n", data->from->data); +--- newspost-2.1.1.orig/base/utils.c ++++ newspost-2.1.1/base/utils.c +@@ -44,7 +44,7 @@ + } + + Buff * getline(Buff *buff, FILE *file){ +- char c = fgetc(file); ++ int c = fgetc(file); + buff = buff_free(buff); + while(TRUE){ + if((c == '\n') diff --git a/net-nntp/newspost/metadata.xml b/net-nntp/newspost/metadata.xml new file mode 100644 index 000000000000..4d0ebe73a55f --- /dev/null +++ b/net-nntp/newspost/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> diff --git a/net-nntp/newspost/newspost-2.1.1-r3.ebuild b/net-nntp/newspost/newspost-2.1.1-r3.ebuild new file mode 100644 index 000000000000..a6b7232902d8 --- /dev/null +++ b/net-nntp/newspost/newspost-2.1.1-r3.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils toolchain-funcs + +DESCRIPTION="A usenet binary autoposter for unix" +HOMEPAGE="http://newspost.unixcab.org/" +SRC_URI="http://newspost.unixcab.org/download/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="" + +src_prepare() { + # Should fix some problems with unexpected server replies, cf. bug 185468 + epatch "${FILESDIR}"/${P}-nntp.patch + epatch "${FILESDIR}"/CAN-2005-0101.patch + epatch "${FILESDIR}"/${P}-glibc-2.10.patch + + sed -e "/-strip newspost/d" -i Makefile || die +} + +src_compile() { + emake CC="$(tc-getCC)" LIBS="${LDFLAGS}" main +} + +src_install () { + dobin newspost + doman man/man1/newspost.1 + dodoc CHANGES README +} diff --git a/net-nntp/nzb/Manifest b/net-nntp/nzb/Manifest new file mode 100644 index 000000000000..d270810c07cd --- /dev/null +++ b/net-nntp/nzb/Manifest @@ -0,0 +1,2 @@ +DIST nzb-0.2.tar.gz 44351 SHA256 df27606e8e016485a7e9cfb3aa7a2cea9f453d1f26901c02d53731ef0c816497 SHA512 3bfafa8a971a996661e542e72fb63f63530d7efd7e3814a87c3f822764837a151b1c0279bd718a3cafc925d759d8cf338537ba80618014b24a9b836da990f435 WHIRLPOOL 5ce9af8113e97a62e22983dd98cedb2910f4b3789a447c3579a76dc26b84d0647d0749a92632a63db963ee320b0c22859380b83e56018aec0b571d700114d461 +DIST nzb-0.3.tar.gz 47596 SHA256 29811cfc6bd3d972683b33b7410ddfcbfe829269e12894a7b2ab2392b9b2c050 SHA512 f0c7c3d2825a98439848b895074d5a8c66264d90f87b8e988ea21405c4a01546d8fda5024aefbc7c0e6ff7fb45b8f29202516fd20a375c1fc0e999595da95ee3 WHIRLPOOL 8ec6733c089447f502407cde57896f0d2489afa2bd378f4845efb9f5257a4958861f4f037cb9e398409d6ceca9a6bbe2e1fffd8fcb03d1baa2937df1d35102b9 diff --git a/net-nntp/nzb/metadata.xml b/net-nntp/nzb/metadata.xml new file mode 100644 index 000000000000..3344595f6cf7 --- /dev/null +++ b/net-nntp/nzb/metadata.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>qt</herd> + <herd>net-news</herd> + <upstream> + <remote-id type="sourceforge">nzb</remote-id> + <bugs-to>http://sourceforge.net/tracker/?group_id=113793</bugs-to> + </upstream> +</pkgmetadata> diff --git a/net-nntp/nzb/nzb-0.2.ebuild b/net-nntp/nzb/nzb-0.2.ebuild new file mode 100644 index 000000000000..879a8b104623 --- /dev/null +++ b/net-nntp/nzb/nzb-0.2.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 +inherit eutils qt4-r2 + +DESCRIPTION="A binary news grabber" +HOMEPAGE="http://www.nzb.fi/" +SRC_URI="mirror://sourceforge/nzb/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +DEPEND="dev-qt/qtcore:4 + dev-qt/qtgui:4" +RDEPEND="${DEPEND}" + +DOCS="ChangeLog" + +src_install() { + qt4-r2_src_install + doicon images/nzb.png + make_desktop_entry nzb +} diff --git a/net-nntp/nzb/nzb-0.3.ebuild b/net-nntp/nzb/nzb-0.3.ebuild new file mode 100644 index 000000000000..326027447afc --- /dev/null +++ b/net-nntp/nzb/nzb-0.3.ebuild @@ -0,0 +1,27 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils qt4-r2 + +DESCRIPTION="A binary news grabber" +HOMEPAGE="http://www.nzb.fi/" +SRC_URI="mirror://sourceforge/nzb/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="" + +DEPEND="dev-qt/qtcore:4 + dev-qt/qtgui:4" +RDEPEND="${DEPEND}" + +DOCS=( ChangeLog ) + +src_install() { + qt4-r2_src_install + doicon images/nzb.png + make_desktop_entry nzb +} diff --git a/net-nntp/nzbget/Manifest b/net-nntp/nzbget/Manifest new file mode 100644 index 000000000000..43534e41f468 --- /dev/null +++ b/net-nntp/nzbget/Manifest @@ -0,0 +1,7 @@ +DIST nzbget-10.2.tar.gz 671808 SHA256 c9b878744c162e7721ffc8b048a2e4550a8ed8da6e706ee4cbd026ed2d612ec2 SHA512 be37d8a3a1a7899885a4186dba3bf5cee46ef325c60a0e09e9102a38f5b7694bf6e02d0794cb68a226111f4813c4d61354790710340b446edca5216f3c441b01 WHIRLPOOL 14e82696dc410caedba4b56f4c0dbab11533b981b2e5d98440de47467982d14817cb697893c0eedef4095b0dffb821bf5a878db86928b1df2afb6b88065a1990 +DIST nzbget-11.0.tar.gz 694197 SHA256 27abacf6c604969dc987b7e50689caef22a65dbb1690b020b0c6d147ae123b3d SHA512 ea3d16abb1cb0b31691c9ce5493276c6e5432f72c52ad05a7fc8ed72aafd251a725d4c87454430243cea6d79d1bd19fdfad8699727a7bd44917ad1d7bf75e323 WHIRLPOOL 5fec598b9c4441873b8d220454fb911c99e0a52a3ab45220583bced347918175cdc7a348fbddd85b2514798d4aa711941932d2fcb0df3cb9f59355070ecc5be7 +DIST nzbget-12.0.tar.gz 1114126 SHA256 023c4e3b9c7e920d9ea72b60135b438ce13543454f79984c06fd15365b9a882e SHA512 2b6be81ea60108fdb609738eb719e98af97ffcab706a5c38b6b668ff85d42609f5a3eb85f0e2dc97547bf88ef249fa9060ef4583c0b57ac7fb39e139fa897294 WHIRLPOOL 62fcdb1d9bf9a39f52aef1087ecfcc5158089a73955e357288ab6bb387c7fd0987a8178ece2424634e28478af29fdf086b622730b93771970d7f297bfe11a5be +DIST nzbget-13.0.tar.gz 1229936 SHA256 666f5244f31f10333a18450e7a6c1ac729ac68594042236711ba99dd32e78f8e SHA512 f7b38002551a7580267f47f0fa902744c27ed497b4f2a53c34c1ac463e3d54e25c9f6b9e59ac1b8861a3f7f933fcb5d0badd3819be15cc52d615f086c6297377 WHIRLPOOL eae4a4281ff06f8d3d816f913a43f4d07331a948aae7181f9e7e365a8132ee39765626a5a11926b1078db69655146620c7690952101ab128999e0e98046bf50e +DIST nzbget-14.0.tar.gz 1333744 SHA256 41d243617f3523dcba86676ff1193fa361562aecdfa100ebc01bf57bc26d38e5 SHA512 98433a5bb6ca3b06bbd3d67fbd12c96a84140fb1ae64b9001dec17b55d2ac1cb25e7e1bd0849e0b7bdbdc03243b4b9e7b2fb7b3ecade67bd98376504e3822225 WHIRLPOOL 02e07e18a81f215ec9df540f91a6487a45220d7e72d73f490754ffc1b98ae40bd11ab174e3b5044de1e9faadc67c396791183d27d4614d9933eecf3766ef065a +DIST nzbget-14.1.tar.gz 1332334 SHA256 a16b816b61f7035cc373e9b77094ca474d5b7b7f7ceff5fa8818249181db4b18 SHA512 fae938529bb3968c0161f63ec3af07f844a8128b61abf6298457a4878ac0d47541d76730c8a068509fa091b102de07c9d28dcd668a8192fcfac60980f69be56d WHIRLPOOL 9e9636b67d0af7780d2cc8f897465f5a2e23cd8695b3bd982e3e9f78d68adb34f84faf59253044c7b2f95db737cf59207b35cf312d1f1825fe4b9ecce2e4014f +DIST nzbget-14.2.tar.gz 1332612 SHA256 bb24afb47dc01766c5e5c02d7565190082c6e13ffed565969a2ec52e21104677 SHA512 0e1e9c1307927f6ac4772d9138901893a9782fad137756ca40617ea7e8dd7946f2927f3f5303d676d09920de0a005cb1313292fda0c5d0288d73fc8e0f949516 WHIRLPOOL 7fb9c5c44515e1ed4a02213af6f8a13e41452a85a710ba9e59483c8c95b9d9bc1f2c475f81d0a75ab982292fccd5ce797f2396fe09ec7339d31ea551f3c36a4e diff --git a/net-nntp/nzbget/files/nzbget-11.0-header.patch b/net-nntp/nzbget/files/nzbget-11.0-header.patch new file mode 100644 index 000000000000..ad65208b61d1 --- /dev/null +++ b/net-nntp/nzbget/files/nzbget-11.0-header.patch @@ -0,0 +1,10 @@ +--- nzbget-11.0/ParCoordinator.cpp ++++ nzbget-11.0/ParCoordinator.cpp +@@ -35,6 +35,7 @@ + #include <string.h> + #include <stdio.h> + #include <stdarg.h> ++#include <ctype.h> + #ifdef WIN32 + #include <direct.h> + #else diff --git a/net-nntp/nzbget/files/nzbget-13.0_pre1042-gzip-endif.patch b/net-nntp/nzbget/files/nzbget-13.0_pre1042-gzip-endif.patch new file mode 100644 index 000000000000..be09a1e9dda3 --- /dev/null +++ b/net-nntp/nzbget/files/nzbget-13.0_pre1042-gzip-endif.patch @@ -0,0 +1,18 @@ +Index: daemon/util/Util.cpp +=================================================================== +--- daemon/util/Util.cpp (revision 1046) ++++ daemon/util/Util.cpp (working copy) +@@ -2368,6 +2368,7 @@ + + return zlError; + } ++#endif + + Tokenizer::Tokenizer(const char* szDataString, const char* szSeparators) + { +@@ -2423,5 +2424,3 @@ + } + return szToken; + } +- +-#endif diff --git a/net-nntp/nzbget/files/nzbget-14.0_pre1145-tinfo.patch b/net-nntp/nzbget/files/nzbget-14.0_pre1145-tinfo.patch new file mode 100644 index 000000000000..e6cd13f6ffc1 --- /dev/null +++ b/net-nntp/nzbget/files/nzbget-14.0_pre1145-tinfo.patch @@ -0,0 +1,18 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -46,6 +46,7 @@ + AC_PATH_PROG(MAKE, make, $FALSE) + AC_PROG_INSTALL + ++PKG_PROG_PKG_CONFIG() + + dnl + dnl Do all tests with c++ compiler. +@@ -291,6 +292,7 @@ + if test "$FOUND" = "no"; then + AC_MSG_ERROR([Couldn't find curses headers (ncurses.h or curses.h)]) + fi ++ PKG_CHECK_MODULES(ncurses,ncurses,LIBS="$LIBS $ncurses_LIBS",) + AC_SEARCH_LIBS([refresh], [ncurses curses],, + AC_ERROR([Couldn't find curses library])) + else diff --git a/net-nntp/nzbget/files/nzbget-9.0_pre477-buffer-overflows.patch b/net-nntp/nzbget/files/nzbget-9.0_pre477-buffer-overflows.patch new file mode 100644 index 000000000000..ca26fc141bc2 --- /dev/null +++ b/net-nntp/nzbget/files/nzbget-9.0_pre477-buffer-overflows.patch @@ -0,0 +1,42 @@ +--- nzbget-9.0-testing/RemoteClient.cpp ++++ nzbget-9.0-testing/RemoteClient.cpp +@@ -541,20 +541,20 @@ + { + if (szParameters[0] == '\0') + { +- strncat(szParameters, " (", 1024); ++ strncat(szParameters, " (", sizeof(szParameters) - strlen(szParameters) - 1); + } + else + { +- strncat(szParameters, ", ", 1024); ++ strncat(szParameters, ", ", sizeof(szParameters) - strlen(szParameters) - 1); + } + NZBParameter* pNZBParameter = *it; +- strncat(szParameters, pNZBParameter->GetName(), 1024); +- strncat(szParameters, "=", 1024); +- strncat(szParameters, pNZBParameter->GetValue(), 1024); ++ strncat(szParameters, pNZBParameter->GetName(), sizeof(szParameters) - strlen(szParameters) - 1); ++ strncat(szParameters, "=", sizeof(szParameters) - strlen(szParameters) - 1); ++ strncat(szParameters, pNZBParameter->GetValue(), sizeof(szParameters) - strlen(szParameters) - 1); + } + if (szParameters[0] != '\0') + { +- strncat(szParameters, ")", 1024); ++ strncat(szParameters, ")", sizeof(szParameters) - strlen(szParameters) - 1); + } + + if (!szPattern || ((MatchedNZBInfo*)pGroupInfo->GetNZBInfo())->m_bMatch) +@@ -672,10 +672,10 @@ + + if (ntohl(ListResponse.m_iPostJobCount) > 0 || ntohl(ListResponse.m_bPostPaused)) + { +- strncat(szServerState, strlen(szServerState) > 0 ? ", Post-Processing" : "Post-Processing", sizeof(szServerState)); ++ strncat(szServerState, strlen(szServerState) > 0 ? ", Post-Processing" : "Post-Processing", sizeof(szServerState) - strlen(szServerState) - 1); + if (ntohl(ListResponse.m_bPostPaused)) + { +- strncat(szServerState, " paused", sizeof(szServerState)); ++ strncat(szServerState, " paused", sizeof(szServerState) - strlen(szServerState) - 1); + } + } + diff --git a/net-nntp/nzbget/files/nzbget.confd b/net-nntp/nzbget/files/nzbget.confd new file mode 100644 index 000000000000..ee8f38c1aefd --- /dev/null +++ b/net-nntp/nzbget/files/nzbget.confd @@ -0,0 +1,15 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# /etc/conf.d/nzbget +# Config file for nzbget init script + +# Which user to run nzbget as +NZBGET_USER="nzbget" +NZBGET_GROUP="nzbget" + +# Location of config file +NZBGET_CONFIGFILE="/etc/nzbgetd.conf" + +# Other options +NZBGET_OPTS="" diff --git a/net-nntp/nzbget/files/nzbget.initd b/net-nntp/nzbget/files/nzbget.initd new file mode 100644 index 000000000000..736e7a528b65 --- /dev/null +++ b/net-nntp/nzbget/files/nzbget.initd @@ -0,0 +1,34 @@ +#!/sbin/runscript +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +extra_started_commands="pause unpause" + +start() { + ebegin "Starting nzbget" + checkpath -d -m 0755 -o "${NZBGET_USER}:${NZBGET_GROUP}" /run/nzbget + start-stop-daemon --quiet --start --user "${NZBGET_USER}" \ + --group "${NZBGET_GROUP}" --exec /usr/bin/nzbget -- \ + --configfile "${NZBGET_CONFIGFILE}" --daemon \ + ${NZBGET_OPTS} + eend $? +} + +stop() { + ebegin "Stopping nzbget" + /usr/bin/nzbget --configfile "${NZBGET_CONFIGFILE}" --quit >/dev/null + eend $? +} + +pause() { + ebegin "Pausing nzbget" + /usr/bin/nzbget --configfile "${NZBGET_CONFIGFILE}" --pause >/dev/null + eend $? +} + +unpause() { + ebegin "Unpausing nzbget" + /usr/bin/nzbget --configfile "${NZBGET_CONFIGFILE}" --unpause >/dev/null + eend $? +} diff --git a/net-nntp/nzbget/metadata.xml b/net-nntp/nzbget/metadata.xml new file mode 100644 index 000000000000..09a844118d2e --- /dev/null +++ b/net-nntp/nzbget/metadata.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>net-news</herd> + <maintainer> + <email>swegener@gentoo.org</email> + <name>Sven Wegener</name> + </maintainer> + <maintainer> + <email>radhermit@gentoo.org</email> + <name>Tim Harder</name> + </maintainer> + <longdescription>A command-line based binary newsgrabber supporting .nzb files.</longdescription> + <use> + <flag name="parcheck">Enable support for checking PAR archives</flag> + </use> + <upstream> + <remote-id type="sourceforge">nzbget</remote-id> + </upstream> +</pkgmetadata> diff --git a/net-nntp/nzbget/nzbget-10.2.ebuild b/net-nntp/nzbget/nzbget-10.2.ebuild new file mode 100644 index 000000000000..ac4d3cddae50 --- /dev/null +++ b/net-nntp/nzbget/nzbget-10.2.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils autotools user + +MY_P=${P/_pre/-testing-r} + +DESCRIPTION="A command-line based binary newsgrapper supporting .nzb files" +HOMEPAGE="http://nzbget.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ~ppc x86" +IUSE="debug gnutls ncurses parcheck ssl zlib " + +RDEPEND="dev-libs/libxml2 + ncurses? ( sys-libs/ncurses ) + parcheck? ( + app-arch/libpar2 + dev-libs/libsigc++:2 + ) + ssl? ( + gnutls? ( net-libs/gnutls ) + !gnutls? ( dev-libs/openssl ) + ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog README nzbget.conf ) + +S=${WORKDIR}/${P/_pre*/-testing} + +src_prepare() { + sed -i 's:^PostProcess=.*:#PostProcess=/usr/share/nzbget/nzbget-postprocess.sh:' \ + nzbget.conf || die + + sed -e 's:^MainDir=.*:MainDir=/var/lib/nzbget:' \ + -e 's:^LockFile=.*:LockFile=/run/nzbget/nzbget.pid:' \ + -e 's:^LogFile=.*:LogFile=/var/log/nzbget/nzbget.log:' \ + "${S}"/nzbget.conf > "${S}"/nzbgetd.conf || die + + sed -i "/^dist_doc_DATA/d" Makefile.am || die + + epatch "${FILESDIR}"/${PN}-9.0_pre477-buffer-overflows.patch + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable ncurses curses) \ + $(use_enable parcheck) \ + --disable-libpar2-bugfixes-check \ + $(use_enable ssl tls) \ + $(use_enable zlib gzip) \ + --with-tlslib=$(usex gnutls GnuTLS OpenSSL) +} + +src_install() { + default + + # remove unneeded service script + rm "${D}"/usr/sbin/nzbgetd || die + + insinto /etc + doins nzbget.conf + doins nzbgetd.conf + + exeinto /usr/share/nzbget + doexe nzbget-postprocess.sh + + # remove duplicate script/config + rm "${D}"/usr/share/nzbget/nzbget.conf + rm "${D}"/usr/bin/nzbget-postprocess.sh + + keepdir /var/lib/nzbget/{dst,nzb,queue,tmp} + keepdir /var/log/nzbget + + newinitd "${FILESDIR}"/nzbget.initd nzbget + newconfd "${FILESDIR}"/nzbget.confd nzbget +} + +pkg_preinst() { + enewgroup nzbget + enewuser nzbget -1 -1 /var/lib/nzbget nzbget + + fowners nzbget:nzbget /var/lib/nzbget/{dst,nzb,queue,tmp} + fperms 750 /var/lib/nzbget/{queue,tmp} + fperms 770 /var/lib/nzbget/{dst,nzb} + + fowners nzbget:nzbget /var/log/nzbget + fperms 750 /var/log/nzbget + + fowners root:nzbget /etc/nzbgetd.conf + fperms 640 /etc/nzbgetd.conf +} + +pkg_postinst() { + elog + elog "Please add users that you want to be able to use the system-wide" + elog "nzbget daemon to the nzbget group. To access the daemon run nzbget" + elog "with the --configfile /etc/nzbgetd.conf option." + elog +} diff --git a/net-nntp/nzbget/nzbget-11.0.ebuild b/net-nntp/nzbget/nzbget-11.0.ebuild new file mode 100644 index 000000000000..ed47010975ff --- /dev/null +++ b/net-nntp/nzbget/nzbget-11.0.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit eutils autotools user + +MY_P=${P/_pre/-testing-r} + +DESCRIPTION="A command-line based binary newsgrapper supporting .nzb files" +HOMEPAGE="http://nzbget.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="debug gnutls ncurses parcheck ssl zlib " + +RDEPEND="dev-libs/libxml2 + ncurses? ( sys-libs/ncurses ) + parcheck? ( + app-arch/libpar2 + dev-libs/libsigc++:2 + ) + ssl? ( + gnutls? ( net-libs/gnutls ) + !gnutls? ( dev-libs/openssl ) + ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog README nzbget.conf ) + +S=${WORKDIR}/${P/_pre*/-testing} + +src_prepare() { + sed -i 's:^ScriptDir=.*:ScriptDir=/usr/share/nzbget/ppscripts:' nzbget.conf || die + + sed -e 's:^MainDir=.*:MainDir=/var/lib/nzbget:' \ + -e 's:^LockFile=.*:LockFile=/run/nzbget/nzbget.pid:' \ + -e 's:^LogFile=.*:LogFile=/var/log/nzbget/nzbget.log:' \ + "${S}"/nzbget.conf > "${S}"/nzbgetd.conf || die + + sed -i "/^dist_doc_DATA/d" Makefile.am || die + + epatch "${FILESDIR}"/${PN}-9.0_pre477-buffer-overflows.patch + epatch "${FILESDIR}"/${P}-header.patch + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable ncurses curses) \ + $(use_enable parcheck) \ + --disable-libpar2-bugfixes-check \ + $(use_enable ssl tls) \ + $(use_enable zlib gzip) \ + --with-tlslib=$(usex gnutls GnuTLS OpenSSL) +} + +src_install() { + default + + # remove unneeded service script + rm "${D}"/usr/sbin/nzbgetd || die + + insinto /etc + doins nzbget.conf + doins nzbgetd.conf + + # remove duplicate script/config + rm "${D}"/usr/share/nzbget/nzbget.conf || die + + keepdir /var/lib/nzbget/{dst,nzb,queue,tmp} + keepdir /var/log/nzbget + + newinitd "${FILESDIR}"/nzbget.initd nzbget + newconfd "${FILESDIR}"/nzbget.confd nzbget +} + +pkg_preinst() { + enewgroup nzbget + enewuser nzbget -1 -1 /var/lib/nzbget nzbget + + fowners nzbget:nzbget /var/lib/nzbget/{dst,nzb,queue,tmp} + fperms 750 /var/lib/nzbget/{queue,tmp} + fperms 770 /var/lib/nzbget/{dst,nzb} + + fowners nzbget:nzbget /var/log/nzbget + fperms 750 /var/log/nzbget + + fowners root:nzbget /etc/nzbgetd.conf + fperms 640 /etc/nzbgetd.conf +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog + elog "Please add users that you want to be able to use the system-wide" + elog "nzbget daemon to the nzbget group. To access the daemon run nzbget" + elog "with the --configfile /etc/nzbgetd.conf option." + elog + fi +} diff --git a/net-nntp/nzbget/nzbget-12.0-r1.ebuild b/net-nntp/nzbget/nzbget-12.0-r1.ebuild new file mode 100644 index 000000000000..a64db3182b01 --- /dev/null +++ b/net-nntp/nzbget/nzbget-12.0-r1.ebuild @@ -0,0 +1,106 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools user + +MY_P=${P/_pre/-testing-r} + +DESCRIPTION="A command-line based binary newsgrapper supporting .nzb files" +HOMEPAGE="http://nzbget.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="debug gnutls ncurses parcheck ssl zlib" + +RDEPEND="dev-libs/libxml2 + ncurses? ( sys-libs/ncurses ) + parcheck? ( + app-arch/libpar2 + dev-libs/libsigc++:2 + ) + ssl? ( + gnutls? ( net-libs/gnutls ) + !gnutls? ( dev-libs/openssl ) + ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog README nzbget.conf ) + +S=${WORKDIR}/${P/_pre*/-testing} + +src_prepare() { + sed -i 's:^ScriptDir=.*:ScriptDir=/usr/share/nzbget/ppscripts:' nzbget.conf || die + + sed \ + -e 's:^MainDir=.*:MainDir=/var/lib/nzbget:' \ + -e 's:^LockFile=.*:LockFile=/run/nzbget/nzbget.pid:' \ + -e 's:^LogFile=.*:LogFile=/var/log/nzbget/nzbget.log:' \ + -e 's:^WebDir=.*:WebDir=/usr/share/nzbget/webui:' \ + -e 's:^ConfigTemplate=.*:ConfigTemplate=/usr/share/nzbget/nzbget.conf:' \ + -e 's:^DaemonUsername=.*:DaemonUsername=nzbget:' \ + "${S}"/nzbget.conf > "${S}"/nzbgetd.conf || die + + sed -i "/^dist_doc_DATA/d" Makefile.am || die + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable ncurses curses) \ + $(use_enable parcheck) \ + --disable-libpar2-bugfixes-check \ + $(use_enable ssl tls) \ + $(use_enable zlib gzip) \ + --with-tlslib=$(usex gnutls GnuTLS OpenSSL) +} + +src_install() { + default + + # remove unneeded service script + rm "${D}"/usr/sbin/nzbgetd || die + + insinto /etc + doins nzbget.conf + doins nzbgetd.conf + + keepdir /var/lib/nzbget/{dst,nzb,queue,tmp} + keepdir /var/log/nzbget + + newinitd "${FILESDIR}"/nzbget.initd nzbget + newconfd "${FILESDIR}"/nzbget.confd nzbget +} + +pkg_preinst() { + enewgroup nzbget + enewuser nzbget -1 -1 /var/lib/nzbget nzbget + + fowners nzbget:nzbget /var/lib/nzbget/{dst,nzb,queue,tmp} + fperms 750 /var/lib/nzbget/{queue,tmp} + fperms 770 /var/lib/nzbget/{dst,nzb} + + fowners nzbget:nzbget /var/log/nzbget + fperms 750 /var/log/nzbget + + fowners nzbget:nzbget /etc/nzbgetd.conf + fperms 640 /etc/nzbgetd.conf +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog + elog "Please add users that you want to be able to use the system-wide" + elog "nzbget daemon to the nzbget group. To access the daemon run nzbget" + elog "with the --configfile /etc/nzbgetd.conf option." + elog + fi +} diff --git a/net-nntp/nzbget/nzbget-13.0.ebuild b/net-nntp/nzbget/nzbget-13.0.ebuild new file mode 100644 index 000000000000..74faece74214 --- /dev/null +++ b/net-nntp/nzbget/nzbget-13.0.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools user eutils + +MY_P=${P/_pre/-testing-r} + +DESCRIPTION="A command-line based binary newsgrapper supporting .nzb files" +HOMEPAGE="http://nzbget.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="debug gnutls ncurses parcheck ssl zlib" + +RDEPEND="dev-libs/libxml2 + ncurses? ( sys-libs/ncurses ) + parcheck? ( + app-arch/libpar2 + dev-libs/libsigc++:2 + ) + ssl? ( + gnutls? ( net-libs/gnutls ) + !gnutls? ( dev-libs/openssl ) + ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog README nzbget.conf ) + +S=${WORKDIR}/${P/_pre*/-testing} + +src_prepare() { + sed -i 's:^ScriptDir=.*:ScriptDir=/usr/share/nzbget/ppscripts:' nzbget.conf || die + + sed \ + -e 's:^MainDir=.*:MainDir=/var/lib/nzbget:' \ + -e 's:^LockFile=.*:LockFile=/run/nzbget/nzbget.pid:' \ + -e 's:^LogFile=.*:LogFile=/var/log/nzbget/nzbget.log:' \ + -e 's:^WebDir=.*:WebDir=/usr/share/nzbget/webui:' \ + -e 's:^ConfigTemplate=.*:ConfigTemplate=/usr/share/nzbget/nzbget.conf:' \ + -e 's:^DaemonUsername=.*:DaemonUsername=nzbget:' \ + "${S}"/nzbget.conf > "${S}"/nzbgetd.conf || die + + sed -i "/^dist_doc_DATA/d" Makefile.am || die + + epatch "${FILESDIR}"/${PN}-13.0_pre1042-gzip-endif.patch + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable ncurses curses) \ + $(use_enable parcheck) \ + --disable-libpar2-bugfixes-check \ + $(use_enable ssl tls) \ + $(use_enable zlib gzip) \ + --with-tlslib=$(usex gnutls GnuTLS OpenSSL) +} + +src_install() { + default + + # remove unneeded service script + rm "${D}"/usr/sbin/nzbgetd || die + + insinto /etc + doins nzbget.conf + doins nzbgetd.conf + + keepdir /var/lib/nzbget/{dst,nzb,queue,tmp} + keepdir /var/log/nzbget + + newinitd "${FILESDIR}"/nzbget.initd nzbget + newconfd "${FILESDIR}"/nzbget.confd nzbget +} + +pkg_preinst() { + enewgroup nzbget + enewuser nzbget -1 -1 /var/lib/nzbget nzbget + + fowners nzbget:nzbget /var/lib/nzbget/{dst,nzb,queue,tmp} + fperms 750 /var/lib/nzbget/{queue,tmp} + fperms 770 /var/lib/nzbget/{dst,nzb} + + fowners nzbget:nzbget /var/log/nzbget + fperms 750 /var/log/nzbget + + fowners nzbget:nzbget /etc/nzbgetd.conf + fperms 640 /etc/nzbgetd.conf +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog + elog "Please add users that you want to be able to use the system-wide" + elog "nzbget daemon to the nzbget group. To access the daemon run nzbget" + elog "with the --configfile /etc/nzbgetd.conf option." + elog + fi +} diff --git a/net-nntp/nzbget/nzbget-14.0.ebuild b/net-nntp/nzbget/nzbget-14.0.ebuild new file mode 100644 index 000000000000..e4ca4563db76 --- /dev/null +++ b/net-nntp/nzbget/nzbget-14.0.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools eutils user + +MY_P=${P/_pre/-testing-r} + +DESCRIPTION="A command-line based binary newsgrapper supporting .nzb files" +HOMEPAGE="http://nzbget.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="debug gnutls ncurses parcheck ssl zlib" + +RDEPEND="dev-libs/libxml2 + ncurses? ( sys-libs/ncurses ) + parcheck? ( + app-arch/libpar2 + dev-libs/libsigc++:2 + ) + ssl? ( + gnutls? ( net-libs/gnutls ) + !gnutls? ( dev-libs/openssl ) + ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog README nzbget.conf ) + +S=${WORKDIR}/${P/_pre*/-testing} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-14.0_pre1145-tinfo.patch + + sed -i 's:^ScriptDir=.*:ScriptDir=/usr/share/nzbget/ppscripts:' nzbget.conf || die + + sed \ + -e 's:^MainDir=.*:MainDir=/var/lib/nzbget:' \ + -e 's:^LockFile=.*:LockFile=/run/nzbget/nzbget.pid:' \ + -e 's:^LogFile=.*:LogFile=/var/log/nzbget/nzbget.log:' \ + -e 's:^WebDir=.*:WebDir=/usr/share/nzbget/webui:' \ + -e 's:^ConfigTemplate=.*:ConfigTemplate=/usr/share/nzbget/nzbget.conf:' \ + -e 's:^DaemonUsername=.*:DaemonUsername=nzbget:' \ + "${S}"/nzbget.conf > "${S}"/nzbgetd.conf || die + + sed -i "/^dist_doc_DATA/d" Makefile.am || die + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable ncurses curses) \ + $(use_enable parcheck) \ + $(use_enable ssl tls) \ + $(use_enable zlib gzip) \ + --with-tlslib=$(usex gnutls GnuTLS OpenSSL) +} + +src_install() { + default + + # remove unneeded service script + rm "${D}"/usr/sbin/nzbgetd || die + + insinto /etc + doins nzbget.conf + doins nzbgetd.conf + + keepdir /var/lib/nzbget/{dst,nzb,queue,tmp} + keepdir /var/log/nzbget + + newinitd "${FILESDIR}"/nzbget.initd nzbget + newconfd "${FILESDIR}"/nzbget.confd nzbget +} + +pkg_preinst() { + enewgroup nzbget + enewuser nzbget -1 -1 /var/lib/nzbget nzbget + + fowners nzbget:nzbget /var/lib/nzbget/{dst,nzb,queue,tmp} + fperms 750 /var/lib/nzbget/{queue,tmp} + fperms 770 /var/lib/nzbget/{dst,nzb} + + fowners nzbget:nzbget /var/log/nzbget + fperms 750 /var/log/nzbget + + fowners nzbget:nzbget /etc/nzbgetd.conf + fperms 640 /etc/nzbgetd.conf +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog + elog "Please add users that you want to be able to use the system-wide" + elog "nzbget daemon to the nzbget group. To access the daemon run nzbget" + elog "with the --configfile /etc/nzbgetd.conf option." + elog + fi +} diff --git a/net-nntp/nzbget/nzbget-14.1.ebuild b/net-nntp/nzbget/nzbget-14.1.ebuild new file mode 100644 index 000000000000..e564dcfee2be --- /dev/null +++ b/net-nntp/nzbget/nzbget-14.1.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools eutils user + +MY_P=${P/_pre/-testing-r} + +DESCRIPTION="A command-line based binary newsgrapper supporting .nzb files" +HOMEPAGE="http://nzbget.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ~ppc x86" +IUSE="debug gnutls ncurses parcheck ssl zlib" + +RDEPEND="dev-libs/libxml2 + ncurses? ( sys-libs/ncurses ) + parcheck? ( + app-arch/libpar2 + dev-libs/libsigc++:2 + ) + ssl? ( + gnutls? ( net-libs/gnutls ) + !gnutls? ( dev-libs/openssl ) + ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog README nzbget.conf ) + +S=${WORKDIR}/${P/_pre*/-testing} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-14.0_pre1145-tinfo.patch + + sed -i 's:^ScriptDir=.*:ScriptDir=/usr/share/nzbget/ppscripts:' nzbget.conf || die + + sed \ + -e 's:^MainDir=.*:MainDir=/var/lib/nzbget:' \ + -e 's:^LockFile=.*:LockFile=/run/nzbget/nzbget.pid:' \ + -e 's:^LogFile=.*:LogFile=/var/log/nzbget/nzbget.log:' \ + -e 's:^WebDir=.*:WebDir=/usr/share/nzbget/webui:' \ + -e 's:^ConfigTemplate=.*:ConfigTemplate=/usr/share/nzbget/nzbget.conf:' \ + -e 's:^DaemonUsername=.*:DaemonUsername=nzbget:' \ + "${S}"/nzbget.conf > "${S}"/nzbgetd.conf || die + + sed -i "/^dist_doc_DATA/d" Makefile.am || die + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable ncurses curses) \ + $(use_enable parcheck) \ + $(use_enable ssl tls) \ + $(use_enable zlib gzip) \ + --with-tlslib=$(usex gnutls GnuTLS OpenSSL) +} + +src_install() { + default + + # remove unneeded service script + rm "${D}"/usr/sbin/nzbgetd || die + + insinto /etc + doins nzbget.conf + doins nzbgetd.conf + + keepdir /var/lib/nzbget/{dst,nzb,queue,tmp} + keepdir /var/log/nzbget + + newinitd "${FILESDIR}"/nzbget.initd nzbget + newconfd "${FILESDIR}"/nzbget.confd nzbget +} + +pkg_preinst() { + enewgroup nzbget + enewuser nzbget -1 -1 /var/lib/nzbget nzbget + + fowners nzbget:nzbget /var/lib/nzbget/{dst,nzb,queue,tmp} + fperms 750 /var/lib/nzbget/{queue,tmp} + fperms 770 /var/lib/nzbget/{dst,nzb} + + fowners nzbget:nzbget /var/log/nzbget + fperms 750 /var/log/nzbget + + fowners nzbget:nzbget /etc/nzbgetd.conf + fperms 640 /etc/nzbgetd.conf +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog + elog "Please add users that you want to be able to use the system-wide" + elog "nzbget daemon to the nzbget group. To access the daemon run nzbget" + elog "with the --configfile /etc/nzbgetd.conf option." + elog + fi +} diff --git a/net-nntp/nzbget/nzbget-14.2.ebuild b/net-nntp/nzbget/nzbget-14.2.ebuild new file mode 100644 index 000000000000..092726eadb10 --- /dev/null +++ b/net-nntp/nzbget/nzbget-14.2.ebuild @@ -0,0 +1,107 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +inherit autotools eutils user + +MY_P=${P/_pre/-testing-r} + +DESCRIPTION="A command-line based binary newsgrapper supporting .nzb files" +HOMEPAGE="http://nzbget.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="debug gnutls ncurses parcheck ssl zlib" + +RDEPEND="dev-libs/libxml2 + ncurses? ( sys-libs/ncurses ) + parcheck? ( + app-arch/libpar2 + dev-libs/libsigc++:2 + ) + ssl? ( + gnutls? ( net-libs/gnutls ) + !gnutls? ( dev-libs/openssl ) + ) + zlib? ( sys-libs/zlib )" +DEPEND="${RDEPEND} + virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog README nzbget.conf ) + +S=${WORKDIR}/${P/_pre*/-testing} + +src_prepare() { + epatch "${FILESDIR}"/${PN}-14.0_pre1145-tinfo.patch + + sed -i 's:^ScriptDir=.*:ScriptDir=/usr/share/nzbget/ppscripts:' nzbget.conf || die + + sed \ + -e 's:^MainDir=.*:MainDir=/var/lib/nzbget:' \ + -e 's:^LockFile=.*:LockFile=/run/nzbget/nzbget.pid:' \ + -e 's:^LogFile=.*:LogFile=/var/log/nzbget/nzbget.log:' \ + -e 's:^WebDir=.*:WebDir=/usr/share/nzbget/webui:' \ + -e 's:^ConfigTemplate=.*:ConfigTemplate=/usr/share/nzbget/nzbget.conf:' \ + -e 's:^DaemonUsername=.*:DaemonUsername=nzbget:' \ + "${S}"/nzbget.conf > "${S}"/nzbgetd.conf || die + + sed -i "/^dist_doc_DATA/d" Makefile.am || die + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable ncurses curses) \ + $(use_enable parcheck) \ + $(use_enable ssl tls) \ + $(use_enable zlib gzip) \ + --with-tlslib=$(usex gnutls GnuTLS OpenSSL) +} + +src_install() { + default + + # remove unneeded service script + rm "${D}"/usr/sbin/nzbgetd || die + + insinto /etc + doins nzbget.conf + doins nzbgetd.conf + + keepdir /var/lib/nzbget/{dst,nzb,queue,tmp} + keepdir /var/log/nzbget + + newinitd "${FILESDIR}"/nzbget.initd nzbget + newconfd "${FILESDIR}"/nzbget.confd nzbget +} + +pkg_preinst() { + enewgroup nzbget + enewuser nzbget -1 -1 /var/lib/nzbget nzbget + + fowners nzbget:nzbget /var/lib/nzbget/{dst,nzb,queue,tmp} + fperms 750 /var/lib/nzbget/{queue,tmp} + fperms 770 /var/lib/nzbget/{dst,nzb} + + fowners nzbget:nzbget /var/log/nzbget + fperms 750 /var/log/nzbget + + fowners nzbget:nzbget /etc/nzbgetd.conf + fperms 640 /etc/nzbgetd.conf +} + +pkg_postinst() { + if [[ -z ${REPLACING_VERSIONS} ]] ; then + elog + elog "Please add users that you want to be able to use the system-wide" + elog "nzbget daemon to the nzbget group. To access the daemon run nzbget" + elog "with the --configfile /etc/nzbgetd.conf option." + elog + fi +} diff --git a/net-nntp/pan/Manifest b/net-nntp/pan/Manifest new file mode 100644 index 000000000000..ac377db5571a --- /dev/null +++ b/net-nntp/pan/Manifest @@ -0,0 +1 @@ +DIST pan-0.139.tar.bz2 1523907 SHA256 bf5f320f997f582d7ac823e3e854393307161a92e7014d2135e6e2674d144bb9 SHA512 7c6c5f3f54de475e0b5778cc33b6c46f18cb1100d89eab6ea2a6279492cb95a85226ccd6dba1abb43092b78f7cb100cea3215edb21c7813d624e84104b119a81 WHIRLPOOL b8c05cdabff893895370128dad53e19e29a348f3921c394af1a26210ebd9b89e4772dfb926685a549fc9d667c6cdc39fdf32b043a8761488f9f3a77d52aa52df diff --git a/net-nntp/pan/files/pan-0.139-pan.desktop.patch b/net-nntp/pan/files/pan-0.139-pan.desktop.patch new file mode 100644 index 000000000000..1b1de5c4b3db --- /dev/null +++ b/net-nntp/pan/files/pan-0.139-pan.desktop.patch @@ -0,0 +1,31 @@ +From 1dba05f87839a6fa347414a800824812f2642554 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Heinrich=20M=C3=BCller?= <henmull@src.gnome.org> +Date: Wed, 25 Jul 2012 19:36:44 +0200 +Subject: [PATCH] https://bugzilla.gnome.org/show_bug.cgi?id=680468 + +--- + pan.desktop.in | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/pan.desktop.in b/pan.desktop.in +index 4660140..4bbeca5 100644 +--- a/pan.desktop.in ++++ b/pan.desktop.in +@@ -1,10 +1,10 @@ + [Desktop Entry] +-Encoding=UTF-8 +-_Name=Pan Newsreader ++_Name=Pan ++_GenericName=Newsreader + _Comment=Read and Post Usenet Articles + Exec=pan +-Icon=pan.png ++Icon=pan + Terminal=false + Type=Application +-Categories=GTK;Application;Network;News ++Categories=GTK;Network;News; + StartupNotify=false +-- +1.8.0 + diff --git a/net-nntp/pan/metadata.xml b/net-nntp/pan/metadata.xml new file mode 100644 index 000000000000..da6fd63d0085 --- /dev/null +++ b/net-nntp/pan/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>gnome</herd> +</pkgmetadata> diff --git a/net-nntp/pan/pan-0.139.ebuild b/net-nntp/pan/pan-0.139.ebuild new file mode 100644 index 000000000000..77d2bbfba935 --- /dev/null +++ b/net-nntp/pan/pan-0.139.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +inherit eutils + +DESCRIPTION="A newsreader for GNOME" +HOMEPAGE="http://pan.rebelbase.com/" +SRC_URI="http://pan.rebelbase.com/download/releases/${PV}/source/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha amd64 hppa ~ppc ~ppc64 ~sparc x86 ~x86-fbsd" +IUSE="dbus gnome-keyring libnotify spell ssl" + +RDEPEND=">=dev-libs/glib-2.26:2 + >=x11-libs/gtk+-2.16:2 + dev-libs/gmime:2.6 + gnome-keyring? ( >=gnome-base/libgnome-keyring-3.2 ) + libnotify? ( >=x11-libs/libnotify-0.4.1 ) + spell? ( + >=app-text/enchant-1.6 + >=app-text/gtkspell-2.0.7:2 ) + ssl? ( >=net-libs/gnutls-3 )" + +DEPEND="${RDEPEND} + app-text/gnome-doc-utils + >=dev-util/intltool-0.35.5 + sys-devel/gettext + virtual/pkgconfig" + +DOCS="AUTHORS ChangeLog NEWS README" + +src_prepare() { + # in next release + epatch "${FILESDIR}/${P}-pan.desktop.patch" +} + +src_configure() { + econf \ + --without-gtk3 \ + $(use_with dbus) \ + $(use_enable gnome-keyring gkr) \ + $(use_with spell gtkspell) \ + $(use_enable libnotify) \ + $(use_with ssl gnutls) +} diff --git a/net-nntp/sabnzbd/Manifest b/net-nntp/sabnzbd/Manifest new file mode 100644 index 000000000000..4bfb2182cfb6 --- /dev/null +++ b/net-nntp/sabnzbd/Manifest @@ -0,0 +1,5 @@ +DIST SABnzbd-0.7.16-src.tar.gz 2275768 SHA256 2c50496c8be81ac4498944a5209b2c6b3bdfecc48cf4e0df54552c5d985e5772 SHA512 ae97f093c34a100ab92949eb25a48db4c7d7d06c1fc082d3e8390d84e15dbdbbe4e682f47532cb84571039caab9aed377957522fa07b6a0f49c368eb77d66144 WHIRLPOOL 470f300f9f7b5f833d14c8170aee8690cddcfb9e442c3d9a6d108b155d6b2f7afab19010a7bf650c31e4ade5ca680433245a9c226948b52d8301861f5dc35965 +DIST SABnzbd-0.7.17-src.tar.gz 2310300 SHA256 a501517dbaf161deab2153118ff3b44512ee1d8984c3603bf17c593cf080eb09 SHA512 5f8ad391f698f5c8c069ea9a4be59124096ebd24793889db215cbc678dfd572c974083acd0d21b8b776d55cb9ebd8553952147ec2cd1768f3aab66cfba4ebaf3 WHIRLPOOL 6ec6a531c683607d36b533a1ae078ef87e5afdaa02e08588c8b5f045e735a1aa64c234e71c5d7218d15fed0eb64ef12f1a280ef65ed208b0d7a5e1408997fbca +DIST SABnzbd-0.7.18-src.tar.gz 2317137 SHA256 aa05697d901b3e334e92f274b2e8788973059840be656a1545e8f2a4b070b014 SHA512 db7606be913fc89cdea0c037594b614c16f3887b32d1133c5f7a6c92f3dac5bec2250972e35941cd462e65bb29e91db2a43ff1e6624d827223afb957ec7922fe WHIRLPOOL 313e74425555af3dc86e111440974fefef42531018faad14a2a39649cef21a2b2d1d5a917c4ec13089ef9a46a2c31fe56b544ae0fa72628497782be756e8014f +DIST SABnzbd-0.7.19-src.tar.gz 2386744 SHA256 31ad0ae24db3873011db816e1b100f4429734b2260f4c669b7261d2f85717487 SHA512 383788d87a3ee4e69ba818f6614f6929aa328d1153b746e04736868de598ee35e556a07cced7c74bc89c54fe77c1e52c4cdde8ed37d536a09bd1c605c551b9e7 WHIRLPOOL fbf1ab129a403011bd6957272d348fd745621e9c13f46f3988362bb8bb7a6ceb26b57253978ec5f5ae97c2ea942ba80ff1cab0ca1d1f99d33a1c55fc03b0dad9 +DIST SABnzbd-0.7.20-src.tar.gz 2389762 SHA256 20b3a4613a0ecdede4fdfeb628ae806e458ac1a6fb684306328dd4ed1faf8742 SHA512 51ea888fcb7b49156cb719cb4fe75725d69acd726097d8b2526d6af87d0404bf08d0ab4b82f25dae7ac9a52d6c639e57a145bf5af6005fa435ad31f239a716d5 WHIRLPOOL 2686160be649c051ac1186481dae1e876650fbc91fe3ea1ab2d1569baea51f0ab7d0be6c7942b9facd6e5f856ab24ab36d1dc2f55dc645f06be275b2e43abb4b diff --git a/net-nntp/sabnzbd/files/growler-support-gntp-1.0.patch b/net-nntp/sabnzbd/files/growler-support-gntp-1.0.patch new file mode 100644 index 000000000000..560b88a18d49 --- /dev/null +++ b/net-nntp/sabnzbd/files/growler-support-gntp-1.0.patch @@ -0,0 +1,33 @@ +From 96b4891d2323cb44f479bc94d1410348b1468298 Mon Sep 17 00:00:00 2001 +From: Justin Bronder <jsbronder@gmail.com> +Date: Mon, 24 Jun 2013 19:03:17 -0400 +Subject: [PATCH] growler: support >=gntp-1.0 + +Fixes Gentoo bug https://bugs.gentoo.org/show_bug.cgi?id=474540 +--- + sabnzbd/growler.py | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/sabnzbd/growler.py b/sabnzbd/growler.py +index d250703..f39bb44 100644 +--- a/sabnzbd/growler.py ++++ b/sabnzbd/growler.py +@@ -31,7 +31,14 @@ import sabnzbd + import sabnzbd.cfg + from sabnzbd.encoding import unicoder, latin1 + from sabnzbd.constants import NOTIFY_KEYS +-from gntp import GNTPRegister ++ ++try: ++ # <= version 0.6 ++ from gntp import GNTPRegister ++except ImportError: ++ # >= version 1.0 ++ from gntp.core import GNTPRegister ++ + from gntp.notifier import GrowlNotifier + try: + import Growl +-- +1.8.1.5 + diff --git a/net-nntp/sabnzbd/files/par2cmdline.patch b/net-nntp/sabnzbd/files/par2cmdline.patch new file mode 100644 index 000000000000..d5648eb57aea --- /dev/null +++ b/net-nntp/sabnzbd/files/par2cmdline.patch @@ -0,0 +1,12 @@ +--- sabnzbd/newsunpack.py.orig 2013-07-07 13:29:12.000000000 +0200 ++++ sabnzbd/newsunpack.py 2013-08-02 20:16:22.286697000 +0200 +@@ -966,7 +966,7 @@ + + # Append the wildcard for this set + wildcard = '%s*' % os.path.join(os.path.split(parfile)[0], setname) +- if single or len(globber(wildcard, None)) < 2: ++ if len(globber(wildcard, None)) < 2: + # Support bizarre naming conventions + wildcard = os.path.join(os.path.split(parfile)[0], '*') + command.append(wildcard) + diff --git a/net-nntp/sabnzbd/files/sabnzbd b/net-nntp/sabnzbd/files/sabnzbd new file mode 100644 index 000000000000..ccc1a67fcf71 --- /dev/null +++ b/net-nntp/sabnzbd/files/sabnzbd @@ -0,0 +1,14 @@ +#!/bin/sh + +pyexe=python2.7 + +if [ ! -x /usr/bin/${pyexe} ]; then + pyexe=python2.6 +fi + +if [ ! -x /usr/bin/${pyexe} ]; then + echo "No suitable python executable found in /usr/sbin (python2.6 || python2.7)" + exit 1 +fi + +cd /usr/share/sabnzbd && /usr/bin/${pyexe} SABnzbd.py $* diff --git a/net-nntp/sabnzbd/files/sabnzbd.confd b/net-nntp/sabnzbd/files/sabnzbd.confd new file mode 100644 index 000000000000..ec40168657bd --- /dev/null +++ b/net-nntp/sabnzbd/files/sabnzbd.confd @@ -0,0 +1,6 @@ +SABNZBD_CONFIGFILE=/etc/sabnzbd/sabnzbd.ini +SABNZBD_USER=sabnzbd +SABNZBD_GROUP=sabnzbd + +# 0 - error/warnings, 1 - info, 2 - debug +SABNZBD_LOGGING=1 diff --git a/net-nntp/sabnzbd/files/sabnzbd.ini b/net-nntp/sabnzbd/files/sabnzbd.ini new file mode 100644 index 000000000000..1ce776f86c18 --- /dev/null +++ b/net-nntp/sabnzbd/files/sabnzbd.ini @@ -0,0 +1,14 @@ +__version__ = 19 +[misc] +log_dir = /var/log/sabnzbd +admin_dir = /var/lib/sabnzbd/admin +cache_dir = /var/lib/sabnzbd/cache +complete_dir = /var/lib/sabnzbd/complete +download_dir = /var/lib/sabnzbd/download +dirscan_dir = /var/lib/sabnzbd/dirscan +nzb_backup_dir = /var/lib/sabnzbd/backup +auto_browser = 0 +host = 0.0.0.0 +port = 8080 +[growl] +growl_enable = 0 diff --git a/net-nntp/sabnzbd/files/sabnzbd.initd b/net-nntp/sabnzbd/files/sabnzbd.initd new file mode 100644 index 000000000000..5cfc91b9e70a --- /dev/null +++ b/net-nntp/sabnzbd/files/sabnzbd.initd @@ -0,0 +1,99 @@ +#!/sbin/runscript +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +RUNDIR=/var/run/sabnzbd + +depend() { + need net +} + +get_var() { + echo $(sed -n \ + '/^\[misc]/,/^'$1'/ s/^'$1' = \([[:alnum:].]\+\)[\r|\n|\r\n]*$/\1/p' \ + "${SABNZBD_CONFIGFILE}") +} + +get_port() { + if [ "$(get_var 'enable_https')" -eq 1 ]; then + echo $(get_var 'https_port') + else + echo $(get_var 'port') + fi +} + +get_addr() { + local host=$(get_var 'host') + local protocol='http' + + [ "${host}" == "0.0.0.0" ] && host=localhost + [ "$(get_var 'enable_https')" -eq 1 ] && protocol='https' + + echo "${protocol}://${host}:$(get_port)" +} + +get_pidfile() { + echo "${RUNDIR}/sabnzbd-$(get_port).pid" +} + +start() { + ebegin "Starting SABnzbd" + + checkpath -q -d -o ${SABNZBD_USER}:${SABNZBD_GROUP} -m 0770 "${RUNDIR}" + + start-stop-daemon \ + --quiet \ + --start \ + --user ${SABNZBD_USER} \ + --group ${SABNZBD_GROUP} \ + --name sabnzbd \ + --background \ + --pidfile "$(get_pidfile)" \ + --exec /usr/bin/sabnzbd \ + -- \ + --config-file "${SABNZBD_CONFIGFILE}" \ + --logging "${SABNZBD_LOGGING}" \ + --daemon \ + --pid "${RUNDIR}" + + eend $? +} + +start_pre() { + if [ "$RC_CMD" == "restart" ]; then + local pidfile=$(get_pidfile) + while [ -e ${pidfile} ]; do + sleep 1 + done + fi + + return 0 +} + +stop() { + local api_key=$(get_var 'api_key') + local addr=$(get_addr) + local rc=1 + + ebegin "Stopping SABnzbd @ ${addr}" + # This can only work if we have enabled the API + if [ -n "${api_key}" -a "$(get_var 'disable_api_key')" -ne 1 ]; then + local ret + einfo "Attempting web-based shutdown @ ${addr}" + + # SABnzbd will return "ok" if shutdown is successful + ret=$(/usr/bin/curl -k -s "${addr}/sabnzbd/api?mode=shutdown&apikey=${api_key}") + [ "${ret}" == "ok" ] && rc=0 + fi + + if [ "${rc}" -ne 0 ]; then + einfo "Falling back to SIGTERM, this may not work if you restarted via the web interface" + start-stop-daemon \ + --stop \ + --pidfile $(get_pidfile) \ + --retry SIGTERM/1/SIGKILL/5 + rc=$? + fi + + eend ${rc} +} diff --git a/net-nntp/sabnzbd/files/use-system-configobj-and-feedparser.patch b/net-nntp/sabnzbd/files/use-system-configobj-and-feedparser.patch new file mode 100644 index 000000000000..a55a54a01093 --- /dev/null +++ b/net-nntp/sabnzbd/files/use-system-configobj-and-feedparser.patch @@ -0,0 +1,44 @@ +From 89cb8b86fb087bc4706478ce4ec3ad5fd19602e6 Mon Sep 17 00:00:00 2001 +From: Justin Bronder <jsbronder@gmail.com> +Date: Thu, 3 Jan 2013 04:10:37 -0500 +Subject: [PATCH] use system configobj and feedparser + +--- + sabnzbd/config.py | 4 +++- + sabnzbd/rss.py | 2 +- + 2 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/sabnzbd/config.py b/sabnzbd/config.py +index c3fc54c..cce2b14 100644 +--- a/sabnzbd/config.py ++++ b/sabnzbd/config.py +@@ -23,10 +23,12 @@ import os + import logging + import threading + import shutil ++ ++import configobj ++ + import sabnzbd.misc + from sabnzbd.constants import CONFIG_VERSION, NORMAL_PRIORITY, DEFAULT_PRIORITY + from sabnzbd.utils import listquote +-from sabnzbd.utils import configobj + from sabnzbd.decorators import synchronized + + CONFIG_LOCK = threading.Lock() +diff --git a/sabnzbd/rss.py b/sabnzbd/rss.py +index 6fe6f5b..19a5d0f 100644 +--- a/sabnzbd/rss.py ++++ b/sabnzbd/rss.py +@@ -35,7 +35,7 @@ from sabnzbd.misc import cat_convert, sanitize_foldername, wildcard_to_re, cat_t + import sabnzbd.emailer as emailer + from sabnzbd.encoding import latin1, unicoder, xml_name + +-import sabnzbd.utils.feedparser as feedparser ++import feedparser + + __RSS = None # Global pointer to RSS-scanner instance + +-- +1.7.3.4 + diff --git a/net-nntp/sabnzbd/metadata.xml b/net-nntp/sabnzbd/metadata.xml new file mode 100644 index 000000000000..3ae021381fad --- /dev/null +++ b/net-nntp/sabnzbd/metadata.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>jsbronder@gentoo.org</email> + </maintainer> + <use> + <flag name="rar">Add support for extracting rar files</flag> + <flag name="ssl">Add support for SSL web interface</flag> + <flag name="unzip">Add support for extracting zip files</flag> + <flag name="yenc">Use yenc to speed up nntp encoding and decoding</flag> + </use> + <upstream> + <remote-id type="sourceforge">sabnzbdplus</remote-id> + </upstream> +</pkgmetadata> diff --git a/net-nntp/sabnzbd/sabnzbd-0.7.16.ebuild b/net-nntp/sabnzbd/sabnzbd-0.7.16.ebuild new file mode 100644 index 000000000000..4d8ee3bce7a4 --- /dev/null +++ b/net-nntp/sabnzbd/sabnzbd-0.7.16.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +# Require python-2 with sqlite USE flag +PYTHON_DEPEND="2:2.6" +PYTHON_USE_WITH="sqlite" + +inherit eutils python user + +MY_P="${P/sab/SAB}" + +DESCRIPTION="Binary newsgrabber with web-interface" +HOMEPAGE="http://www.sabnzbd.org/" +SRC_URI="mirror://sourceforge/sabnzbdplus/${MY_P}-src.tar.gz" + +# Sabnzbd is GPL-2 but bundles software with the following licenses. +LICENSE="GPL-2 BSD LGPL-2 MIT BSD-1" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+rar +ssl unzip +yenc" + +# Sabnzbd is installed to /usr/share/ as upstream makes it clear they should not +# be in python's sitedir. See: http://wiki.sabnzbd.org/unix-packaging + +# TODO: still bundled but not in protage: +# kronos, rarfile, rsslib, ssmtplib, listquote, json-py, msgfmt +# pynewsleecher +# +# Also note that cherrypy is still bundled. It's near impossible to find +# out where the bundled and heavily patched version came from (pulled from +# cherrypy subversion, patched somewhere, then imported to sabnzbd and patched +# further. Upstream is planning on making this easier with 0.8.0. +# https://github.com/sabnzbd/sabnzbd/issues/47 + +RDEPEND=" + >=app-arch/par2cmdline-0.4 + >=dev-python/cheetah-2.0.1 + dev-python/configobj + dev-python/feedparser + dev-python/gntp + dev-python/pythonutils + net-misc/wget + rar? ( || ( app-arch/unrar app-arch/rar ) ) + ssl? ( dev-python/pyopenssl ) + unzip? ( >=app-arch/unzip-5.5.2 ) + yenc? ( dev-python/yenc ) +" + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + HOMEDIR="/var/lib/${PN}" + python_set_active_version 2 + python_pkg_setup + + # Create sabnzbd group + enewgroup ${PN} + # Create sabnzbd user, put in sabnzbd group + enewuser "${PN}" -1 -1 "${HOMEDIR}" "${PN}" +} + +src_prepare() { + epatch "${FILESDIR}"/use-system-configobj-and-feedparser.patch + epatch "${FILESDIR}"/growler-support-gntp-1.0.patch + epatch "${FILESDIR}"/par2cmdline.patch + + # remove bundled modules + rm -r sabnzbd/utils/{feedparser,configobj}.py || die + rm -r gntp || die + rm licenses/License-{feedparser,configobj,gntp}.txt || die +} + +src_install() { + local d + + dodir /usr/share/${PN}/sabnzbd + insinto /usr/share/${PN}/ + doins SABnzbd.py + fperms +x /usr/share/${PN}/SABnzbd.py + dobin "${FILESDIR}"/sabnzbd + + for d in cherrypy email icons interfaces locale po sabnzbd tools util; do + insinto /usr/share/${PN}/${d} + doins -r ${d}/* + done + + newinitd "${FILESDIR}/${PN}.initd" "${PN}" + newconfd "${FILESDIR}/${PN}.confd" "${PN}" + + diropts -o ${PN} -g ${PN} + dodir /etc/${PN} + dodir /var/log/${PN} + + insinto "/etc/${PN}" + insopts -m 0600 -o ${PN} -g ${PN} + doins "${FILESDIR}/${PN}.ini" + + dodoc {ABOUT,CHANGELOG,ISSUES,README}.txt Sample-PostProc.sh licenses/* +} + +pkg_postinst() { + python_mod_optimize /usr/share/${PN} + + einfo "Default directory: ${HOMEDIR}" + einfo "" + einfo "Run: gpasswd -a <user> sabnzbd" + einfo "to add a user to the sabnzbd group so it can edit sabnzbd files" + einfo "" + einfo "By default sabnzbd will listen on 127.0.0.1:8080" +} + +pkg_postrm() { + python_mod_cleanup /usr/share/${PN} +} diff --git a/net-nntp/sabnzbd/sabnzbd-0.7.17.ebuild b/net-nntp/sabnzbd/sabnzbd-0.7.17.ebuild new file mode 100644 index 000000000000..4d8ee3bce7a4 --- /dev/null +++ b/net-nntp/sabnzbd/sabnzbd-0.7.17.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +# Require python-2 with sqlite USE flag +PYTHON_DEPEND="2:2.6" +PYTHON_USE_WITH="sqlite" + +inherit eutils python user + +MY_P="${P/sab/SAB}" + +DESCRIPTION="Binary newsgrabber with web-interface" +HOMEPAGE="http://www.sabnzbd.org/" +SRC_URI="mirror://sourceforge/sabnzbdplus/${MY_P}-src.tar.gz" + +# Sabnzbd is GPL-2 but bundles software with the following licenses. +LICENSE="GPL-2 BSD LGPL-2 MIT BSD-1" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+rar +ssl unzip +yenc" + +# Sabnzbd is installed to /usr/share/ as upstream makes it clear they should not +# be in python's sitedir. See: http://wiki.sabnzbd.org/unix-packaging + +# TODO: still bundled but not in protage: +# kronos, rarfile, rsslib, ssmtplib, listquote, json-py, msgfmt +# pynewsleecher +# +# Also note that cherrypy is still bundled. It's near impossible to find +# out where the bundled and heavily patched version came from (pulled from +# cherrypy subversion, patched somewhere, then imported to sabnzbd and patched +# further. Upstream is planning on making this easier with 0.8.0. +# https://github.com/sabnzbd/sabnzbd/issues/47 + +RDEPEND=" + >=app-arch/par2cmdline-0.4 + >=dev-python/cheetah-2.0.1 + dev-python/configobj + dev-python/feedparser + dev-python/gntp + dev-python/pythonutils + net-misc/wget + rar? ( || ( app-arch/unrar app-arch/rar ) ) + ssl? ( dev-python/pyopenssl ) + unzip? ( >=app-arch/unzip-5.5.2 ) + yenc? ( dev-python/yenc ) +" + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + HOMEDIR="/var/lib/${PN}" + python_set_active_version 2 + python_pkg_setup + + # Create sabnzbd group + enewgroup ${PN} + # Create sabnzbd user, put in sabnzbd group + enewuser "${PN}" -1 -1 "${HOMEDIR}" "${PN}" +} + +src_prepare() { + epatch "${FILESDIR}"/use-system-configobj-and-feedparser.patch + epatch "${FILESDIR}"/growler-support-gntp-1.0.patch + epatch "${FILESDIR}"/par2cmdline.patch + + # remove bundled modules + rm -r sabnzbd/utils/{feedparser,configobj}.py || die + rm -r gntp || die + rm licenses/License-{feedparser,configobj,gntp}.txt || die +} + +src_install() { + local d + + dodir /usr/share/${PN}/sabnzbd + insinto /usr/share/${PN}/ + doins SABnzbd.py + fperms +x /usr/share/${PN}/SABnzbd.py + dobin "${FILESDIR}"/sabnzbd + + for d in cherrypy email icons interfaces locale po sabnzbd tools util; do + insinto /usr/share/${PN}/${d} + doins -r ${d}/* + done + + newinitd "${FILESDIR}/${PN}.initd" "${PN}" + newconfd "${FILESDIR}/${PN}.confd" "${PN}" + + diropts -o ${PN} -g ${PN} + dodir /etc/${PN} + dodir /var/log/${PN} + + insinto "/etc/${PN}" + insopts -m 0600 -o ${PN} -g ${PN} + doins "${FILESDIR}/${PN}.ini" + + dodoc {ABOUT,CHANGELOG,ISSUES,README}.txt Sample-PostProc.sh licenses/* +} + +pkg_postinst() { + python_mod_optimize /usr/share/${PN} + + einfo "Default directory: ${HOMEDIR}" + einfo "" + einfo "Run: gpasswd -a <user> sabnzbd" + einfo "to add a user to the sabnzbd group so it can edit sabnzbd files" + einfo "" + einfo "By default sabnzbd will listen on 127.0.0.1:8080" +} + +pkg_postrm() { + python_mod_cleanup /usr/share/${PN} +} diff --git a/net-nntp/sabnzbd/sabnzbd-0.7.18.ebuild b/net-nntp/sabnzbd/sabnzbd-0.7.18.ebuild new file mode 100644 index 000000000000..4d8ee3bce7a4 --- /dev/null +++ b/net-nntp/sabnzbd/sabnzbd-0.7.18.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +# Require python-2 with sqlite USE flag +PYTHON_DEPEND="2:2.6" +PYTHON_USE_WITH="sqlite" + +inherit eutils python user + +MY_P="${P/sab/SAB}" + +DESCRIPTION="Binary newsgrabber with web-interface" +HOMEPAGE="http://www.sabnzbd.org/" +SRC_URI="mirror://sourceforge/sabnzbdplus/${MY_P}-src.tar.gz" + +# Sabnzbd is GPL-2 but bundles software with the following licenses. +LICENSE="GPL-2 BSD LGPL-2 MIT BSD-1" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+rar +ssl unzip +yenc" + +# Sabnzbd is installed to /usr/share/ as upstream makes it clear they should not +# be in python's sitedir. See: http://wiki.sabnzbd.org/unix-packaging + +# TODO: still bundled but not in protage: +# kronos, rarfile, rsslib, ssmtplib, listquote, json-py, msgfmt +# pynewsleecher +# +# Also note that cherrypy is still bundled. It's near impossible to find +# out where the bundled and heavily patched version came from (pulled from +# cherrypy subversion, patched somewhere, then imported to sabnzbd and patched +# further. Upstream is planning on making this easier with 0.8.0. +# https://github.com/sabnzbd/sabnzbd/issues/47 + +RDEPEND=" + >=app-arch/par2cmdline-0.4 + >=dev-python/cheetah-2.0.1 + dev-python/configobj + dev-python/feedparser + dev-python/gntp + dev-python/pythonutils + net-misc/wget + rar? ( || ( app-arch/unrar app-arch/rar ) ) + ssl? ( dev-python/pyopenssl ) + unzip? ( >=app-arch/unzip-5.5.2 ) + yenc? ( dev-python/yenc ) +" + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + HOMEDIR="/var/lib/${PN}" + python_set_active_version 2 + python_pkg_setup + + # Create sabnzbd group + enewgroup ${PN} + # Create sabnzbd user, put in sabnzbd group + enewuser "${PN}" -1 -1 "${HOMEDIR}" "${PN}" +} + +src_prepare() { + epatch "${FILESDIR}"/use-system-configobj-and-feedparser.patch + epatch "${FILESDIR}"/growler-support-gntp-1.0.patch + epatch "${FILESDIR}"/par2cmdline.patch + + # remove bundled modules + rm -r sabnzbd/utils/{feedparser,configobj}.py || die + rm -r gntp || die + rm licenses/License-{feedparser,configobj,gntp}.txt || die +} + +src_install() { + local d + + dodir /usr/share/${PN}/sabnzbd + insinto /usr/share/${PN}/ + doins SABnzbd.py + fperms +x /usr/share/${PN}/SABnzbd.py + dobin "${FILESDIR}"/sabnzbd + + for d in cherrypy email icons interfaces locale po sabnzbd tools util; do + insinto /usr/share/${PN}/${d} + doins -r ${d}/* + done + + newinitd "${FILESDIR}/${PN}.initd" "${PN}" + newconfd "${FILESDIR}/${PN}.confd" "${PN}" + + diropts -o ${PN} -g ${PN} + dodir /etc/${PN} + dodir /var/log/${PN} + + insinto "/etc/${PN}" + insopts -m 0600 -o ${PN} -g ${PN} + doins "${FILESDIR}/${PN}.ini" + + dodoc {ABOUT,CHANGELOG,ISSUES,README}.txt Sample-PostProc.sh licenses/* +} + +pkg_postinst() { + python_mod_optimize /usr/share/${PN} + + einfo "Default directory: ${HOMEDIR}" + einfo "" + einfo "Run: gpasswd -a <user> sabnzbd" + einfo "to add a user to the sabnzbd group so it can edit sabnzbd files" + einfo "" + einfo "By default sabnzbd will listen on 127.0.0.1:8080" +} + +pkg_postrm() { + python_mod_cleanup /usr/share/${PN} +} diff --git a/net-nntp/sabnzbd/sabnzbd-0.7.19.ebuild b/net-nntp/sabnzbd/sabnzbd-0.7.19.ebuild new file mode 100644 index 000000000000..4d8ee3bce7a4 --- /dev/null +++ b/net-nntp/sabnzbd/sabnzbd-0.7.19.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +# Require python-2 with sqlite USE flag +PYTHON_DEPEND="2:2.6" +PYTHON_USE_WITH="sqlite" + +inherit eutils python user + +MY_P="${P/sab/SAB}" + +DESCRIPTION="Binary newsgrabber with web-interface" +HOMEPAGE="http://www.sabnzbd.org/" +SRC_URI="mirror://sourceforge/sabnzbdplus/${MY_P}-src.tar.gz" + +# Sabnzbd is GPL-2 but bundles software with the following licenses. +LICENSE="GPL-2 BSD LGPL-2 MIT BSD-1" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+rar +ssl unzip +yenc" + +# Sabnzbd is installed to /usr/share/ as upstream makes it clear they should not +# be in python's sitedir. See: http://wiki.sabnzbd.org/unix-packaging + +# TODO: still bundled but not in protage: +# kronos, rarfile, rsslib, ssmtplib, listquote, json-py, msgfmt +# pynewsleecher +# +# Also note that cherrypy is still bundled. It's near impossible to find +# out where the bundled and heavily patched version came from (pulled from +# cherrypy subversion, patched somewhere, then imported to sabnzbd and patched +# further. Upstream is planning on making this easier with 0.8.0. +# https://github.com/sabnzbd/sabnzbd/issues/47 + +RDEPEND=" + >=app-arch/par2cmdline-0.4 + >=dev-python/cheetah-2.0.1 + dev-python/configobj + dev-python/feedparser + dev-python/gntp + dev-python/pythonutils + net-misc/wget + rar? ( || ( app-arch/unrar app-arch/rar ) ) + ssl? ( dev-python/pyopenssl ) + unzip? ( >=app-arch/unzip-5.5.2 ) + yenc? ( dev-python/yenc ) +" + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + HOMEDIR="/var/lib/${PN}" + python_set_active_version 2 + python_pkg_setup + + # Create sabnzbd group + enewgroup ${PN} + # Create sabnzbd user, put in sabnzbd group + enewuser "${PN}" -1 -1 "${HOMEDIR}" "${PN}" +} + +src_prepare() { + epatch "${FILESDIR}"/use-system-configobj-and-feedparser.patch + epatch "${FILESDIR}"/growler-support-gntp-1.0.patch + epatch "${FILESDIR}"/par2cmdline.patch + + # remove bundled modules + rm -r sabnzbd/utils/{feedparser,configobj}.py || die + rm -r gntp || die + rm licenses/License-{feedparser,configobj,gntp}.txt || die +} + +src_install() { + local d + + dodir /usr/share/${PN}/sabnzbd + insinto /usr/share/${PN}/ + doins SABnzbd.py + fperms +x /usr/share/${PN}/SABnzbd.py + dobin "${FILESDIR}"/sabnzbd + + for d in cherrypy email icons interfaces locale po sabnzbd tools util; do + insinto /usr/share/${PN}/${d} + doins -r ${d}/* + done + + newinitd "${FILESDIR}/${PN}.initd" "${PN}" + newconfd "${FILESDIR}/${PN}.confd" "${PN}" + + diropts -o ${PN} -g ${PN} + dodir /etc/${PN} + dodir /var/log/${PN} + + insinto "/etc/${PN}" + insopts -m 0600 -o ${PN} -g ${PN} + doins "${FILESDIR}/${PN}.ini" + + dodoc {ABOUT,CHANGELOG,ISSUES,README}.txt Sample-PostProc.sh licenses/* +} + +pkg_postinst() { + python_mod_optimize /usr/share/${PN} + + einfo "Default directory: ${HOMEDIR}" + einfo "" + einfo "Run: gpasswd -a <user> sabnzbd" + einfo "to add a user to the sabnzbd group so it can edit sabnzbd files" + einfo "" + einfo "By default sabnzbd will listen on 127.0.0.1:8080" +} + +pkg_postrm() { + python_mod_cleanup /usr/share/${PN} +} diff --git a/net-nntp/sabnzbd/sabnzbd-0.7.20.ebuild b/net-nntp/sabnzbd/sabnzbd-0.7.20.ebuild new file mode 100644 index 000000000000..4d8ee3bce7a4 --- /dev/null +++ b/net-nntp/sabnzbd/sabnzbd-0.7.20.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="4" + +# Require python-2 with sqlite USE flag +PYTHON_DEPEND="2:2.6" +PYTHON_USE_WITH="sqlite" + +inherit eutils python user + +MY_P="${P/sab/SAB}" + +DESCRIPTION="Binary newsgrabber with web-interface" +HOMEPAGE="http://www.sabnzbd.org/" +SRC_URI="mirror://sourceforge/sabnzbdplus/${MY_P}-src.tar.gz" + +# Sabnzbd is GPL-2 but bundles software with the following licenses. +LICENSE="GPL-2 BSD LGPL-2 MIT BSD-1" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+rar +ssl unzip +yenc" + +# Sabnzbd is installed to /usr/share/ as upstream makes it clear they should not +# be in python's sitedir. See: http://wiki.sabnzbd.org/unix-packaging + +# TODO: still bundled but not in protage: +# kronos, rarfile, rsslib, ssmtplib, listquote, json-py, msgfmt +# pynewsleecher +# +# Also note that cherrypy is still bundled. It's near impossible to find +# out where the bundled and heavily patched version came from (pulled from +# cherrypy subversion, patched somewhere, then imported to sabnzbd and patched +# further. Upstream is planning on making this easier with 0.8.0. +# https://github.com/sabnzbd/sabnzbd/issues/47 + +RDEPEND=" + >=app-arch/par2cmdline-0.4 + >=dev-python/cheetah-2.0.1 + dev-python/configobj + dev-python/feedparser + dev-python/gntp + dev-python/pythonutils + net-misc/wget + rar? ( || ( app-arch/unrar app-arch/rar ) ) + ssl? ( dev-python/pyopenssl ) + unzip? ( >=app-arch/unzip-5.5.2 ) + yenc? ( dev-python/yenc ) +" + +S="${WORKDIR}/${MY_P}" + +pkg_setup() { + HOMEDIR="/var/lib/${PN}" + python_set_active_version 2 + python_pkg_setup + + # Create sabnzbd group + enewgroup ${PN} + # Create sabnzbd user, put in sabnzbd group + enewuser "${PN}" -1 -1 "${HOMEDIR}" "${PN}" +} + +src_prepare() { + epatch "${FILESDIR}"/use-system-configobj-and-feedparser.patch + epatch "${FILESDIR}"/growler-support-gntp-1.0.patch + epatch "${FILESDIR}"/par2cmdline.patch + + # remove bundled modules + rm -r sabnzbd/utils/{feedparser,configobj}.py || die + rm -r gntp || die + rm licenses/License-{feedparser,configobj,gntp}.txt || die +} + +src_install() { + local d + + dodir /usr/share/${PN}/sabnzbd + insinto /usr/share/${PN}/ + doins SABnzbd.py + fperms +x /usr/share/${PN}/SABnzbd.py + dobin "${FILESDIR}"/sabnzbd + + for d in cherrypy email icons interfaces locale po sabnzbd tools util; do + insinto /usr/share/${PN}/${d} + doins -r ${d}/* + done + + newinitd "${FILESDIR}/${PN}.initd" "${PN}" + newconfd "${FILESDIR}/${PN}.confd" "${PN}" + + diropts -o ${PN} -g ${PN} + dodir /etc/${PN} + dodir /var/log/${PN} + + insinto "/etc/${PN}" + insopts -m 0600 -o ${PN} -g ${PN} + doins "${FILESDIR}/${PN}.ini" + + dodoc {ABOUT,CHANGELOG,ISSUES,README}.txt Sample-PostProc.sh licenses/* +} + +pkg_postinst() { + python_mod_optimize /usr/share/${PN} + + einfo "Default directory: ${HOMEDIR}" + einfo "" + einfo "Run: gpasswd -a <user> sabnzbd" + einfo "to add a user to the sabnzbd group so it can edit sabnzbd files" + einfo "" + einfo "By default sabnzbd will listen on 127.0.0.1:8080" +} + +pkg_postrm() { + python_mod_cleanup /usr/share/${PN} +} diff --git a/net-nntp/slrn/Manifest b/net-nntp/slrn/Manifest new file mode 100644 index 000000000000..c2fc3cf10c1d --- /dev/null +++ b/net-nntp/slrn/Manifest @@ -0,0 +1,2 @@ +DIST slrn-1.0.1.tar.gz 1529545 SHA256 06b4a060939ec3077e5a060c7a2556747c96061a24eec2c09e1feacd5dbeaae6 SHA512 fd2eecb7a82c078b401a8cf8c0e54166d508418f4064c3b074a33dcf2aa1c7a38ce324fee108c5d14e63a385fb6e45b82477f24f9a359870160d12ecb39440b5 WHIRLPOOL e124630d69713351647aa3b908b5a4fe27449d7d9ebde1ce1fb9f52a8aefb61888be7b2290fbfef3db6adf4c3acade3d117921f73245f26ee3e7fe3713a81d82 +DIST slrn-1.0.2.tar.bz2 995433 SHA256 99acbc51e7212ccc5c39556fa8ec6ada772f0bb5cc45a3bb90dadb8fe764fb59 SHA512 264dce88622e544356782c483f3639252ba57408d79775b2cd3ea06962ea3ebc568bc45ed19f1690c66b5b71d82eadeebd62a0bad656b1339ab7b80eb3f3cc5f WHIRLPOOL 831cce64c22fb42d7b6f3ecd6b19e8b6e26b9a25a5c1b75aeea74b9368b09bf5abc8acfc86b7651e528e9db20c4586ba56a05d18ee2c094d752947f832f31e0f diff --git a/net-nntp/slrn/files/slrn-1.0.0_pre18-make.patch b/net-nntp/slrn/files/slrn-1.0.0_pre18-make.patch new file mode 100644 index 000000000000..bd3bf682cfe4 --- /dev/null +++ b/net-nntp/slrn/files/slrn-1.0.0_pre18-make.patch @@ -0,0 +1,36 @@ +--- slrn/src/Makefile.in.orig ++++ slrn/src/Makefile.in +@@ -152,7 +152,7 @@ + $(MKINSDIR) $(DEST_SLRN_LIB_DIR) + $(MKINSDIR) $(DEST_SLRN_SLANG_DIR) + # $(MKINSDIR) $(DEST_CONFDIR) +-installdocs: ++installdocs: installdirs + @for i in $(MAN_FILES); \ + do \ + echo $(INSTALL_DATA) $$i $(DEST_MANDIR)/man1/; \ +@@ -185,7 +185,7 @@ + exit 1; \ + fi; \ + done +-installslang: ++installslang: installdirs + @files=$(CONF_FILES); \ + for i in $$files; \ + do \ +@@ -203,11 +203,11 @@ + exit 1; \ + fi; \ + done +-installlocales: ++installlocales: installdirs + cd ../po; $(MAKE) DESTDIR=$(DESTDIR) LOCALEDIR=$(LOCALEDIR) install +-installbin: +- $(INSTALL) -m 755 -s $(OBJDIR)/slrn $(DEST_BINDIR) +- -$(INSTALL) -m 755 -s $(OBJDIR)/slrnpull $(DEST_BINDIR) ++installbin: installdirs ++ $(INSTALL) -m 755 $(OBJDIR)/slrn $(DEST_BINDIR) ++ -$(INSTALL) -m 755 $(OBJDIR)/slrnpull $(DEST_BINDIR) + install: all installdirs installbin installdocs installslang installlocales + + # The symlinks target is for my own private use. It simply creates the object diff --git a/net-nntp/slrn/files/slrn-1.0.2-make.patch b/net-nntp/slrn/files/slrn-1.0.2-make.patch new file mode 100644 index 000000000000..e03fbb472c36 --- /dev/null +++ b/net-nntp/slrn/files/slrn-1.0.2-make.patch @@ -0,0 +1,36 @@ +--- slrn-1.0.2/src/Makefile.in ++++ slrn-1.0.2/src/Makefile.in +@@ -153,7 +153,7 @@ + $(MKINSDIR) $(DEST_SLRN_LIB_DIR) + $(MKINSDIR) $(DEST_SLRN_SLANG_DIR) + # $(MKINSDIR) $(DEST_CONFDIR) +-installdocs: ++installdocs: installdirs + @for i in $(MAN_FILES); \ + do \ + echo $(INSTALL_DATA) $$i $(DEST_MANDIR)/man1/; \ +@@ -186,7 +186,7 @@ + exit 1; \ + fi; \ + done +-installslang: ++installslang: installdirs + @files=$(CONF_FILES); \ + for i in $$files; \ + do \ +@@ -204,11 +204,11 @@ + exit 1; \ + fi; \ + done +-installlocales: ++installlocales: installdirs + -cd ../po; $(MAKE) DESTDIR=$(DESTDIR) LOCALEDIR=$(LOCALEDIR) install +-installbin: +- $(INSTALL) -m 755 -s $(OBJDIR)/slrn $(DEST_BINDIR) +- -$(INSTALL) -m 755 -s $(OBJDIR)/slrnpull $(DEST_BINDIR) ++installbin: installdirs ++ $(INSTALL) -m 755 $(OBJDIR)/slrn $(DEST_BINDIR) ++ -$(INSTALL) -m 755 $(OBJDIR)/slrnpull $(DEST_BINDIR) + install: all installdirs installbin installdocs installslang installlocales + + # The symlinks target is for my own private use. It simply creates the object diff --git a/net-nntp/slrn/metadata.xml b/net-nntp/slrn/metadata.xml new file mode 100644 index 000000000000..948fa2966431 --- /dev/null +++ b/net-nntp/slrn/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>net-news</herd> +<use> + <flag name='uudeview'>Add support for yEnc coding and more using + <pkg>dev-libs/uulib</pkg></flag> + <flag name='canlock'>Add support for cancel locks via + <pkg>net-libs/canlock</pkg></flag> +</use> +</pkgmetadata> diff --git a/net-nntp/slrn/slrn-1.0.1.ebuild b/net-nntp/slrn/slrn-1.0.1.ebuild new file mode 100644 index 000000000000..234ff7286232 --- /dev/null +++ b/net-nntp/slrn/slrn-1.0.1.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils + +MY_P="${PN}_${PV/_/~}" + +DESCRIPTION="A s-lang based newsreader" +HOMEPAGE="http://slrn.sourceforge.net/" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux" +IUSE="canlock nls ssl uudeview" + +RDEPEND="virtual/mta + app-arch/sharutils + >=sys-libs/slang-2.1.3 + canlock? ( net-libs/canlock ) + ssl? ( dev-libs/openssl ) + uudeview? ( dev-libs/uulib )" +DEPEND="${RDEPEND} + nls? ( sys-devel/gettext )" + +src_prepare() { + epatch "${FILESDIR}"/${PN}-1.0.0_pre18-make.patch +} + +src_configure() { + econf \ + --with-docdir="${EPREFIX}"/usr/share/doc/${PF} \ + --with-slrnpull \ + $(use_with canlock) \ + $(use_with uudeview uu) \ + $(use_enable nls) \ + $(use_with ssl) +} diff --git a/net-nntp/slrn/slrn-1.0.2.ebuild b/net-nntp/slrn/slrn-1.0.2.ebuild new file mode 100644 index 000000000000..7c582a5aeb2e --- /dev/null +++ b/net-nntp/slrn/slrn-1.0.2.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit autotools-utils + +MY_P="${PN}_${PV/_/~}" + +DESCRIPTION="A s-lang based newsreader" +HOMEPAGE="http://slrn.sourceforge.net/" +SRC_URI="http://jedsoft.org/releases/${PN}/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux" +IUSE="canlock nls ssl uudeview" + +RDEPEND="virtual/mta + app-arch/sharutils + >=sys-libs/slang-2.1.3 + canlock? ( net-libs/canlock ) + ssl? ( dev-libs/openssl ) + uudeview? ( dev-libs/uulib )" +DEPEND="${RDEPEND} + nls? ( sys-devel/gettext )" + +AUTOTOOLS_IN_SOURCE_BUILD=1 +PATCHES=( "${FILESDIR}"/${P}-make.patch ) + +src_configure() { + local myeconfargs=( + --with-docdir="${EPREFIX}"/usr/share/doc/${PF} + --with-slrnpull + $(use_with canlock) + $(use_with uudeview uu) + $(use_enable nls) + $(use_with ssl) + ) + + autotools-utils_src_configure +} diff --git a/net-nntp/slrnconf/Manifest b/net-nntp/slrnconf/Manifest new file mode 100644 index 000000000000..f429e55c3843 --- /dev/null +++ b/net-nntp/slrnconf/Manifest @@ -0,0 +1 @@ +DIST slrnconf-0.8.4.tar.bz2 43938 RMD160 1b6ac61be97144ff3acb9fcb734bd11c9e7d9b0e SHA1 9debd601059cfd71a5d0b2476a2a3ef985630bd8 SHA256 105d9caed12b44fb0fa662415a156ef38388b4e3fe27fa3d9be34c580ccd3e76 diff --git a/net-nntp/slrnconf/metadata.xml b/net-nntp/slrnconf/metadata.xml new file mode 100644 index 000000000000..4d0ebe73a55f --- /dev/null +++ b/net-nntp/slrnconf/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> diff --git a/net-nntp/slrnconf/slrnconf-0.8.4.ebuild b/net-nntp/slrnconf/slrnconf-0.8.4.ebuild new file mode 100644 index 000000000000..d5066f5b9bb3 --- /dev/null +++ b/net-nntp/slrnconf/slrnconf-0.8.4.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +DESCRIPTION="slrnconf is a graphical configuration utility for the newsreader slrn" +HOMEPAGE="http://home.arcor.de/kaffeetisch/slrnconf.html" +SRC_URI="http://home.arcor.de/kaffeetisch/downloads/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc x86" +IUSE="" + +RDEPEND="dev-lang/perl + dev-perl/gtk2-perl + dev-perl/Parse-RecDescent + net-nntp/slrn" +DEPEND="${RDEPEND} + >=sys-apps/sed-4" + +src_unpack() { + unpack ${A} + + sed -i -e 's/^install: all$/install:/' ${S}/Makefile +} + +src_compile() { + make PREFIX=/usr || die "make failed" +} + +src_install() { + make PREFIX=${D}/usr install || die "make install failed" +} diff --git a/net-nntp/sn/Manifest b/net-nntp/sn/Manifest new file mode 100644 index 000000000000..bae801711304 --- /dev/null +++ b/net-nntp/sn/Manifest @@ -0,0 +1 @@ +DIST sn-0.3.8.tar.bz2 97751 RMD160 63c6d492104447dfaeb7f15569c50080ef0276f4 SHA1 854a7422e0d37e0e9f1891e663efadc196e08661 SHA256 8ce7c77d587814993ca27d5bbf2bb8b2ad13111995b6113dc917484596dbddf0 diff --git a/net-nntp/sn/files/sn-0.3.8-parallel-make.patch b/net-nntp/sn/files/sn-0.3.8-parallel-make.patch new file mode 100644 index 000000000000..d94e21897781 --- /dev/null +++ b/net-nntp/sn/files/sn-0.3.8-parallel-make.patch @@ -0,0 +1,56 @@ +--- sn-0.3.8/Makefile.orig ++++ sn-0.3.8/Makefile +@@ -94,39 +94,39 @@ + ar rc $@ $^ + ranlib $@ + +-snsplit: snsplit.o sn.a ++snsplit: snsplit.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-snscan: snscan.o sn.a ++snscan: snscan.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) $(ZLIB) + sncat: snscan + ln -s snscan sncat + sncancel: snscan + ln -s snscan sncancel +-snprimedb: snprimedb.o sn.a ++snprimedb: snprimedb.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-sndumpdb: sndumpdb.o sn.a ++sndumpdb: sndumpdb.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-snntpd: snntpd.o post.o commands.o list.o sn.a ++snntpd: snntpd.o post.o commands.o list.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) $(ZLIB) +-snsend: snsend.o sn.a ++snsend: snsend.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) $(ZLIB) + snstore: snsend + ln -s snsend snstore +-snfetch: snfetch.o sn.a ++snfetch: snfetch.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-snexpire: snexpire.o sn.a ++snexpire: snexpire.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-snmail: snmail.o sn.a ++snmail: snmail.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-snget: snget.o get.o sn.a ++snget: snget.o get.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-sngetd: sngetd.o get.o sn.a ++sngetd: sngetd.o get.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-snnewgroup: snnewgroup.o sn.a ++snnewgroup: snnewgroup.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-sndelgroup: sndelgroup.o sn.a ++sndelgroup: sndelgroup.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) +-snlockf: snlockf.o ++snlockf: snlockf.o sn.a lib/libstuff.a + $(LD) `cat cc-flags` $^ -o $@ $(LIBS) + + %: %.in sed-cmd diff --git a/net-nntp/sn/files/sn-0.3.8-qa.patch b/net-nntp/sn/files/sn-0.3.8-qa.patch new file mode 100644 index 000000000000..52a25ebcd83e --- /dev/null +++ b/net-nntp/sn/files/sn-0.3.8-qa.patch @@ -0,0 +1,21 @@ +--- lib/readln.c ++++ lib/readln.c +@@ -9,6 +9,7 @@ + * Get a single line from an fd. + */ + ++#include <string.h> + #include <stdlib.h> + #include <unistd.h> + #include <sys/types.h> + +--- lib/cmdopen.c ++++ lib/cmdopen.c +@@ -6,6 +6,7 @@ + */ + + #include <unistd.h> ++#include <stdlib.h> + #include <fcntl.h> + #include <sys/wait.h> + diff --git a/net-nntp/sn/metadata.xml b/net-nntp/sn/metadata.xml new file mode 100644 index 000000000000..4d0ebe73a55f --- /dev/null +++ b/net-nntp/sn/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> diff --git a/net-nntp/sn/sn-0.3.8.ebuild b/net-nntp/sn/sn-0.3.8.ebuild new file mode 100644 index 000000000000..44224c6424d0 --- /dev/null +++ b/net-nntp/sn/sn-0.3.8.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=4 + +inherit toolchain-funcs eutils + +DESCRIPTION="Hassle-free Usenet news system for small sites" +SRC_URI="http://infa.abo.fi/~patrik/sn/files/${P}.tar.bz2" +HOMEPAGE="http://infa.abo.fi/~patrik/sn/" + +KEYWORDS="~amd64 x86 ~ppc" +SLOT="0" +LICENSE="GPL-2" +IUSE="" + +RDEPEND="sys-libs/zlib" +DEPEND="${RDEPEND} + >=sys-apps/sed-4" + +src_prepare() { + epatch "${FILESDIR}"/${P}-qa.patch + epatch "${FILESDIR}"/${P}-parallel-make.patch + + sed -i -e 's/-g -Wall -pedantic -O/-Wall -pedantic/' Makefile || die +} + +src_compile() { + emake cc-flags + echo ${CFLAGS} >>cc-flags + + emake CC="$(tc-getCC)" LD="$(tc-getCC) ${LDFLAGS}" \ + SNROOT=/var/spool/news \ + BINDIR=/usr/sbin \ + MANDIR=/usr/share/man +} + +src_install() { + dodir /var/spool/news /usr/sbin /usr/share/man/man8 + mknod -m 600 "${D}"/var/spool/news/.fifo p + emake install \ + SNROOT="${D}"/var/spool/news \ + BINDIR="${D}"/usr/sbin \ + MANDIR="${D}"/usr/share/man + dodoc CHANGES FAQ INSTALL* INTERNALS README* THANKS TODO + fowners news:news /var/spool/news{,/.fifo} +} diff --git a/net-nntp/suck/Manifest b/net-nntp/suck/Manifest new file mode 100644 index 000000000000..e74f24a36cdc --- /dev/null +++ b/net-nntp/suck/Manifest @@ -0,0 +1 @@ +DIST suck-4.3.2.tar.gz 187560 SHA256 c98dd04d1fe6914867fa509821243d5e63d1159a238f38f6c01e19e266b51788 diff --git a/net-nntp/suck/metadata.xml b/net-nntp/suck/metadata.xml new file mode 100644 index 000000000000..4d0ebe73a55f --- /dev/null +++ b/net-nntp/suck/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> diff --git a/net-nntp/suck/suck-4.3.2.ebuild b/net-nntp/suck/suck-4.3.2.ebuild new file mode 100644 index 000000000000..9b1a9a0f9c96 --- /dev/null +++ b/net-nntp/suck/suck-4.3.2.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +DESCRIPTION="Grab news from a remote NNTP server and feed them to another" +HOMEPAGE="http://home.comcast.net/~bobyetman/" +SRC_URI="http://home.comcast.net/~bobyetman/${P}.tar.gz" +LICENSE="public-domain" +SLOT="0" +KEYWORDS="~amd64 ~ppc x86" +IUSE="ssl perl" + +DEPEND="sys-libs/db + perl? ( dev-lang/perl ) + ssl? ( dev-libs/openssl )" + +src_unpack() { + unpack ${A} + cd "${S}" + + # Fix paths to the locations in Gentoo + sed -i \ + -e 's:/usr/lib/news/rnews:/usr/lib/news/bin/rnews:' \ + -e 's:/usr/news/db/history:/var/spool/news/db/history:' \ + suck_config.h +} + +src_compile() { + use ssl || sed -i -e 's/^SSL_/#SSL_/' Makefile.in + use perl || sed -i -e 's/^PERL_/#PERL_/' Makefile.in + + econf || die "econf failed" + + emake phrases.h || die "emake phrases.h failed" + emake all lpost || die "emake failed" +} + +src_install() { + dobin lmove lpost rpost suck testhost + doman man/* + dodoc CHANGELOG CONTENTS README* + docinto java + dodoc java/* + docinto perl + dodoc perl/* + docinto sample + dodoc sample/* +} diff --git a/net-nntp/tin/Manifest b/net-nntp/tin/Manifest new file mode 100644 index 000000000000..70726ba7d820 --- /dev/null +++ b/net-nntp/tin/Manifest @@ -0,0 +1,3 @@ +DIST tin-2.0.1.tar.bz2 1758848 SHA256 eb4c1e46defb66f02eb64daa0929414c6363d9d4d74ec2458cfc6e781de89b1f SHA512 fc2bd0586e72a2fb4f8a223c0ceeb19e2dfcdb300d463f0f5d4b7367346a032614aa662a4d9d11673269be59cbaeff39fa3fdf7618dd41e965850d137919a386 WHIRLPOOL 1e565e2e6e3f02d2e77ef382066df81fc29ff59691d5defd7752c2bb158fa85207f9a619fd40948ea6a3a5b51caa57638a720ecab40b83de2a6af706a40bc0d2 +DIST tin-2.2.1.tar.xz 1378384 SHA256 a9968d4b43e2faa4ca1f27e5f2211fa261b2884846c909f59aa76cdaa955ddc7 SHA512 2c5b4b50be38c168404ba55c9429355c0dd2232c580116086fa9ea24a8907ad2d71d91b2d1c533bf7ff4d24fd1946d5ba61bc0833b20d5383e013e2f18c10bbd WHIRLPOOL a6cb1674c497e1a08b93d19a508d070635893795a4298f1b04cc35a4254ae88eb27dc4bd1b84d3fbfe56a59d3656ee325777248e832f091d0cd0da83b4fbfd4c +DIST tin-2.3.1.tar.xz 1381840 SHA256 7d9069fe567f4309ac26dff5334a3c4365c4d2097929a2d47846628e4d8644c6 SHA512 53fecc8fca7c67a7082a1f3f77a868433725a2ad4cc5650cdd522f791cbfc336733db5de3c637606788a2844df7e13e1d3fbae48c15ceaa49e24ea6e297926af WHIRLPOOL f7c0ba02ce4695823b1601f516af305e148de05f345f733d1ef7bbd81c996fe2740e913f32918b5af4e956f25e81c71f943d78906a25df22974f11ba79531a04 diff --git a/net-nntp/tin/metadata.xml b/net-nntp/tin/metadata.xml new file mode 100644 index 000000000000..65301ea853c4 --- /dev/null +++ b/net-nntp/tin/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<herd>net-news</herd> +<use> +<flag name='cancel-locks'>Enable Cancel-Lock header functionality (also enables USE=evil)</flag> +<flag name='evil'>Let tin generate a message ID</flag> +<flag name='forgery'>Cancel messages posted from a different account</flag> +<flag name='gpg'>Enable <pkg>app-crypt/gpg</pkg> support</flag> +<flag name='etiquette'>Enable the display off posting etiquettes</flag> +</use> +</pkgmetadata> diff --git a/net-nntp/tin/tin-2.0.1-r1.ebuild b/net-nntp/tin/tin-2.0.1-r1.ebuild new file mode 100644 index 000000000000..86103571f9ed --- /dev/null +++ b/net-nntp/tin/tin-2.0.1-r1.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit autotools eutils toolchain-funcs versionator + +DESCRIPTION="A threaded NNTP and spool based UseNet newsreader" +HOMEPAGE="http://www.tin.org/" +SRC_URI="ftp://ftp.tin.org/pub/news/clients/tin/v$(get_version_component_range 1-2)/${P}.tar.bz2" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 arm ppc x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="cancel-locks debug doc +etiquette evil forgery gpg idn ipv6 mime nls sasl socks5 spell unicode" + +RDEPEND=" + dev-libs/libpcre + dev-libs/uulib + gpg? ( app-crypt/gnupg ) + idn? ( net-dns/libidn ) + mime? ( net-mail/metamail ) + net-misc/urlview + nls? ( sys-devel/gettext ) + sasl? ( virtual/gsasl ) + socks5? ( net-proxy/dante ) + sys-libs/ncurses[unicode?] + unicode? ( dev-libs/icu:= ) +" + +DEPEND=" + ${RDEPEND} + virtual/pkgconfig +" + +src_prepare() { + # Do not strip + sed -i src/Makefile.in -e '388s|-s ||g' || die "sed src/Makefile.in failed" + sed -i configure.in -e '/CFLAGS/s|-g||g' || die + eautoreconf +} + +src_configure() { + if use evil || use cancel-locks; then + sed -i -e"s/# -DEVIL_INSIDE/-DEVIL_INSIDE/" src/Makefile.in + fi + + if use forgery + then + sed -i -e"s/^CPPFLAGS.*/& -DFORGERY/" src/Makefile.in + fi + + local screen="ncurses" + use unicode && screen="ncursesw" + + use etiquette || myconf="${myconf} --disable-etiquette" + + tc-export AR CC RANLIB + + econf \ + $(use_enable cancel-locks) \ + $(use_enable debug) \ + $(use_enable gpg pgp-gpg) \ + $(use_enable ipv6) \ + $(use_enable nls) \ + $(use_with mime metamail /usr) \ + $(use_with socks5 socks) $(use_with socks5) \ + $(use_with spell ispell /usr) \ + --disable-mime-strict-charset \ + --enable-echo \ + --enable-nntp-only \ + --enable-prototypes \ + --with-coffee \ + --with-nntp-default-server="${TIN_DEFAULT_SERVER:-${NNTPSERVER:-news.gmane.org}}" \ + --with-pcre=/usr \ + --with-screen=${screen} \ + ${myconf} +} + +src_compile() { + emake build +} + +src_install() { + default + + # File collision? + rm -f "${ED}"/usr/share/man/man5/{mbox,mmdf}.5 + + dodoc doc/{CHANGES{,.old},CREDITS,TODO,WHATSNEW} + use doc && dodoc doc/{*.sample,*.txt} + + insinto /etc/tin + doins doc/tin.defaults +} diff --git a/net-nntp/tin/tin-2.2.1.ebuild b/net-nntp/tin/tin-2.2.1.ebuild new file mode 100644 index 000000000000..c4e719ba599f --- /dev/null +++ b/net-nntp/tin/tin-2.2.1.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils toolchain-funcs versionator + +TIN_PV=$(get_version_component_range 1-2) +DESCRIPTION="A threaded NNTP and spool based UseNet newsreader" +HOMEPAGE="http://www.tin.org/" +SRC_URI="ftp://ftp.tin.org/pub/news/clients/tin/v${TIN_PV}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 arm ppc x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="cancel-locks debug doc +etiquette evil forgery gpg idn ipv6 mime nls sasl socks5 spell unicode" + +RDEPEND=" + dev-libs/libpcre + dev-libs/uulib + gpg? ( app-crypt/gnupg ) + idn? ( net-dns/libidn ) + mime? ( net-mail/metamail ) + net-misc/urlview + nls? ( sys-devel/gettext ) + sasl? ( virtual/gsasl ) + socks5? ( net-proxy/dante ) + sys-libs/ncurses[unicode?] + unicode? ( dev-libs/icu:= ) +" + +DEPEND=" + ${RDEPEND} + app-arch/xz-utils + virtual/pkgconfig +" + +src_prepare() { + sed -i src/Makefile.in -e 's| -s | |g' || die + sed -i configure -e '/CFLAGS/s|-g||g' || die +} + +src_configure() { + if use evil || use cancel-locks; then + sed -i -e"s/# -DEVIL_INSIDE/-DEVIL_INSIDE/" src/Makefile.in + fi + + if use forgery + then + sed -i -e"s/^CPPFLAGS.*/& -DFORGERY/" src/Makefile.in + fi + + local screen="ncurses" + use unicode && screen="ncursesw" + + tc-export AR CC RANLIB + + econf \ + $(use_enable cancel-locks) \ + $(use_enable debug) \ + $(use_enable etiquette) \ + $(use_enable gpg pgp-gpg) \ + $(use_enable ipv6) \ + $(use_enable nls) \ + $(use_with mime metamail /usr) \ + $(use_with socks5 socks) $(use_with socks5) \ + $(use_with spell ispell /usr) \ + --disable-mime-strict-charset \ + --enable-echo \ + --enable-nntp-only \ + --enable-prototypes \ + --with-coffee \ + --with-nntp-default-server="${TIN_DEFAULT_SERVER:-${NNTPSERVER:-news.gmane.org}}" \ + --with-pcre=/usr \ + --with-screen=${screen} +} + +src_compile() { + emake build +} + +src_install() { + default + + # File collision? + rm -f "${ED}"/usr/share/man/man5/{mbox,mmdf}.5 + + dodoc doc/{CHANGES{,.old},CREDITS,TODO,WHATSNEW} + use doc && dodoc doc/{*.sample,*.txt} + + insinto /etc/tin + doins doc/tin.defaults +} diff --git a/net-nntp/tin/tin-2.3.1.ebuild b/net-nntp/tin/tin-2.3.1.ebuild new file mode 100644 index 000000000000..45b4e61ba327 --- /dev/null +++ b/net-nntp/tin/tin-2.3.1.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit eutils toolchain-funcs versionator + +TIN_PV=$(get_version_component_range 1-2) +DESCRIPTION="A threaded NNTP and spool based UseNet newsreader" +HOMEPAGE="http://www.tin.org/" +SRC_URI="ftp://ftp.tin.org/pub/news/clients/tin/v${TIN_PV}/${P}.tar.xz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos" +IUSE="cancel-locks debug doc +etiquette evil forgery gpg idn ipv6 mime nls sasl socks5 spell unicode" + +RDEPEND=" + dev-libs/libpcre + dev-libs/uulib + gpg? ( app-crypt/gnupg ) + idn? ( net-dns/libidn ) + mime? ( net-mail/metamail ) + net-misc/urlview + nls? ( sys-devel/gettext ) + sasl? ( virtual/gsasl ) + socks5? ( net-proxy/dante ) + sys-libs/ncurses[unicode?] + unicode? ( dev-libs/icu:= ) +" + +DEPEND=" + ${RDEPEND} + app-arch/xz-utils + virtual/pkgconfig +" + +src_prepare() { + sed -i src/Makefile.in -e 's| -s | |g' || die + sed -i configure -e '/CFLAGS/s|-g||g' || die +} + +src_configure() { + if use evil || use cancel-locks; then + sed -i -e"s/# -DEVIL_INSIDE/-DEVIL_INSIDE/" src/Makefile.in + fi + + if use forgery + then + sed -i -e"s/^CPPFLAGS.*/& -DFORGERY/" src/Makefile.in + fi + + local screen="ncurses" + use unicode && screen="ncursesw" + + tc-export AR CC RANLIB + + econf \ + $(use_enable cancel-locks) \ + $(use_enable debug) \ + $(use_enable etiquette) \ + $(use_enable gpg pgp-gpg) \ + $(use_enable ipv6) \ + $(use_enable nls) \ + $(use_with mime metamail /usr) \ + $(use_with socks5 socks) $(use_with socks5) \ + $(use_with spell ispell /usr) \ + --disable-mime-strict-charset \ + --enable-echo \ + --enable-nntp-only \ + --enable-prototypes \ + --with-coffee \ + --with-nntp-default-server="${TIN_DEFAULT_SERVER:-${NNTPSERVER:-news.gmane.org}}" \ + --with-pcre=/usr \ + --with-screen=${screen} +} + +src_compile() { + emake build +} + +src_install() { + default + + # File collision? + rm -f "${ED}"/usr/share/man/man5/{mbox,mmdf}.5 + + dodoc doc/{CHANGES{,.old},CREDITS,TODO,WHATSNEW} + use doc && dodoc doc/{*.sample,*.txt} + + insinto /etc/tin + doins doc/tin.defaults +} diff --git a/net-nntp/ubh/Manifest b/net-nntp/ubh/Manifest new file mode 100644 index 000000000000..715cc2208923 --- /dev/null +++ b/net-nntp/ubh/Manifest @@ -0,0 +1 @@ +DIST ubh-2.5.tar.gz 42235 RMD160 b5e7c81bacaae8d4044b93a4b6d37ded0d0630ac SHA1 ba2ee22efe9e45556e819aeb20dde52530f22cca SHA256 9ee39955999ab7e0d3e99b70868e4dc564c8af9d74cfc9ef84854f8a93a109b6 diff --git a/net-nntp/ubh/metadata.xml b/net-nntp/ubh/metadata.xml new file mode 100644 index 000000000000..2264ee301e33 --- /dev/null +++ b/net-nntp/ubh/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>maintainer-needed@gentoo.org</email> + </maintainer> + <longdescription></longdescription> +</pkgmetadata> diff --git a/net-nntp/ubh/ubh-2.5.ebuild b/net-nntp/ubh/ubh-2.5.ebuild new file mode 100644 index 000000000000..b3fdbff73168 --- /dev/null +++ b/net-nntp/ubh/ubh-2.5.ebuild @@ -0,0 +1,25 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +DESCRIPTION="The Usenet Binary Harvester" +HOMEPAGE="http://ubh.sourceforge.net/" +SRC_URI="http://ubh.sourceforge.net/download/${P}.tar.gz" +LICENSE="GPL-2" +SLOT="0" +IUSE="" +KEYWORDS="~amd64 ~ppc ~x86" +DEPEND=">=virtual/perl-libnet-1.0607 + >=dev-perl/News-Newsrc-1.07 + >=dev-perl/IO-stringy-1.220 + >=virtual/perl-MIME-Base64-2.12 + >=dev-perl/MailTools-1.15 + >=dev-perl/MIME-tools-5.411 + >=dev-perl/string-crc32-1.2" + +src_install() { + dobin ubh || die "dobin failed" + dohtml doc/ubh.html || die "dohtml failed" + insinto /usr/share/${P} + doins examples/{newsrc,ubhrc} || die "doins failed" +} diff --git a/net-nntp/xrn/Manifest b/net-nntp/xrn/Manifest new file mode 100644 index 000000000000..5223d7f1764a --- /dev/null +++ b/net-nntp/xrn/Manifest @@ -0,0 +1 @@ +DIST xrn-9.02.tgz 362615 SHA256 5fc44883bf94538def846669ebabcc95a710e46531f071ac432d0f9cadc56677 diff --git a/net-nntp/xrn/metadata.xml b/net-nntp/xrn/metadata.xml new file mode 100644 index 000000000000..4d0ebe73a55f --- /dev/null +++ b/net-nntp/xrn/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> diff --git a/net-nntp/xrn/xrn-9.02.ebuild b/net-nntp/xrn/xrn-9.02.ebuild new file mode 100644 index 000000000000..02acf624b9be --- /dev/null +++ b/net-nntp/xrn/xrn-9.02.ebuild @@ -0,0 +1,70 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +DESCRIPTION="A small and fast news reader for X" +HOMEPAGE="http://www.mit.edu/people/jik/software/xrn.html" +SRC_URI="ftp://sipb.mit.edu/pub/${PN}/${P}.tgz" +LICENSE="BSD" +SLOT="0" + +KEYWORDS="x86" +IUSE="" + +RDEPEND="x11-libs/libICE + x11-libs/libSM + x11-libs/libX11 + x11-libs/libXaw + x11-libs/libXext + x11-libs/libXmu + x11-libs/libXp + x11-libs/libXpm + x11-libs/libXt" +DEPEND="${RDEPEND} + x11-misc/imake + >=sys-apps/sed-4" + +src_compile() { + # English is the default language, but french and german are also + # supported, however only one language may be supported at a time: + local lingua + for lingua in ${LINGUAS} en ; do + case "${lingua}" in + en*) + MY_LANG="english" + break # Breaks the for loop. + ;; + fr*) + MY_LANG="french" + break # Breaks the for loop. + ;; + de*) + MY_LANG="german" + break # Breaks the for loop. + ;; + esac + done + + # Bugs to Gentoo bugzilla: + sed -i \ + -e "s,bug-xrn@kamens.brookline.ma.us,http://bugs.gentoo.org/," \ + -e "s,\(#ifndef CONFIG_H_IS_OK\),#define CONFIG_H_IS_OK\n\1," \ + config.h + + # Generate Makefile: + xmkmf || die "xmkmf failed" + + # Use our own CFLAGS and our desired language: + emake -j1 CDEBUGFLAGS="${CFLAGS}" LANGUAGE="${MY_LANG}" || die "emake failed" +} + +src_install() { + dobin xrn || die "dobin failed" + dodoc README README.Linux TODO CREDITS COMMON-PROBLMS || die "dodoc failed" + + # Default settings: + insinto /etc/X11/app-defaults + newins XRn.ad XRn + + newman xrn.man xrn.1 +} |