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
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.