Giter Site home page Giter Site logo

trop's Introduction

trop

Introduction

trop is a shell script designed to make interaction with transmission-remote easier. It features options to get information about tr-remote torrents by seeding torrents or by a specific set of tracker URLs. This project aims to provide information from transmission-remote to the user in a clean way, and make doing common tasks more automatic, interchangeably through command-line or scripts. The code is written to be as POSIX compliant as possible.

Installing

The recommended way to install trop is to use the `install.sh' script. The install script will install the trop files to the path specified in the PREFIX environment variable. The default path is `~/.trop'.

If you prefer to install trop in a different fashion, the only requirement is that all files distributed in the release are kept in the same directory. Any other configuration is not guaranteed to work.

Updating

Starting with trop 1.4.0, you can update the core files through install.sh by supplying `up' or `update' as an argument. Starting with trop 1.6.0, install.sh will also check user modifiable files for updates. However, trop.conf did change in v1.6 but cannot be checked as the checksum is cached for the first time in this update. Please update manually! Occasionally, a trivial change to might be added to one of the user modifiable files and the hash stored in install.sh won't be updated. Because the hash is then different, install.sh will abort with an error. Starting with trop 1.7.7, the -f option was added to force install.sh to continue if it encounters any problems. This is useful as a temporary solution to the scenario described.

Storing tr-remote authentication information

To save a default host and/or user:pass combination, the tropriv.sh file was created. To save the host information, open tropriv.sh and enter the default you'd like to use in the HOSTPORT variable like so:

HOSTPORT='example.org:1234' # set here for default

And likewise for the user:pass (-n switch in tr-remote)

AUTH='bob:secretpass' # set here for default

The `tracker' file

The tracker file is used to bind an alias to a set of bittorrent tracker URLs. That way you can gather information about torrents specific to a tracker, or a set of trackers.

Here is an example of an entry:

example : primary-tracker.example.org
	+ second-tracker.example.org
	+ third-tracker.example.com

The first word is the alias; The second word is the primary tracker. Both these entries are required. The alias and all tracker entries must not contain any spaces. There must be a space on both sides of the alias-primary tracker separator (the colon). The alias may not start with `+' or `#'. Secondary tracker entries must contain a `+' symbol as the first non-whitespace character, followed by a space, then the tracker entry. There may not be more than one unique tracker URL entry in any alias. Any number of secondary trackers may be specified. You may interactively add trackers through the `-ta' flag in trop.

trop.conf - Configuration

trop.conf is used to set default actions upon trop initialization. This file is simply a shell script with variables that trop sources to get defaults. Each variable is commented in trop.conf to show what it is used for.

Setting up trop upon login

In order to use certain features, trop must be called with the -startup flag once when logging in. Where to add this depends on your login shell. For Bourne-like shells this would be `/.profile'; In Zsh, it is `/.zprofile'. Typically you would look for your default shell in /etc/passwd. Once you've found out your login shell, add this to the login script:

hash trop 2>&- && trop -q -startup >/dev/null

License

trop is licensed under the BSD2 Clause. See the LICENSE file for details.

Contact

For any questions, comments, etc. Contact me at:

[email protected]

If you would like to contribute code, email me a patch or open a pull-request.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.