Wed Jul 30 13:26:39 2008 UTC ()
Import hellanzb-0.14, SVN revision 1087 (there were significant bug-fixes
after the least release).

Hellanzb is a Python application designed for UNIX0-like environments that
retrieves nzb files and fully processes them; the goal is getting
files from USENET as convenient and painless as possible. All that's
required is moving an nzb file to the queue directory. The rest, i.e.
fetching, par-checking, un-raring, etc. is handled by hellanzb.

it also comes with this fantastic ASCII art (behold!):

          ;;;;            .  .
     ... :liil ...........:..:      ,._    ,._      ...................
     :   l$$$:  _.,._       _..,,._ "$$$b. "$$$b.   `_..,,._        :::
     :   $$$$.d$$$$$$L   .d$$$$$$$$L $$$$:  $$$$: .d$$$$$$$$$;      :::
     :  :$$$$P`  T$$$$: :$$$$`  7$$F:$$$$  :$$$$ :$$$$: `$$$$ __  _  |_
     :  l$$$F   :$$$$$  8$$$l"""""` l$$$l  l$$$l l$$$l   $$$L | ) /_ |_)
     :  $$$$:   l$$$$$L `4$$$bcmang;ACID$::$$$88:`4$$$bmm$$$$;.     ...
     :    ```      ```""              ```    ```    .    ```.     ..:::..
     :..............................................:   v 0 . 1 4  `:::`
                                                                     `


Status:

Vendor Tag:	TNF
Release Tags:	pkgsrc-base


(bjs)
diff -r0 -r1.1.1.1 pkgsrc/news/hellanzb/Makefile
diff -r0 -r1.1.1.1 pkgsrc/news/hellanzb/DESCR
diff -r0 -r1.1.1.1 pkgsrc/news/hellanzb/distinfo
diff -r0 -r1.1.1.1 pkgsrc/news/hellanzb/PLIST
diff -r0 -r1.1.1.1 pkgsrc/news/hellanzb/Makefile.version
diff -r0 -r1.1.1.1 pkgsrc/news/hellanzb/files/hellanzb.conf
diff -r0 -r1.1.1.1 pkgsrc/news/hellanzb/patches/patch-aa

File Added: pkgsrc/news/hellanzb/Attic/Makefile
# $NetBSD: Makefile,v 1.1.1.1 2008/07/30 13:26:39 bjs Exp $
#
.include "../../news/hellanzb/Makefile.version"

DISTNAME=		hellanzb-${HELLANZB_VERSION}.${HELLANZB_SVN_REV}
CATEGORIES=		news
MASTER_SITES=		${MASTER_SITE_LOCAL}

MAINTAINER=		bjs@NetBSD.org
HOMEPAGE=		http://www.hellanzb.com:8080/trac
COMMENT=		Command line nntp file grabber

PKG_DESTDIR_SUPPORT=	user-destdir

DEPENDS+=	${PYPKGPREFIX}-twisted>=1.3:../../net/py-twisted
DEPENDS+=	par2>=0.4:../../archivers/par2
DEPENDS+=	unrar>=3.5.4:../../archivers/unrar

PYDISTUTILSPKG=	yes

PYTHON_VERSIONS_ACCEPTED=	25 24

EGDIR=		${PREFIX}/share/examples/${PKGBASE}
WRKSRC=		${WRKDIR}/hellanzb-${HELLANZB_VERSION}-trunk

CONF_FILES=	${EGDIR}/hellanzb.conf ${PKG_SYSCONFDIR}/hellanzb.conf

SUBST_CLASSES+=		conf
SUBST_FILES.conf=	${WRKDIR}/hellanzb.conf
SUBST_MESSAGE.conf=	Performing pathname substitutions in hellanzb.conf.
SUBST_STAGE.conf=	pre-install
SUBST_VARS.conf=	PREFIX

post-extract:
	${CP} ${FILESDIR}/hellanzb.conf ${WRKDIR}

post-install:
	${INSTALL_DATA_DIR} ${DESTDIR}${EGDIR}
	${INSTALL_DATA} ${WRKDIR}/hellanzb.conf ${DESTDIR}${EGDIR}

.include "../../lang/python/extension.mk"
.include "../../textproc/py-xml/buildlink3.mk"

.include "../../mk/bsd.pkg.mk"

File Added: pkgsrc/news/hellanzb/Attic/DESCR
Hellanzb is a Python application designed for UNIX-like environments that
retrieves nzb files and fully processes them; the goal is getting
files from USENET as convenient and painless as possible. All that's
required is moving an nzb file to the queue directory. The rest, i.e.
fetching, par-checking, un-raring, etc. is handled by hellanzb.

File Added: pkgsrc/news/hellanzb/Attic/distinfo
$NetBSD: distinfo,v 1.1.1.1 2008/07/30 13:26:39 bjs Exp $

SHA1 (hellanzb-0.14.1087.tar.gz) = ddc698fa53ff0e9c2ef0499bd9e6ce53c3c504d7
RMD160 (hellanzb-0.14.1087.tar.gz) = dde0eec93172c18226e91d2bfdcd8c36f56be1f4
Size (hellanzb-0.14.1087.tar.gz) = 164628 bytes
SHA1 (patch-aa) = 71c5766f5198898a2e957e82db195e81479477c1

File Added: pkgsrc/news/hellanzb/Attic/PLIST
@comment $NetBSD: PLIST,v 1.1.1.1 2008/07/30 13:26:39 bjs Exp $
bin/hellanzb.py
${PYSITELIB}/Hellanzb/Core.py
${PYSITELIB}/Hellanzb/Core.pyc
${PYSITELIB}/Hellanzb/Core.pyo
${PYSITELIB}/Hellanzb/Daemon.py
${PYSITELIB}/Hellanzb/Daemon.pyc
${PYSITELIB}/Hellanzb/Daemon.pyo
${PYSITELIB}/Hellanzb/Elite.py
${PYSITELIB}/Hellanzb/Elite.pyc
${PYSITELIB}/Hellanzb/Elite.pyo
${PYSITELIB}/Hellanzb/Growl.py
${PYSITELIB}/Hellanzb/Growl.pyc
${PYSITELIB}/Hellanzb/Growl.pyo
${PYSITELIB}/Hellanzb/HellaReactor.py
${PYSITELIB}/Hellanzb/HellaReactor.pyc
${PYSITELIB}/Hellanzb/HellaReactor.pyo
${PYSITELIB}/Hellanzb/HellaXMLRPC/HtPasswdAuth.py
${PYSITELIB}/Hellanzb/HellaXMLRPC/HtPasswdAuth.pyc
${PYSITELIB}/Hellanzb/HellaXMLRPC/HtPasswdAuth.pyo
${PYSITELIB}/Hellanzb/HellaXMLRPC/__init__.py
${PYSITELIB}/Hellanzb/HellaXMLRPC/__init__.pyc
${PYSITELIB}/Hellanzb/HellaXMLRPC/__init__.pyo
${PYSITELIB}/Hellanzb/HellaXMLRPC/xmlrpc.py
${PYSITELIB}/Hellanzb/HellaXMLRPC/xmlrpc.pyc
${PYSITELIB}/Hellanzb/HellaXMLRPC/xmlrpc.pyo
${PYSITELIB}/Hellanzb/Log.py
${PYSITELIB}/Hellanzb/Log.pyc
${PYSITELIB}/Hellanzb/Log.pyo
${PYSITELIB}/Hellanzb/Logging.py
${PYSITELIB}/Hellanzb/Logging.pyc
${PYSITELIB}/Hellanzb/Logging.pyo
${PYSITELIB}/Hellanzb/NZBDownloader.py
${PYSITELIB}/Hellanzb/NZBDownloader.pyc
${PYSITELIB}/Hellanzb/NZBDownloader.pyo
${PYSITELIB}/Hellanzb/NZBLeecher/ArticleDecoder.py
${PYSITELIB}/Hellanzb/NZBLeecher/ArticleDecoder.pyc
${PYSITELIB}/Hellanzb/NZBLeecher/ArticleDecoder.pyo
${PYSITELIB}/Hellanzb/NZBLeecher/DupeHandler.py
${PYSITELIB}/Hellanzb/NZBLeecher/DupeHandler.pyc
${PYSITELIB}/Hellanzb/NZBLeecher/DupeHandler.pyo
${PYSITELIB}/Hellanzb/NZBLeecher/NZBLeecherUtil.py
${PYSITELIB}/Hellanzb/NZBLeecher/NZBLeecherUtil.pyc
${PYSITELIB}/Hellanzb/NZBLeecher/NZBLeecherUtil.pyo
${PYSITELIB}/Hellanzb/NZBLeecher/NZBModel.py
${PYSITELIB}/Hellanzb/NZBLeecher/NZBModel.pyc
${PYSITELIB}/Hellanzb/NZBLeecher/NZBModel.pyo
${PYSITELIB}/Hellanzb/NZBLeecher/NZBParser.py
${PYSITELIB}/Hellanzb/NZBLeecher/NZBParser.pyc
${PYSITELIB}/Hellanzb/NZBLeecher/NZBParser.pyo
${PYSITELIB}/Hellanzb/NZBLeecher/NZBSegmentQueue.py
${PYSITELIB}/Hellanzb/NZBLeecher/NZBSegmentQueue.pyc
${PYSITELIB}/Hellanzb/NZBLeecher/NZBSegmentQueue.pyo
${PYSITELIB}/Hellanzb/NZBLeecher/Protocol.py
${PYSITELIB}/Hellanzb/NZBLeecher/Protocol.pyc
${PYSITELIB}/Hellanzb/NZBLeecher/Protocol.pyo
${PYSITELIB}/Hellanzb/NZBLeecher/__init__.py
${PYSITELIB}/Hellanzb/NZBLeecher/__init__.pyc
${PYSITELIB}/Hellanzb/NZBLeecher/__init__.pyo
${PYSITELIB}/Hellanzb/NZBLeecher/nntp.py
${PYSITELIB}/Hellanzb/NZBLeecher/nntp.pyc
${PYSITELIB}/Hellanzb/NZBLeecher/nntp.pyo
${PYSITELIB}/Hellanzb/NZBQueue.py
${PYSITELIB}/Hellanzb/NZBQueue.pyc
${PYSITELIB}/Hellanzb/NZBQueue.pyo
${PYSITELIB}/Hellanzb/NewzbinDownloader.py
${PYSITELIB}/Hellanzb/NewzbinDownloader.pyc
${PYSITELIB}/Hellanzb/NewzbinDownloader.pyo
${PYSITELIB}/Hellanzb/PostProcessor.py
${PYSITELIB}/Hellanzb/PostProcessor.pyc
${PYSITELIB}/Hellanzb/PostProcessor.pyo
${PYSITELIB}/Hellanzb/PostProcessorUtil.py
${PYSITELIB}/Hellanzb/PostProcessorUtil.pyc
${PYSITELIB}/Hellanzb/PostProcessorUtil.pyo
${PYSITELIB}/Hellanzb/SmartPar.py
${PYSITELIB}/Hellanzb/SmartPar.pyc
${PYSITELIB}/Hellanzb/SmartPar.pyo
${PYSITELIB}/Hellanzb/Util.py
${PYSITELIB}/Hellanzb/Util.pyc
${PYSITELIB}/Hellanzb/Util.pyo
${PYSITELIB}/Hellanzb/__init__.py
${PYSITELIB}/Hellanzb/__init__.pyc
${PYSITELIB}/Hellanzb/__init__.pyo
${PYSITELIB}/Hellanzb/external/__init__.py
${PYSITELIB}/Hellanzb/external/__init__.pyc
${PYSITELIB}/Hellanzb/external/__init__.pyo
${PYSITELIB}/Hellanzb/external/elementtree/SimpleXMLWriter.py
${PYSITELIB}/Hellanzb/external/elementtree/SimpleXMLWriter.pyc
${PYSITELIB}/Hellanzb/external/elementtree/SimpleXMLWriter.pyo
${PYSITELIB}/Hellanzb/external/elementtree/__init__.py
${PYSITELIB}/Hellanzb/external/elementtree/__init__.pyc
${PYSITELIB}/Hellanzb/external/elementtree/__init__.pyo
share/doc/hellanzb/README
share/examples/hellanzb/hellanzb.conf
@dirrm share/examples/hellanzb
@dirrm share/doc/hellanzb
@dirrm ${PYSITELIB}/Hellanzb/external/elementtree
@dirrm ${PYSITELIB}/Hellanzb/external
@dirrm ${PYSITELIB}/Hellanzb/NZBLeecher
@dirrm ${PYSITELIB}/Hellanzb/HellaXMLRPC
@dirrm ${PYSITELIB}/Hellanzb

File Added: pkgsrc/news/hellanzb/Attic/Makefile.version
# $NetBSD: Makefile.version,v 1.1.1.1 2008/07/30 13:26:39 bjs Exp $

HELLANZB_VERSION=	0.14
HELLANZB_SVN_REV=	1087

File Added: pkgsrc/news/hellanzb/files/Attic/hellanzb.conf
# $NetBSD: hellanzb.conf,v 1.1.1.1 2008/07/30 13:26:39 bjs Exp $
# 
# hellanzb.conf - sample hellanzb configuration file
#
# To quickly get started, change the default defineServer() call and the
# Hellanzb.PREFIX_DIR directory
#
# This is actually interpreted python code: strings must be surrounded by
# quotes, numbers and the 'None' keyword should not
# 

# Log output to this file, set to None (no single quotes) for no logging
Hellanzb.LOG_FILE = os.path.expanduser('~') + '/.hellanzb/log'

# Uncomment this line to log DEBUG messages to the specified file
#Hellanzb.DEBUG_MODE = os.path.expanduser('~') + '/.hellanzb/log-debug'

# Automatically roll over both log files when they reach LOG_FILE_MAX_BYTES
# size
Hellanzb.LOG_FILE_MAX_BYTES = 0

# Save LOG_FILE_BACKUP_COUNT of those rolled over log files
Hellanzb.LOG_FILE_BACKUP_COUNT = 0


# Define server connections. Servers can have multiple hosts, hellanzb will
# persist the number of connections to each specified server. There may be
# multiple defineServer lines.

# Set both the username and password to 'None' (without the quotes) if your
# usenet server does not require authorization
defineServer(id = 'MyId1',
	hosts = [ 'nntp.changeme.com:119' ],
	username = 'changeme',
	password = 'changeme',
	connections = 10,
	antiIdle = 4.5 * 60,
	enabled = False,
	ssl = False
	);

#defineServer(id = 'MyId2',
             #hosts = [ 'news.changeme.com', 'morenews.changeme.com:8000' ],


             #username = 'changeme',
             #password = 'hella',
             #username = None,           # no auth
             #password = None,

             #connections = 3,
             #antiIdle = 4.5 * 60,        # 4 minutes, 30 seconds, 0 to disable
             #bindTo = '204.31.33.7',    # connect FROM this ip address
             #enabled = False,           # disable this server
             #skipGroupCmd = True,      # skip sending nntp GROUP commands
             #fillserver = 0,            # defaults to 0 (a main server).
                                         # fillservers must have values > 0
                                         # (priority)
             #ssl = False
             #)

# Uncomment this line to limit all server connections to the specified KB/s
# bandwidth
#Hellanzb.MAX_RATE = 150 # limit to 150kB/s


# Important locations
Hellanzb.PREFIX_DIR = os.path.expanduser('~') + '/.hellanzb/'

# Where to put queued .nzb files
Hellanzb.QUEUE_DIR = Hellanzb.PREFIX_DIR + 'nzb/daemon.queue/'

# Where the fully processed archives go
Hellanzb.DEST_DIR = Hellanzb.PREFIX_DIR + 'done/'

# The .nzb currently being downloaded is stored here
Hellanzb.CURRENT_DIR = Hellanzb.PREFIX_DIR + 'nzb/daemon.current/'

# The archive currently being downloaded is stored here
Hellanzb.WORKING_DIR = Hellanzb.PREFIX_DIR + 'nzb/daemon.working/'

# Archives interrupted in the middle of downloading are stored here temporarily
Hellanzb.POSTPONED_DIR = Hellanzb.PREFIX_DIR + 'nzb/daemon.postponed/'

# Archives currently being processed. May contains archive directories, or
# symbolic links to archive directories
Hellanzb.PROCESSING_DIR = Hellanzb.PREFIX_DIR + 'nzb/daemon.processing/'

# Temp storage
Hellanzb.TEMP_DIR = Hellanzb.PREFIX_DIR + 'nzb/daemon.temp/'

# Filename to store hellanzb state in between CTRL-Cs. The state (includes the
# order of the queue, and smart par recovery information) is intermittently
# written out as XML to this file
Hellanzb.STATE_XML_FILE = Hellanzb.PREFIX_DIR + 'nzb/hellanzbState.xml'


# _Sub directory within the nzb archive dir_ to move processed files to
Hellanzb.PROCESSED_SUBDIR = 'processed'

# Remove the PROCESSED_SUBDIR if the archive was successfully post processed. 
# Warning: The normal Hellanzb.LOG_FILE should be enabled with this option --
# for a record of what hellanzb deletes
Hellanzb.DELETE_PROCESSED = True


# Maximum amount of memory used to cache encoded Article data segments.
# hellanzb will write article data to disk when this cache is exceeded
# Available settings:
# -1: Unlimited size
#  0: Disable cache (only cache to disk)
# >0: Limit cache to this size, in bytes, KB, MB, e.g.:
#     1024 '1024KB' '100MB' '1GB'
#Hellanzb.CACHE_LIMIT = 0


# Save archives into a sub directory of DEST_DIR named after their newzbin.com
# category (when queued using the enqueuenewzbin XMLRPC call); e.g. Apps,
# Movies, Music
Hellanzb.CATEGORIZE_DEST = True

# Disable SMART_PAR (download all PAR files)
#Hellanzb.SMART_PAR = False

# Supply a path to the (un)rar command
Hellanzb.UNRAR_CMD = '@PREFIX@/bin/unrar'

# Supply a path to the par2 command
Hellanzb.PAR2_CMD = '@PREFIX@/bin/par2'

# Skip unraring during post processing
# Hellanzb.SKIP_UNRAR = True

# Supply a path to the optional macbinconv command (for converting MacBinary
# files)
#Hellanzb.MACBINCONV_CMD = None

# hellanzb inherits the umask from the current user's environment (unless it's
# running in daemon mode). The umask can be forced with this option
#Hellanzb.UMASK = 0022


# Supported music types (case insensitive) and optionally their decompression
# executables
# and the file type that executable will decompress to (case insensitive). The
# exes must be in the PATH.
#
# <FILE> will be replaced with the name of music file
# optional <DESTFILE> is <FILE> with the specified extension
#
# None means these files don't need to be decompressed
defineMusicType('wav', None, None)
defineMusicType('mp3', None, None)
#defineMusicType('ape', 'mac <FILE> <DESTFILE> -d', 'wav')
#defineMusicType('flac', 'flac -d -- <FILE>', 'wav')
#defineMusicType('shn', 'shorten -x < <FILE> > <DESTFILE>', 'wav')

# Max files we should decompress at the same time
Hellanzb.MAX_DECOMPRESSION_THREADS = 2


# Enable Mac OS X Growl notifications
Hellanzb.GROWL_NOTIFY = False

# The growl notification server, in the format 'hostname'
Hellanzb.GROWL_SERVER = 'IP'

# The growl password
Hellanzb.GROWL_PASSWORD = 'password'


# Enable libNotify Daemon notifications
Hellanzb.LIBNOTIFY_NOTIFY = False


# Disable ANSI color codes in the main screen (preserves the in place scroller)
#Hellanzb.DISABLE_COLORS = False

# Disable ALL ANSI color codes in the main screen (for terminals that don't
# support ANY ANSI codes
#Hellanzb.DISABLE_ANSI = False


# 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

# Password for the XML RPC server. You might probably never use this, but the
# command line XML RPC calls do -- it should definitely be changed from its
# default value. The XML RPC username is hardcoded as 'hellanzb' -- E.g. URL:
# http://hellanzb:changeme@localhost:8760
Hellanzb.XMLRPC_PASSWORD = 'changeme'


# Username/Password to http://www.newzbin.com for automatic NZB downloading
Hellanzb.NEWZBIN_USERNAME = None
Hellanzb.NEWZBIN_PASSWORD = None


# If any of the following file types are missing from the archive and cannot be
# repaired, continue processing because they're unimportant (case insensitive)
Hellanzb.NOT_REQUIRED_FILE_TYPES = [ 'log', 'm3u', 'nfo', 'nzb', 'sfv', 'txt' ]

# Don't get rid of (move into the PROCESSED dir) the following file types when
# finished post processing (case insensitive)
#Hellanzb.KEEP_FILE_TYPES = [ 'log', 'm3u', 'nfo', 'nzb', 'sfv', 'txt' ]
Hellanzb.KEEP_FILE_TYPES = [ 'nfo', 'txt' ]


# List of alternative file extensions matched as NZB files in the QUEUE_DIR.
# The 'nzb' file extension is always matched
#Hellanzb.OTHER_NZB_FILE_TYPES = [ 'xml' ]

# Support extracting NZBs from ZIP files with this suffix (case insensitive) in
# QUEUE_DIR. Defaults to '.nzb.zip'. Set to False to disable.
#Hellanzb.NZB_ZIPS = '.nzb.zip'

# Support extracting NZBs from GZIP files with this suffix (case insensitive)
# in QUEUE_DIR. Defaults to '.nzb.gz'. Set to False to disable.
#Hellanzb.NZB_GZIPS = '.nzb.gz'

# Delay enqueueing new, recently modified NZB files added to the QUEUE_DIR until
# this many seconds have passed since the NZB's last modification time (defaults
# to 10 seconds)
#Hellanzb.NZBQUEUE_MDELAY = 10

# Optional external handler script. hellanzb will run this script after post
# processing an archive, with the following arguments:
#
# handler_script type archiveName destDir elapsedTime parMessage
#
# type: post processing result, either 'SUCCESS' or 'ERROR'
# archiveName: name of the archive, e.g. 'Usenet_Post5'
# destDir: where the archive ended up, e.g. '/ext2/usenet/Usenet_Post5'
# elapsedTime: a pretty string showing how long post processing took, e.g.
#              '10m 37s'
# parMessage: optional post processing message. e.g. '(No Pars)'
#Hellanzb.EXTERNAL_HANDLER_SCRIPT = '~/bin/post_hellanzb.sh'

File Added: pkgsrc/news/hellanzb/patches/Attic/patch-aa
$NetBSD: patch-aa,v 1.1.1.1 2008/07/30 13:26:39 bjs Exp $

--- setup.py.orig	2008-07-30 08:30:03.000000000 -0400
+++ setup.py
@@ -38,9 +38,7 @@ 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' ] ) ],
-        )
+        data_files = [ ( 'share/doc/hellanzb', [ 'README' ] ) ] )
     py2app_options = dict(
         app = [ 'hellanzb.py' ],
         options = dict(py2app = dict(