NAME
apt-p2p.conf — configuration file for apt-p2p.conf
DESCRIPTION
Configuration information for apt-p2p.conf is searched for in the
following order, with later entries overriding former ones:
1. /etc/apt-p2p/apt-p2p.conf
2. $HOME/.apt-p2p/apt-p2p.conf
3. the location specified by the config-file parameter
FORMAT
apt-p2p.conf has a structure similar to Microsoft Windows INI files.
The configuration file consists of sections, led by a ’[section]’
header and followed by ’name = value’ or ’name: value’ entries, with
continuations in the style of RFC 822 (values can span multiple lines
by starting the subsequent lines with one or more spaces). Some values
indicate times, in which case a suffix of ’d’ for days, ’h’ for hours,
’m’ for minutes, and ’s’ for seconds can be used. Boolean values can
be ’1’, ’yes’, ’true’, and ’on’ to evaluate to True, or ’0’, ’no’,
’false’, and ’off’ to evaluate to false. Note that leading whitespace
is removed from values, and case is not important. Lines beginning
with ’#’ or ’;’ are ignored and may be used to provide comments.
VARIABLES
There are 2 required sections in the config file. The first is the
DEFAULT section, providing variables for the configuration of the main
application. The second is the section that provides variables for the
configuration of the DHT.
DEFAULT
PORT = number
The number of the port to listen on for requests. The main
application will use this TCP port to listen for requests
from APT, and for uploads to other peers. If a port is not
specified for the DHT, it will also use this UDP port to
listen for DHT requests. (Default is 9977.)
UPLOAD_LIMIT = speed
The speed to limit sending data to peers to, in KBytes/sec.
Set this to 0 to not limit the upload bandwidth. (Default is
0)
MIN_DOWNLOAD_PEERS = number
The minimum number of peers before the mirror is not used.
If there are fewer peers than this for a file, the mirror
will also be used to speed up the download. Set to 0 to never
use the mirror if there are peers. (Default is 3)
CACHE_DIR = directory
The directory to store the downloaded files in. (Default is
$HOME/.apt-p2p/cache.)
OTHER_DIRS = list
The list of directories containing packages to share with
others. All files in these directories will be hashed and
available for everybody to download. (Default is to share
only the files downloaded.)
LOCAL_OK = boolean
Whether it’s OK for the application to use for sharing files
an IP address from a known local or private range (RFC 1918).
This should only be set true if you are running your own
private apt-p2p network that no one else will be connecting
to. (Default is false)
REMOTE_STATS = boolean
Whether a remote peer can access the statistics page.
(Default is True)
UNLOAD_PACKAGES_CACHE = time
The time of inactivity to wait for before unloading the
packages cache. The packages cache uses a lot of memory, and
only takes a few seconds to reload when a new request
arrives. (Default is 5 minutes.)
KEY_REFRESH = time
The time after which to refresh DHT keys. This should be a
time slightly less than the DHT’s KEY_EXPIRE value. (Default
is 2.5 hours.)
USERNAME = user
The user name to try and run as. Leaving this blank will try
to run as current user. (Default is ’apt-p2p’.)
DHT = string
The DHT implementation to use. It must be possile to do (in
python) ’from <DHT>.DHT import DHT’ to get a class that
implements the IDHT interface. There should also be a
similarly named section in the config file to specify the
options for the DHT. (Default is ’apt_p2p_Khashmir’)
DHT-ONLY = boolean
Whether to only run the DHT. This can be useful for providing
only a bootstrap node. (Default is false)
apt_p2p_Khashmir
PORT = number
The number of the port to listen on for DHT (UDP) requests.
(Default is to use the value specified in the DEFAULT
section.)
BOOTSTRAP = list
The list of bootstrap nodes to contact to join the DHT. Each
node should be on a separate line, and start with the IP
address or host name, followed by a colon and the port
number. (Default is a list of known good nodes.)
BOOTSTRAP_NODE = boolean
Whether this node is a bootstrap node. (Default is false)
CHECKPOINT_INTERVAL = time
The time to wait between saves of the running state.
(Default is 5 minutes.)
CONCURRENT_REQS = number
The concurrent number of calls per find node/value request.
(Default is 8.)
STORE_REDUNDANCY = number
The number of redundant copies of a value to store in the
DHT. (Default is 6.)
RETRIEVE_VALUES = number
The number of values to attempt to retrieve from the DHT.
Setting this to 0 will try and get all values (which could
take a while if a lot of nodes have values). Setting it
negative will try to get that number of results from only the
closest STORE_REDUNDANCY nodes to the hash. (Default is
-10000, which is a large negative number so all values from
the closest STORE_REDUNDANCY nodes will be retrieved.)
MAX_FAILURES = number
The number of times in a row a node can fail to respond
before it’s booted from the routing table. (Default is 3.)
MIN_PING_INTERVAL = time
The minimum time to wait before re-pinging a node. (Default
is 15 minutes.)
BUCKET_STALENESS = time
The maximum time to wait before refreshing a bucket.
(Default is 1 hour.)
LOCAL_OK = boolean
Whether it’s OK to add nodes to the routing table that use an
IP address from a known local or private range (RFC 1918).
This should only be set true if you are running your own
private apt-p2p network that no one else will be connecting
to. (Default is to use the value specified in the DEFAULT
section.)
KEY_EXPIRE = time
The time to wait before expiring unrefreshed keys. (Default
is 3 hours.)
KRPC_TIMEOUT = time
The time to wait before KRPC requests timeout. (Default is 9
seconds.)
KRPC_INITIAL_DELAY = time
The time to start with when resending KRPC requests using
exponential backoff. The request will first be resent after
the delay set here. The request will be resent again after
twice the delay set here, and so on. e.g. if TIMEOUT is 9
sec., and INITIAL_DELAY is 2 sec., then requests will be
resent at times 0, 2 (2 sec. later), and 6 (4 sec. later),
and then will timeout at 9. (Default is 2 seconds.)
SPEW = boolean
Whether to log lots of info about the requests and responses
in the protocol. (Default is false)
SEE ALSO
apt-p2p(8)
AUTHOR
This manual page was written by Cameron Dale <camrdale@gmail.com> 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.
On Debian systems, the complete text of the GNU General Public License
can be found in /usr/share/common-licenses/GPL.
apt-p2p.conf(5)