r173 - in /debtorrent/trunk: ./ debian/

camrdale-guest at users.alioth.debian.org camrdale-guest at users.alioth.debian.org
Mon Jul 16 07:19:07 UTC 2007


Author: camrdale-guest
Date: Mon Jul 16 07:19:07 2007
New Revision: 173

URL: http://svn.debian.org/wsvn/debtorrent/?sc=1&rev=173
Log:
First attempt at a debian package (builds cleanly).

Added:
    debtorrent/trunk/debian/
    debtorrent/trunk/debian/changelog
    debtorrent/trunk/debian/compat
    debtorrent/trunk/debian/control
    debtorrent/trunk/debian/copyright
    debtorrent/trunk/debian/debtorrent-client.default
    debtorrent/trunk/debian/debtorrent-client.init   (with props)
    debtorrent/trunk/debian/debtorrent-client.sgml
    debtorrent/trunk/debian/debtorrent-tracker.sgml
    debtorrent/trunk/debian/debtorrent.install
    debtorrent/trunk/debian/debtorrent.manpages
    debtorrent/trunk/debian/debtorrent.postinst
    debtorrent/trunk/debian/debtorrent.prerm
    debtorrent/trunk/debian/dirs
    debtorrent/trunk/debian/docs
    debtorrent/trunk/debian/postrm
    debtorrent/trunk/debian/rules   (with props)
Modified:
    debtorrent/trunk/setup.py

Added: debtorrent/trunk/debian/changelog
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/changelog?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/changelog (added)
+++ debtorrent/trunk/debian/changelog Mon Jul 16 07:19:07 2007
@@ -1,0 +1,42 @@
+debtorrent (0.1.3) unstable; urgency=low
+
+  * First debian package release
+
+ -- Cameron Dale <camrdale at gmail.com>  Mon, 16 Jul 2007 14:03:00 -0700
+
+debtorrent (0.1.2)
+
+  * Add proxying capability to listen for HTTP requests from APT
+  * Add caching for all files downloaded
+  * Add automatic starting of torrents when Packages files are downloaded
+  * Modify startup to initialize all torrent downloads to download nothing
+  * Add automatic enabling of files to download based on requests from APT
+  * Add a backup HTTP download from a mirror when no peers can be found
+    for a package
+  * Modify torrent creation to break large packages into multiple pieces based
+    on the information from http://merkel.debian.org/~ajt/extrapieces/
+    (thanks to aj most of this)
+  * Add download status information available from http://localhost:9988/
+  * Add lots more documentation
+
+ -- Cameron Dale <camrdale at gmail.com>  Mon,  9 Jul 2007 14:03:00 -0700
+
+debtorrent (0.1.1)
+
+  * Add ability to parse dpkg status for priorities of files to download
+  * Modify btlaunchmany and btshowmetainfo to work with Packages files directly
+  * Fixed a bug in bittornado that prevented using priorities with 
+    pre-allocation: http://forums.degreez.net/viewtopic.php?t=7155
+  * Directories are no longer pre-allocated when they will contain no files
+  * Added lots of documentation
+
+ -- Cameron Dale <camrdale at gmail.com>  Mon, 28 May 2007 17:11:00 -0700
+
+debtorrent (0.1.0)
+
+  * Initial release, based on BitTornado 0.3.18
+  * Added variable-sized pieces capability
+  * Modified programs to create/use .dtorrent files
+  * Added ability to use Packages files directly
+
+ -- Cameron Dale <camrdale at gmail.com>  Mon,  7 May 2007 20:59:00 -0700

Added: debtorrent/trunk/debian/compat
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/compat?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/compat (added)
+++ debtorrent/trunk/debian/compat Mon Jul 16 07:19:07 2007
@@ -1,0 +1,1 @@
+5

Added: debtorrent/trunk/debian/control
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/control?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/control (added)
+++ debtorrent/trunk/debian/control Mon Jul 16 07:19:07 2007
@@ -1,0 +1,31 @@
+Source: debtorrent
+Section: net
+Priority: optional
+Maintainer: Cameron Dale <camrdale at gmail.com>
+Build-Depends: debhelper (>= 5.0.37.2)
+Build-Depends-Indep: python-dev, python-support (>= 0.5.4), docbook-to-man
+Standards-Version: 3.7.2
+XS-Vcs-Svn: svn://svn.debian.org/debtorrent/debtorrent/trunk
+XS-Vcs-Browser: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/
+
+Package: debtorrent
+Architecture: all
+Depends: ${python:Depends}
+Suggests: python-psyco
+Recommends: python-crypto
+Provides: python-debtorrent
+Description: bittorrent proxy for downloading Debian packages
+ To expand on the BitTorrent protocol and application to work effectively
+ with large, constantly updating collections of files, and therefore enable
+ the efficient peer-to-peer downloading of Debian packages from an APT
+ repository.
+ .
+ Features:
+   * Downloads from peers, increasing the available bandwidth to the user
+   * Reduces the bandwidth requirements needed to setup a repository of 
+     packages
+   * Seamlessly integrates with the current APT tool
+   * Automatically falls back to downloading from an HTTP mirror when peers 
+     are not available
+ .
+ Homepage: http://debtorrent.alioth.debian.org/

Added: debtorrent/trunk/debian/copyright
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/copyright?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/copyright (added)
+++ debtorrent/trunk/debian/copyright Mon Jul 16 07:19:07 2007
@@ -1,0 +1,24 @@
+Unless otherwise noted, all files are released under the MIT
+license, exceptions contain licensing information in them.
+
+Copyright (C) 2001-2002 Bram Cohen
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation files
+(the "Software"), to deal in the Software without restriction,
+including without limitation the rights to use, copy, modify, merge,
+publish, distribute, sublicense, and/or sell copies of the Software,
+and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+The Software is provided "AS IS", without warranty of any kind,
+express or implied, including but not limited to the warranties of
+merchantability,  fitness for a particular purpose and
+noninfringement. In no event shall the  authors or copyright holders
+be liable for any claim, damages or other liability, whether in an
+action of contract, tort or otherwise, arising from, out of or in
+connection with the Software or the use or other dealings in the
+Software.

Added: debtorrent/trunk/debian/debtorrent-client.default
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/debtorrent-client.default?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/debtorrent-client.default (added)
+++ debtorrent/trunk/debian/debtorrent-client.default Mon Jul 16 07:19:07 2007
@@ -1,0 +1,60 @@
+###############################################################################
+#                        D A E M O N   D E F A U L T S
+###############################################################################
+#
+# This file specifies some default options to use when running the
+# debtorrent-client daemon from the init.d script.
+#
+
+#
+# Enable
+#
+# Whether to start the debtorrent-client in daemon mode from the init.d script.
+# The only allowed values are "true" and "false".
+#
+
+DEBTORRENT_ENABLE=true
+
+#
+# User
+#
+# The user to run the debtorrent-client daemon as.
+#
+
+DEBTORRENT_USER=debtorrent
+
+#
+# Configuration File
+#
+# The configuration file to use. If left blank then a file in the .DebTorrent
+# directory in the user's home directory will be used.
+#
+
+DEBTORRENT_CONFIG_FILE=/etc/debtorrent/debtorrent-client.conf
+
+#
+# Download Directory
+#
+# The directory to save the downloaded files in. If left blank then the user's
+# home directory will be used.
+#
+
+DEBTORRENT_DOWNLOAD_DIR=/var/cache/debtorrent
+
+#
+# Cache Directory
+#
+# The directory to use to get/store cache files. If left blank then a
+# .DebTorrent directory in the user's home directory will be used.
+#
+
+DEBTORRENT_CACHE_DIR=/var/cache/debtorrent/.DebTorrent
+
+#
+# Log Directory
+#
+# The directory to write the output logs to. If left blank, the cache
+# directory will be used.
+#
+
+DEBTORRENT_LOG_DIR=/var/log/debtorrent

Added: debtorrent/trunk/debian/debtorrent-client.init
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/debtorrent-client.init?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/debtorrent-client.init (added)
+++ debtorrent/trunk/debian/debtorrent-client.init Mon Jul 16 07:19:07 2007
@@ -1,0 +1,131 @@
+#! /bin/sh
+
+### BEGIN INIT INFO
+# Provides:          debtorrent-client
+# Required-Start:    $network
+# Required-Stop:     
+# Should-Start:      $named
+# Should-Stop:       
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: bittorent proxy for debian archive
+# Description:       debtorrent is a program that proxies requests from
+#                    APT to download packages and instead uses a 
+#                    bittorrent-like peer-to-peer method to download them.
+#                    This provides the debtorrent daemon client.
+### END INIT INFO
+
+set -e
+
+# /etc/init.d/debtorrent: start and stop the debtorrent client daemon
+
+DAEMON=/usr/bin/debtorrent-client
+NAME="debtorrent-client"
+DEFAULTSFILE=/etc/default/debtorrent-client
+PIDFILE=/var/run/debtorrent/debtorent-client.pid
+
+DEBTORRENT_ENABLE=false
+DEBTORRENT_USER=debtorrent
+DEBTORRENT_CONFIG_FILE=/etc/debtorrent/debtorrent-client.conf
+DEBTORRENT_DOWNLOAD_DIR=/var/cache/debtorrent
+DEBTORRENT_CACHE_DIR=/var/cache/debtorrent/.DebTorrent
+DEBTORRENT_LOG_DIR=/var/log/debtorrent
+
+test -x $DAEMON || exit 0
+
+. /lib/lsb/init-functions
+. /etc/default/rcS
+
+if [ -s $DEFAULTSFILE ]; then
+    . $DEFAULTSFILE
+    case "x$DEBTORRENT_ENABLE" in
+        xtrue|xfalse)   ;;
+        *)              log_failure_msg "Value of DEBTORRENT_ENABLE in $DEFAULTSFILE must be either 'true' or 'false';"
+                        log_failure_msg "not starting $NAME daemon."
+                        exit 1
+                        ;;
+    esac
+    case "x$DEBTORRENT_USER" in
+        x)              log_warning_msg "Value of DEBTORRENT_USER in $DEFAULTSFILE must be a valid user;"
+                        log_failure_msg "not starting $NAME daemon."
+                        exit 1
+                        ;;
+    esac
+fi
+
+export PATH="${PATH:+$PATH:}/usr/sbin:/sbin"
+
+case "$1" in
+  start)
+    if "$DEBTORRENT_ENABLE"; then
+        log_daemon_msg "Starting $NAME daemon" "$NAME"
+        if [ -s $PIDFILE ] && kill -0 $(cat $PIDFILE) >/dev/null 2>&1; then
+                log_progress_msg "apparently already running"
+                log_end_msg 0
+        exit 0
+        fi
+        if [ ! -s "$DEBTORRENT_CONFIG_FILE" ]; then
+            log_failure_msg "missing or empty config file $DEBTORRENT_CONFIG_FILE"
+            log_end_msg 1
+            exit 1
+        fi
+        start-stop-daemon --start --quiet --background \
+            --pidfile $PIDFILE --make-pidfile --chuid $DEBTORRENT_USER \
+            --exec $DAEMON \
+            -- --configfile "$DEBTORRENT_CONFIG_FILE" \
+               --download_dir "$DEBTORRENT_DOWNLOAD_DIR" \
+               --cache_dir "$DEBTORRENT_CACHE_DIR" \
+               --log_dir "$DEBTORRENT_LOG_DIR"
+        log_end_msg $?
+    else
+        if [ -s "$DEBTORRENT_CONFIG_FILE" ]; then
+            [ "$VERBOSE" != no ] && log_warning_msg "$NAME daemon not enabled in $DEFAULTSFILE, not starting..."
+        fi
+    fi
+    ;;
+  stop)
+    log_daemon_msg "Stopping $NAME daemon" "$NAME"
+	start-stop-daemon --stop --quiet --pidfile $PIDFILE --retry INT/15/TERM/5/KILL/5
+    log_end_msg $?
+    rm -f $PIDFILE
+    ;;
+
+  reload)
+    log_warning_msg "Reloading $NAME daemon: not implemented, as the daemon"
+    log_warning_msg "cannot re-read the config file (use restart)."
+    ;;
+
+  restart|force-reload)
+    set +e
+    if $DEBTORRENT_ENABLE; then
+        log_daemon_msg "Restarting $NAME daemon" "$NAME"
+	    if [ -s $PIDFILE ] && kill -0 $(cat $PIDFILE) >/dev/null 2>&1; then
+		    start-stop-daemon --stop --quiet --pidfile $PIDFILE --retry INT/15/TERM/5/KILL/5 || true
+		    sleep 1
+	    else
+    	    rm -f $PIDFILE
+	    fi
+        if start-stop-daemon --start --quiet --background \
+	        --pidfile $PIDFILE --make-pidfile --chuid $DEBTORRENT_USER \
+	        --exec $DAEMON \
+	        -- --configfile "$DEBTORRENT_CONFIG_FILE" \
+	           --download_dir "$DEBTORRENT_DOWNLOAD_DIR" \
+	           --cache_dir "$DEBTORRENT_CACHE_DIR" \
+	           --log_dir "$DEBTORRENT_LOG_DIR"
+        then
+            log_end_msg 0
+        else
+            log_end_msg 1
+            rm -f $PIDFILE
+        fi
+    else
+        [ "$VERBOSE" != no ] && log_warning_msg "$NAME daemon not enabled in $DEFAULTSFILE, not starting..."
+    fi
+    ;;
+
+  *)
+    echo "Usage: /etc/init.d/debtorrent-client {start|stop|reload|force-reload|restart}"
+    exit 1
+esac
+
+exit 0

Propchange: debtorrent/trunk/debian/debtorrent-client.init
------------------------------------------------------------------------------
    svn:executable = *

Added: debtorrent/trunk/debian/debtorrent-client.sgml
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/debtorrent-client.sgml?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/debtorrent-client.sgml (added)
+++ debtorrent/trunk/debian/debtorrent-client.sgml Mon Jul 16 07:19:07 2007
@@ -1,0 +1,511 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+
+  <!-- Fill in your name for FIRSTNAME and SURNAME. -->
+  <!ENTITY dhfirstname "<firstname>Cameron</firstname>">
+  <!ENTITY dhsurname   "<surname>Dale</surname>">
+  <!-- Please adjust the date whenever revising the manpage. -->
+  <!ENTITY dhdate      "<date>April 17, 2005</date>">
+  <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
+       allowed: see man(7), man(1). -->
+  <!ENTITY dhsection   "<manvolnum>1</manvolnum>">
+  <!ENTITY dhemail     "<email>camrdale at gmail.com</email>">
+  <!ENTITY dhusername  "Cameron Dale">
+  <!ENTITY dhucpackage "<refentrytitle>debtorrent-client</refentrytitle>">
+  <!ENTITY dhpackage   "debtorrent-client">
+
+  <!ENTITY debian      "<productname>Debian</productname>">
+  <!ENTITY gnu         "<acronym>GNU</acronym>">
+  <!ENTITY gpl         "&gnu; <acronym>GPL</acronym>">
+]>
+
+<refentry>
+  <refentryinfo>
+    <address>
+      &dhemail;
+    </address>
+    <author>
+      &dhfirstname;
+      &dhsurname;
+    </author>
+    <copyright>
+      <year>2006</year>
+      <holder>&dhusername;</holder>
+    </copyright>
+    &dhdate;
+  </refentryinfo>
+  <refmeta>
+    &dhucpackage;
+
+    &dhsection;
+  </refmeta>
+
+  <refnamediv>
+    <refname>&dhpackage;</refname>
+
+    <refpurpose>download files using a scatter-gather network</refpurpose>
+  </refnamediv>
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>debtorrent-client</command> <arg rep="Repeat"><option>options</option></arg>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+
+    <para>This manual page documents briefly the options available to the &dhpackage; commands.</para>
+
+    <para><command>btlaunchmany</command> is a program that allows a user to download files using
+      bittorrent, a peer to peer, scatter-gather network protocol. They all share a common set of options, shown below. For
+      more information on how to run them, and their program-specific options, see their individual man pages.</para>
+
+  </refsect1>
+  <refsect1>
+    <title>OPTIONS</title>
+
+    <para>These programs follow the usual &gnu; command line syntax,
+      with long options starting with two dashes (`--').  A summary of
+      options is included below.</para>
+
+    <variablelist>
+      <varlistentry>
+        <term><option>--max_uploads <replaceable>number</replaceable></option></term>
+        <listitem>
+          <para>the maximum <replaceable>number</replaceable> of uploads to allow at once (defaults to 7)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--keepalive_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> to pause between sending keepalives (defaults to 120.0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--download_slice_size <replaceable>bytes</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>bytes</replaceable> to query for per request (defaults to 16384)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--upload_unit_size <replaceable>bytes</replaceable></option></term>
+        <listitem>
+          <para>when limiting the upload rate, the number of <replaceable>bytes</replaceable> to send at a time (defaults to 1460)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--request_backlog <replaceable>number</replaceable></option></term>
+        <listitem>
+          <para>the maximum <replaceable>number</replaceable> of requests to keep in a single pipe at once (defaults to 10)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--max_message_length <replaceable>length</replaceable></option></term>
+        <listitem>
+          <para>the maximum <replaceable>length</replaceable> prefix encoding you'll accept over the wire.
+	    Larger values will get the connection dropped. (defaults to 8388608)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--ip <replaceable>ip</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>ip</replaceable> to report you have to the tracker (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--minport <replaceable>port</replaceable></option></term>
+        <listitem>
+          <para>the minimum <replaceable>port</replaceable> to listen on (defaults to 10000)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--maxport <replaceable>port</replaceable></option></term>
+        <listitem>
+          <para>the maximum <replaceable>port</replaceable> to listen on (defaults to 60000)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--random_port</option> 0|1</term>
+        <listitem>
+          <para>whether to choose randomly inside the port range (instead of counting up linearly from min to max) (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--responsefile <replaceable>file</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>file</replaceable> the server response was stored in, as an alternative to --url. If this option is used,
+	    no filename or URL should be present on the command line. (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--url <replaceable>URL</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>URL</replaceable> to get the torrent file from, as an alternative to --responsefile. If this option is used,
+	    no filename or URL should be present on the command line. (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--crypto_allowed</option> 0|1</term>
+        <listitem>
+          <para>whether to allow the client to accept encrypted connections. (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--crypto_only</option> 0|1</term>
+        <listitem>
+          <para>whether to only create or allow encrypted connections. (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--crypto_stealth</option> 0|1</term>
+        <listitem>
+          <para>whether to prevent all non-encrypted connection attempts; will result
+          in an effectively firewalled state on older trackers. (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--selector_enabled</option> 0|1</term>
+        <listitem>
+          <para>whether to enable the file selector and fast resume function (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--expire_cache_data <replaceable>days</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>days</replaceable> after which you wish to expire old cache data (0 = disabled) (defaults to 10)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--priority</option> -1|0|1|2[,-1|0|1|2 ...]</term>
+        <listitem>
+          <para>a list of file priorities, separated by commas. There must be one per file. 0 = highest,
+	    1 = normal, 2 = lowest, -1 = download disabled. Order is based
+	    on the file/torrent order as shown by btshowmetainfo. For example, to download only
+	    the third of four files use: --priority -1,-1,2,-1 (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--saveas <replaceable>filename</replaceable></option></term>
+        <listitem>
+          <para>the local <replaceable>filename</replaceable> to save the file as, null indicates query user (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--timeout <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> to wait between closing sockets which nothing has been received on
+	    (defaults to 300.0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--timeout_check_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> to wait between checking if any connections have timed out (defaults to 60.0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--max_slice_length <replaceable>length</replaceable></option></term>
+        <listitem>
+          <para>the maximum <replaceable>length</replaceable> slice to send to peers, larger requests are ignored (defaults to 131072)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--max_rate_period <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the maximum number of <replaceable>seconds</replaceable> to use in guessing what the current rate estimate represents (defaults to 20.0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--bind <replaceable>ip</replaceable>|<replaceable>hostname</replaceable>[,<replaceable>ip</replaceable>|<replaceable>hostname</replaceable> ...]</option></term>
+        <listitem>
+          <para>a comma-separated list of <replaceable>ips</replaceable> and <replaceable>hostnames</replaceable> to bind to locally (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--ipv6_enabled</option> 0|1</term>
+        <listitem>
+          <para>whether to allow the client to connect to peers via IPv6 (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--ipv6_binds_v4</option> 0|1</term>
+        <listitem>
+          <para>set if an IPv6 server socket won't also field IPv4 connections (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--upnp_nat_access</option> 0|1|2</term>
+        <listitem>
+          <para>attempt to autoconfigure a UPnP router to forward a server port (0 = disabled, 1 = mode 1
+	    [fast], 2 = mode 2 [slow]) (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--upload_rate_fudge <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the time equivalent in <replaceable>seconds</replaceable> of writing to kernel-level TCP buffer, for rate adjustment (defaults to
+	    5.0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--tcp_ack_fudge <replaceable>overhead</replaceable></option></term>
+        <listitem>
+          <para>how much TCP ACK download <replaceable>overhead</replaceable> to add to upload rate calculations (0 = disabled)
+	    (defaults to 0.029999999999999999)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--display_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> between updates of displayed information (defaults to 0.5)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--rerequest_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> between requesting more peers (defaults to 300)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--min_peers <replaceable>number</replaceable></option></term>
+        <listitem>
+          <para>make tracker requests every --rerequest_interval until this <replaceable>number</replaceable> has been reached, then switch to the standard longer interval (defaults to 20)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--http_timeout <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> to wait before assuming that an http connection
+	    has timed out (defaults to 60)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--max_initiate <replaceable>number</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>number</replaceable> of peers at which to stop initiating new connections (defaults to 40)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--check_hashes</option> 0|1</term>
+        <listitem>
+          <para>whether to check hashes on disk (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--max_upload_rate <replaceable>kB/s</replaceable></option></term>
+        <listitem>
+          <para>the maximum <replaceable>kB/s</replaceable> to upload at (0 = no limit, -1 = automatic) (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--max_download_rate <replaceable>kB/s</replaceable></option></term>
+        <listitem>
+          <para>the maximum <replaceable>kB/s</replaceable> to download at (0 = no limit) (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--alloc_type</option> normal|background|pre-allocate|sparse</term>
+        <listitem>
+          <para>the allocation type (may be 'normal', 'background', 'pre-allocate' or 'sparse') (defaults to 'normal')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--alloc_rate <replaceable>MiB/s</replaceable></option></term>
+        <listitem>
+          <para>the rate (in <replaceable>MiB/s</replaceable>) to allocate space at using background allocation (defaults to 2.0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--buffer_reads</option> 0|1</term>
+        <listitem>
+          <para>whether to buffer disk reads (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--write_buffer_size <replaceable>space</replaceable></option></term>
+        <listitem>
+          <para>the maximum amount of <replaceable>space</replaceable> to use for buffering disk writes (in megabytes, 0 = disabled)
+	    (defaults to 4)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--breakup_seed_bitfield</option> 0|1</term>
+        <listitem>
+          <para>whether to send an incomplete bitfield and then 'have' messages, in
+	    order to get around stupid ISP manipulation (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--snub_time <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> to wait for data to come in over a connection before assuming it's
+	    semi-permanently choked (defaults to 30.0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--spew</option> 0|1</term>
+        <listitem>
+          <para>whether to display diagnostic info to stdout. This option is not very useful when using the curses or gui interfaces. (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--rarest_first_cutoff <replaceable>number</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>number</replaceable> of downloads at which to switch from random to rarest first (defaults to 2)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--rarest_first_priority_cutoff <replaceable>number</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>number</replaceable> of peers which need to have a piece before other partials take priority over
+	    rarest first (defaults to 5)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--min_uploads <replaceable>number</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>number</replaceable> of uploads to fill out to with extra optimistic unchokes (defaults to 4)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--max_files_open <replaceable>number</replaceable></option></term>
+        <listitem>
+          <para>the maximum <replaceable>number</replaceable> of files to keep open at a time, 0 means no limit (defaults to 50)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--round_robin_period <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> between the client switching upload targets (defaults to 30)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--super_seeder</option> 0|1</term>
+        <listitem>
+          <para>whether to use special upload-efficiency-maximizing routines (only for dedicated seeds)
+	    (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--security</option> 0|1</term>
+        <listitem>
+          <para>whether to enable extra security features intended to prevent abuse (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--max_connections <replaceable>number</replaceable></option></term>
+        <listitem>
+          <para>the absolute maximum <replaceable>number</replaceable> of peers to connect with (0 = no limit) (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--auto_kick</option> 0|1</term>
+        <listitem>
+          <para>whether to allow the client to automatically kick/ban peers that send bad data (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--double_check</option> 0|1</term>
+        <listitem>
+          <para>whether to double-check data being written to the disk for errors (may increase CPU load)
+	    (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--triple_check</option> 0|1</term>
+        <listitem>
+          <para>whether to thoroughly check data being written to the disk (may slow disk access)
+	    (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--lock_files</option> 0|1</term>
+        <listitem>
+          <para>whether to lock files the client is working with (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--lock_while_reading</option> 0|1</term>
+        <listitem>
+          <para>whether to lock access to files being read (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--auto_flush <replaceable>minutes</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>minutes</replaceable> between automatic flushes to disk (0 = disabled) (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--dedicated_seed_id <replaceable>code</replaceable></option></term>
+         <listitem>
+          <para>the <replaceable>code</replaceable> to send to a tracker, identifying as a dedicated seed (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--save_options</option> 0|1</term>
+	<listitem>
+	  <para>whether to save the current options as the new default configuration
+	    for the current program (defaults to 0)</para>
+	</listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--parse_dir_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> between re-scanning the provided directory (defaults to 60)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--saveas_style</option> 1|2|3</term>
+        <listitem>
+          <para>how to name torrent downloads (1 = rename to torrent name, 2 = save
+            under name in torrent, 3 = save in directory under torrent name)
+            (defaults to 1 for <command>btlaunchmany</command>, 2 for <command>btlaunchmanycurses</command>)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--display_path</option> 0|1</term>
+        <listitem>
+          <para>whether to display the full path or the torrent contents for each
+            torrent (defaults to 1 for <command>btlaunchmany</command>, 0 for <command>btlaunchmanycurses</command>)</para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  <refsect1>
+    <title>SEE ALSO</title>
+
+    <para>
+      <citerefentry><refentrytitle>debtorrent-tracker</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>AUTHOR</title>
+    <para>This manual page was written by &dhusername; &lt;&dhemail;> for
+      the &debian; system (but may be used by others).  Permission is
+      granted to copy, distribute and/or modify this document under
+      the terms of the &gnu; General Public License, Version 2 or any
+      later version published by the Free Software Foundation.
+    </para>
+    <para>
+      On Debian systems, the complete text of the GNU General Public
+      License can be found in /usr/share/common-licenses/GPL.
+    </para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->

Added: debtorrent/trunk/debian/debtorrent-tracker.sgml
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/debtorrent-tracker.sgml?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/debtorrent-tracker.sgml (added)
+++ debtorrent/trunk/debian/debtorrent-tracker.sgml Mon Jul 16 07:19:07 2007
@@ -1,0 +1,372 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+
+  <!-- Fill in your name for FIRSTNAME and SURNAME. -->
+  <!ENTITY dhfirstname "<firstname>Cameron</firstname>">
+  <!ENTITY dhsurname   "<surname>Dale</surname>">
+  <!-- Please adjust the date whenever revising the manpage. -->
+  <!ENTITY dhdate      "<date>April 17, 2005</date>">
+  <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
+       allowed: see man(7), man(1). -->
+  <!ENTITY dhsection   "<manvolnum>1</manvolnum>">
+  <!ENTITY dhemail     "<email>camrdale at gmail.com</email>">
+  <!ENTITY dhusername  "Cameron Dale">
+  <!ENTITY dhucpackage "<refentrytitle>debtorrent-tracker</refentrytitle>">
+  <!ENTITY dhpackage   "debtorrent-tracker">
+
+  <!ENTITY debian      "<productname>Debian</productname>">
+  <!ENTITY gnu         "<acronym>GNU</acronym>">
+  <!ENTITY gpl         "&gnu; <acronym>GPL</acronym>">
+]>
+
+<refentry>
+  <refentryinfo>
+    <address>
+      &dhemail;
+    </address>
+    <author>
+      &dhfirstname;
+      &dhsurname;
+    </author>
+    <copyright>
+      <year>2006</year>
+      <holder>&dhusername;</holder>
+    </copyright>
+    &dhdate;
+  </refentryinfo>
+  <refmeta>
+    &dhucpackage;
+
+    &dhsection;
+  </refmeta>
+
+  <refnamediv>
+    <refname>&dhpackage;</refname>
+
+    <refpurpose>debtorrent tracker</refpurpose>
+  </refnamediv>
+
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>&dhpackage;</command>
+
+      <arg rep="Repeat"><option>options</option></arg>
+      <arg choice="req"><option>--dfile <replaceable>file</replaceable></option></arg>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+
+    <para>This manual page documents briefly the
+      <command>&dhpackage;</command> command.</para>
+
+    <para><command>&dhpackage;</command> is a "tracker" for debtorrent clients. This program keeps track
+      of the completion of each client, and communicates that information when
+      requested to other clients.</para>
+
+    <para>There is one required option, --dfile, which specifies what <replaceable>file</replaceable> to store the recent downloader information.</para>
+
+  </refsect1>
+  <refsect1>
+    <title>OPTIONS</title>
+
+    <para>These programs follow the usual &gnu; command line syntax,
+      with long options starting with two dashes (`--').  A summary of
+      options is included below.</para>
+
+    <variablelist>
+      <varlistentry>
+        <term><option>--dfile <replaceable>file</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>file</replaceable> to store the recent downloader information (required)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--port <replaceable>port</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>port</replaceable> to listen on (defaults to 80)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--bind <replaceable>ip</replaceable>|<replaceable>hostname</replaceable>[,<replaceable>ip</replaceable>|<replaceable>hostname</replaceable> ...]</option></term>
+        <listitem>
+          <para>a comma-separated list of <replaceable>ips</replaceable> and <replaceable>hostnames</replaceable> to bind to locally (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--ipv6_enabled</option> 0|1</term>
+        <listitem>
+          <para>whether to allow the tracker to connect to peers via IPv6 (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--ipv6_binds_v4</option> 0|1</term>
+        <listitem>
+          <para>whether an IPv6 server socket will also field IPv4 connections (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--socket_timeout <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>then number of <replaceable>seconds</replaceable> to use as a timeout for closing connections (defaults to 15)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--save_dfile_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> between saving the dfile (defaults to 300)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--timeout_downloaders_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> between expiring downloaders (defaults to 2700)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--reannounce_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> downloaders should wait between reannouncements
+	    (defaults to 1800)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--response_size <replaceable>num</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>num</replaceable> of peers to send in an info message (defaults to 50)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--timeout_check_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the number of <replaceable>seconds</replaceable> to wait between checking if any connections have timed out
+	    (defaults to 5)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--nat_check <replaceable>num</replaceable></option></term>
+        <listitem>
+          <para>check <replaceable>num</replaceable> times if a downloader is behind a NAT (0 = don't
+	    check) (defaults to 3)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--log_nat_checks</option> 0|1</term>
+        <listitem>
+          <para>whether to add entries to the log for nat-check results (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--min_time_between_log_flushes <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the minimum number of <replaceable>seconds</replaceable> it must have been since the last flush to do another one
+	    (defaults to 3.0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--min_time_between_cache_refreshes <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>the minimum number of <replaceable>seconds</replaceable> before a cache is considered stale and is
+	    flushed (defaults to 600.0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--allowed_dir <replaceable>directory</replaceable></option></term>
+        <listitem>
+          <para>only allow downloads for torrents in this <replaceable>directory</replaceable> (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--allowed_list <replaceable>file</replaceable></option></term>
+        <listitem>
+          <para>only allow downloads for hashes in this <replaceable>file</replaceable> (hex format, one per
+	    line), cannot be used with allowed_dir (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--allowed_controls</option> 0|1</term>
+        <listitem>
+          <para>whether to allow special keys in torrents in the allowed_dir to affect tracker
+	    access (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--multitracker_enabled</option> 0|1</term>
+        <listitem>
+          <para>whether to enable multitracker operation (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--multitracker_allowed</option> autodetect|none|all</term>
+        <listitem>
+          <para>whether to allow incoming tracker announces (can be none, autodetect
+	    or all) (defaults to 'autodetect')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--multitracker_reannounce_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>number of <replaceable>seconds</replaceable> between outgoing tracker announces (defaults to 120)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--multitracker_maxpeers <replaceable>num</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>num</replaceable> of peers to get in a tracker announce (defaults to 20)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--aggregate_forward <replaceable>url</replaceable>[,<replaceable>password</replaceable>]</option></term>
+        <listitem>
+          <para>if set, forwards all non-multitracker to
+	    this <replaceable>url</replaceable> with this optional <replaceable>password</replaceable> (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--aggregator</option> 0|1|<replaceable>password</replaceable></term>
+        <listitem>
+          <para>whether to act as a data aggregator rather than a tracker. If
+	    enabled, may be 1, or <replaceable>password</replaceable>; if <replaceable>password</replaceable> is set, then an
+	      incoming password is required for access (defaults to '0')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--hupmonitor</option> 0|1</term>
+        <listitem>
+          <para>whether to reopen the log file upon receipt of HUP signal (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--http_timeout <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>number of <replaceable>seconds</replaceable> to wait before assuming that an http connection has
+	    timed out (defaults to 60)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--parse_dir_interval <replaceable>seconds</replaceable></option></term>
+        <listitem>
+          <para>number of <replaceable>seconds</replaceable> between reloading of allowed_dir (defaults to 60)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--show_infopage</option> 0|1</term>
+        <listitem>
+          <para>whether to display an info page when the tracker's root dir is loaded
+	    (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--infopage_redirect <replaceable>URL</replaceable></option></term>
+        <listitem>
+          <para>redirect the info page to this <replaceable>URL</replaceable> (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--show_names</option> 0|1</term>
+        <listitem>
+          <para>whether to display names from allowed dir (defaults to 1)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--favicon <replaceable>filename</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>filename</replaceable> containing x-icon data to return when browser requests
+	    favicon.ico (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--allowed_ips <replaceable>file</replaceable></option></term>
+        <listitem>
+          <para>only allow connections from IPs specified in the given <replaceable>file</replaceable>, which
+	    contains subnet data in the format: aa.bb.cc.dd/len (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--banned_ips <replaceable>file</replaceable></option></term>
+        <listitem>
+          <para>don't allow connections from IPs specified in the given <replaceable>file</replaceable>, which
+	    contains IP range data in the format: xxx:xxx:ip1-ip2 (defaults to '')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--only_local_override_ip</option> 0|1|2</term>
+        <listitem>
+          <para>ignore the ip GET parameter from machines which aren't on local
+	    network IPs (0 = never, 1 = always, 2 = ignore if NAT checking is not
+	    enabled) (defaults to 2)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--logfile <replaceable>file</replaceable></option></term>
+        <listitem>
+          <para>write tracker logs to this <replaceable>file</replaceable>, use '-' for stdout (defaults to '-')</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--allow_get</option> 0|1</term>
+        <listitem>
+          <para>use with allowed_dir; adds a /file?hash=<replaceable>hash</replaceable> URL that allows users
+	    to download the torrent file (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--keep_dead</option> 0|1</term>
+        <listitem>
+          <para>keep dead torrents after they expire (so they still show up on your
+	    /scrape and web page) (defaults to 0)</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--scrape_allowed</option> full|specific|none</term>
+        <listitem>
+          <para>scrape access allowed (can be none, specific or full) (defaults to full)</para>
+	</listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--dedicated_seed_id <replaceable>code</replaceable></option></term>
+        <listitem>
+          <para>the <replaceable>code</replaceable> to require from clients to indicate that they are
+	    dedicated seeders. This allows the tracker to monitor dedicated seed(s) and flag torrents as
+	    seeded. (defaults to '')</para>
+	</listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+
+  <refsect1>
+    <title>SEE ALSO</title>
+    <para>
+      <citerefentry><refentrytitle>debtorrent-client</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>AUTHOR</title>
+    <para>This manual page was written by &dhusername; &lt;&dhemail;> for
+      the &debian; system (but may be used by others).  Permission is
+      granted to copy, distribute and/or modify this document under
+      the terms of the &gnu; General Public License, Version 2 or any
+      later version published by the Free Software Foundation.
+    </para>
+    <para>
+      On Debian systems, the complete text of the GNU General Public
+      License can be found in /usr/share/common-licenses/GPL.
+    </para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->

Added: debtorrent/trunk/debian/debtorrent.install
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/debtorrent.install?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/debtorrent.install (added)
+++ debtorrent/trunk/debian/debtorrent.install Mon Jul 16 07:19:07 2007
@@ -1,0 +1,1 @@
+debtorrent-client.conf etc/debtorrent

Added: debtorrent/trunk/debian/debtorrent.manpages
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/debtorrent.manpages?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/debtorrent.manpages (added)
+++ debtorrent/trunk/debian/debtorrent.manpages Mon Jul 16 07:19:07 2007
@@ -1,0 +1,2 @@
+debian/debtorrent-client.1
+debian/debtorrent-tracker.1

Added: debtorrent/trunk/debian/debtorrent.postinst
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/debtorrent.postinst?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/debtorrent.postinst (added)
+++ debtorrent/trunk/debian/debtorrent.postinst Mon Jul 16 07:19:07 2007
@@ -1,0 +1,33 @@
+#! /bin/sh
+# postinst script for bittorrent
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+#
+# quoting from the policy:
+#     Any necessary prompting should almost always be confined to the
+#     post-installation script, and should be protected with a conditional
+#     so that unnecessary prompting doesn't happen if a package's
+#     installation fails and the `postinst' is called with `abort-upgrade',
+#     `abort-remove' or `abort-deconfigure'.
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+

Added: debtorrent/trunk/debian/debtorrent.prerm
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/debtorrent.prerm?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/debtorrent.prerm (added)
+++ debtorrent/trunk/debian/debtorrent.prerm Mon Jul 16 07:19:07 2007
@@ -1,0 +1,32 @@
+#! /bin/sh
+# prerm script for #PACKAGE#
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <prerm> `remove'
+#        * <old-prerm> `upgrade' <new-version>
+#        * <new-prerm> `failed-upgrade' <old-version>
+#        * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
+#        * <deconfigured's-prerm> `deconfigure' `in-favour'
+#          <package-being-installed> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+PACKAGE="debtorrent"
+
+dpkg --listfiles $PACKAGE |
+        awk '$0~/\.py$/ {print $0"c\n" $0"o"}' |
+        xargs rm -f >&2
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+

Added: debtorrent/trunk/debian/dirs
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/dirs?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/dirs (added)
+++ debtorrent/trunk/debian/dirs Mon Jul 16 07:19:07 2007
@@ -1,0 +1,5 @@
+usr/bin
+usr/share/debtorrent
+etc/debtorrent
+var/log/debtorrent
+var/cache/debtorrent

Added: debtorrent/trunk/debian/docs
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/docs?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/docs (added)
+++ debtorrent/trunk/debian/docs Mon Jul 16 07:19:07 2007
@@ -1,0 +1,8 @@
+README.txt
+docs/credits.txt
+docs/README-Psyco.txt
+docs/IMPORTANT-multitracker-readme.txt
+docs/FAQ.txt
+ipranges.portugal.txt
+docs/multitracker-spec.txt
+docs/webseed-spec.txt

Added: debtorrent/trunk/debian/postrm
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/postrm?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/postrm (added)
+++ debtorrent/trunk/debian/postrm Mon Jul 16 07:19:07 2007
@@ -1,0 +1,26 @@
+#! /bin/sh
+# postrm script for bittorrent
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postrm> `remove'
+#        * <postrm> `purge'
+#        * <old-postrm> `upgrade' <new-version>
+#        * <new-postrm> `failed-upgrade' <old-version>
+#        * <new-postrm> `abort-install'
+#        * <new-postrm> `abort-install' <old-version>
+#        * <new-postrm> `abort-upgrade' <old-version>
+#        * <disappearer's-postrm> `disappear' <r>overwrit>r> <new-version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0

Added: debtorrent/trunk/debian/rules
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/debian/rules?rev=173&op=file
==============================================================================
--- debtorrent/trunk/debian/rules (added)
+++ debtorrent/trunk/debian/rules Mon Jul 16 07:19:07 2007
@@ -1,0 +1,83 @@
+#!/usr/bin/make -f
+# Sample debian/rules that uses debhelper.
+# GNU copyright 1997 to 1999 by Joey Hess.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+PYTHON_VERSION=$(shell /usr/bin/python -V 2>&1 | /usr/bin/perl -le 'print "$$1.$$2" if <> =~m/^Python\s+(\d+)\.(\d+)(\.\d+)*/')
+
+
+build-stamp: debtorrent-client.1 debtorrent-tracker.1
+	dh_testdir
+	touch build-stamp
+
+%.1:	debian/%.sgml
+	/usr/bin/docbook-to-man $< > debian/$@
+
+clean:
+	dh_testdir
+	dh_testroot
+	rm -rf build/ DebTorrent/BT1/*.pyc DebTorrent/*.pyc *.pyc
+	rm -f debian/*.1
+	rm -f build-stamp
+	dh_clean
+
+install: build-stamp
+
+
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+	dh_installdirs
+	dh_installinit --name=debtorrent-client
+
+	# Add here commands to install the package into debian/bittornado.
+	chmod +x ./setup.py
+	./setup.py install --prefix=$(CURDIR)/debian/debtorrent/usr --install-lib=$(CURDIR)/debian/debtorrent/usr/share/python-support/debtorrent
+
+	install -d debian/debtorrent/usr/share/debtorrent
+	chmod 755 debian/debtorrent/usr/share/python-support/debtorrent/DebTorrent/launchmanycore.py
+
+	# Remove the generated .pyc files
+	( cd debian/debtorrent/usr/share/python-support/debtorrent/DebTorrent && \
+	  rm -f *.pyc  && \
+	  cd BT1 && \
+	  rm -f *.pyc )
+
+# Build architecture-independent files here.
+binary-arch: build install
+	
+
+# Build architecture-dependent files here.
+binary-indep: build install
+	dh_testdir
+	dh_testroot
+	dh_installdocs
+	dh_installexamples
+	dh_installman
+	
+	# Remove the .py from the end of each of these and move them out of
+	# the path
+	for i in test btmakemetafile btcompletedir btreannounce \
+		btrename btshowmetainfo btcopyannounce btsetdebmirrors; \
+	do mv debian/debtorrent/usr/bin/$$i.py debian/debtorrent/usr/share/debtorrent/$$i; done
+
+	# Remove the .py from the end of each of these
+	for i in debtorrent-client debtorrent-tracker; \
+	do mv debian/debtorrent/usr/bin/$$i.py debian/debtorrent/usr/bin/$$i; done
+
+	dh_installchangelogs 
+	dh_install
+	dh_link
+	dh_compress
+	dh_fixperms
+	dh_pysupport
+	dh_installdeb
+	dh_shlibdeps
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install

Propchange: debtorrent/trunk/debian/rules
------------------------------------------------------------------------------
    svn:executable = *

Modified: debtorrent/trunk/setup.py
URL: http://svn.debian.org/wsvn/debtorrent/debtorrent/trunk/setup.py?rev=173&op=diff
==============================================================================
--- debtorrent/trunk/setup.py (original)
+++ debtorrent/trunk/setup.py Mon Jul 16 07:19:07 2007
@@ -29,8 +29,7 @@
     
     packages = ["DebTorrent","DebTorrent.BT1"],
 
-    scripts = ["btdownloadheadless.py", "btlaunchmany.py", 
-               "btmakemetafile.py", "btcompletedir.py", "btreannounce.py", 
+    scripts = ["btmakemetafile.py", "btcompletedir.py", "btreannounce.py", 
                "btrename.py", "btshowmetainfo.py", 'btcopyannounce.py',
                'btsetdebmirrors.py', 'test.py',
                'debtorrent-client.py', 'debtorrent-tracker.py'




More information about the Debtorrent-commits mailing list