Configuration
The configuration file for pyrosimple is lives in
$HOME/.config/pyrosimple/config.toml
. If you've
never used TOML files before, it's worth taking a quick look at the
TOML documentation,
but basically each section starts with a [SECTION_NAME]
followed by
keys and values.
Here is a basic example of what your file could look like:
rtorrent_rc = "~/.rtorrent.rc"
fast_query = 1
[FORMATS]
action = '{{now|iso}} {{action}}\t {{d.name}} {{d.alias}}'
[ALIASES]
Ubuntu = ["ubuntu.com"]
If you'd like to use a file other than the default, use the
PYRO_CONF
environment variable:
Reference
Top-level section
These entries in at the top of the file without a section name contain the most basic configuration settings for pyrosimple.
rtorrent_rc
(PYRO_RTORRENT_RC
)
Defaults to ~/.rtorrent.rc
.
This tells pyrosimple where to look for the rTorrent config file. It's mainly needed in order to automatically figure out where the SCGI port/file is listening, but may have other uses in the future.
scgi_url
(PYRO_SCGI_URL
)
Defaults to being unset.
If you'd prefer to manually set the SCGI URL, you can use this value
to do so. When unset, pyrosimple will use the rtorrent_rc
settings
to automatically figure it out, but will raise an error if it's unable
to find any hints.
sort_fields
(PYRO_SORT_FIELDS
)
Defaults to name,hash
.
Sets the default sort order for output in rtcontrol
.
mktor_ignore
Defaults to ["core", "CVS", ".*", "*~", "*.swp", "*.tmp", "*.bak", "[Tt]humbs.db", "[Dd]esktop.ini", "ehthumbs_vista.db"]
This allows overriding the list of temporary/hidden files mktor
will
ignore when creating torrents.
fast_query
(PYRO_FAST_QUERY
)
Defaults to 0
(disabled).
See query optimization for more information.
safety_checks_enabled
(PYRO_SAFETY_CHECKS_ENABLED
)
Defaults to True
.
Several safety checks exist to provide more useful error message in
cases such as missing methods/fields. In most cases this should have
no impact other than an extra call to rtorrent's system.listMethods
,
but disabling these checks may be useful if you'd like to speed up
command runs.
item_cache_expiration
(PYRO_ITEM_CACHE_EXPIRATION
)
Defaults to 5.0
.
The number of seconds to keep cached information for each item. The
default aims to strike reasonable balance between reducing RPC calls
while avoiding stale data. 0
makes the process cache all
information forever, while -1
disables the cache entirely.
TORQUE
This section is reserved for pyrotorque
. See its
user guide for more information.
FORMATS
Allows defining Jinja2 templates for use with rtcontrol
.
Example:
[FORMATS]
default = '{%set ESC = "\x1B" %}{%if d.down > 0%}{{ESC+"[1m"}}{%endif%}{%if d.is_open%}O{%else%} {%endif%}{%if d.is_active%}A{%else%} {%endif%}{%if not d.is_complete%}{{ESC+"[36m"}}{{ "{:>3}".format(d.done | round | int) }}{{ESC+"[0m"}}{%else%} D{%endif%} {{"{:>10}".format(d.size | filesizeformat(True))}} {%if d.message%}{{ESC+"[31m"}}{%endif%} {{d.alias.rjust(3)}}{{ESC+"[0m"}} {%if d.down > 0%}{{ESC+"[1m"}}{%endif%}{{d.name}}{{ESC+"[0m"}}'
filelist = '{% for f in d.files%}{{d.realpath}}{% if d.is_multi_file %}/{{f.path}}{% endif %}{% if loop.index != loop.length %}\n{% endif %}{% endfor %}'
action = '{{now|iso}} {{action}}\t {{d.name}} {{d.alias}}'
Note that any names defined here will override field names in the -o
simple format, so make sure there are no conflicts.
ALIASES
# Example with some common trackers
[ALIASES]
PBT = ["tracker.publicbt.com", "http://tracker.publicbt.com:80/announce",
"udp://tracker.publicbt.com:80/announce"]
PDT = ["http://files2.publicdomaintorrents.com/bt/announce.php"]
ArchOrg = ["http://bt1.archive.org:6969/announce",
"http://bt2.archive.org:6969/announce"]
OBT = ["http://tracker.openbittorrent.com:80/announce",
"udp://tracker.openbittorrent.com:80/announce"]
Debian = ["http://bttracker.debian.org:6969/announce"]
Linux = ["http://linuxtracker.org:2710/"]
This section allows for setting any number of tracker aliases for use
with rtcontrol
's "alias" field, and when creating torrents with
mktor
.
Note
rtcontrol
will cache alias information inside rTorrent custom keys
in order to speed up commands. To clear and then repopulate the cache,
run the following commands:
CONNECTIONS
# Example
[CONNECTIONS]
local = "~/rtorrent/.scgi_local"
remote_scgi = "scgi://example.com:9000"
remote_https = "https://example.com/RPC2"
rtmlxrpc
, rtcontrol
and pyrotorque
accept a -U
/--url
flag to
provide the scgi_url
directly when working with remote machines:
Once defined, the short name can be used instead: