autotorrent2


Nameautotorrent2 JSON
Version 1.3.0 PyPI version JSON
download
home_pagehttps://github.com/johndoee/autotorrent2
SummaryTorrent lifecycle management tool
upload_time2024-02-17 10:27:51
maintainer
docs_urlNone
authorJohn
requires_python>=3.7
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Autotorrent2

![Test result](https://github.com/JohnDoee/autotorrent2/actions/workflows/main.yml/badge.svg?branch=master)

Match torrents and data, remove torrents based on data, cleanup your disk for unseeded files.
Autotorrent2 does everything you currently miss in your flow.

## Supported

* Torrent clients: rtorrent, Deluge, Transmission and qBittorrent
* OS: Any, but only tested on linux
* Python: 3.7+ are the only tested versions, might work with lower 3.x.

## Quickstart guide

Install Autotorrent2

```bash
python3 -m venv ~/.autotorrent # Create virtual environment where we install autotorrent2
~/.autotorrent/bin/pip install autotorrent2 # Actually install autotorrent2

# Optional, add at2 to your commandline
echo "alias at2=~/.autotorrent/bin/at2" >> ~/.bashrc
source ~/.bashrc
```

The first time Autotorrent2 is run without a known config file, it will create a base config file.

```bash
at2 check-config
```

The default location is ~/.config/autotorrent/config.toml - edit it to match your setup.
See the example configuration file for setting description [found here](config.example.toml).

Test the connections and see if it can connect to all your configured clients.

```bash
at2 test-connection
```

Now you are ready to actually use it, check out the [Usage page for fun things to do](https://johndoee.github.io/autotorrent2/usage/) and [CLI page for featurelist](https://johndoee.github.io/autotorrent2/cli/)

## Note about running autotorrent2 in a script

It can be fun to run scripts automatically and see cross-seeding just happen.
Autotorrent2 is not really designed for multiple instances at once so it is recommenced to use a lock to prevent this.

Instead of just `at2` then use e.g. `flock ~/.autotorrent.lock -c 'at2'` which prevents multiple instances of Autototrrent2 at once.

## Note about Docker

If you use Autotorrent2 in a docker container or with a torrent client running in docker then the recommendation is to align the paths.
If your torrent data is located in /mnt/data outside docker then you should map it similarly inside the docker container and you will save yourself from a lot of headaches.

Personally I recommend mounting your data source as read-only because bittorrent clients are write-happy that might corrupt your data.

## Docker usage

There is a docker image published automatically now.

Basic usage:

```bash
docker run -ti --rm -v ${PWD}/autotorrent.db:autotorrent.db -v ${PWD}/config.toml:config.toml ghcr.io/johndoee/autotorrent2:master check-config
```

Cron usage, check config every 5 minute.

```bash
docker run -ti --rm -v ${PWD}/autotorrent.db:autotorrent.db -v ${PWD}/config.toml:config.toml ghcr.io/johndoee/autotorrent2:master cron '*/5 * * * *' check-config
```

## Todo

Assortment of stuff that is planned.

- [ ] When Autotorrent2 is working on a task, e.g. copying a file to cache, then it might look like as it is stalled. An indicator should be added.
- [ ] Client normalization indexing, e.g. index based on how transmission and qbittorrent handles problematic filenames
- [ ] Torrent discovery for a torrent site.

## Known bugs

Assortment of stuff I am not sure I can do much about.

- [ ] Transmission (3.x) does not parse all emojis correctly and will return the wrong filename. [This is fixed in Transmission 4.0.2.](https://github.com/transmission/transmission/pull/5096)

## License

MIT

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/johndoee/autotorrent2",
    "name": "autotorrent2",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "",
    "author": "John",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/7b/42/f232d12971c320e5cf54f987fea1242470b793ab55a549bf4159a9f295ca/autotorrent2-1.3.0.tar.gz",
    "platform": null,
    "description": "# Autotorrent2\n\n![Test result](https://github.com/JohnDoee/autotorrent2/actions/workflows/main.yml/badge.svg?branch=master)\n\nMatch torrents and data, remove torrents based on data, cleanup your disk for unseeded files.\nAutotorrent2 does everything you currently miss in your flow.\n\n## Supported\n\n* Torrent clients: rtorrent, Deluge, Transmission and qBittorrent\n* OS: Any, but only tested on linux\n* Python: 3.7+ are the only tested versions, might work with lower 3.x.\n\n## Quickstart guide\n\nInstall Autotorrent2\n\n```bash\npython3 -m venv ~/.autotorrent # Create virtual environment where we install autotorrent2\n~/.autotorrent/bin/pip install autotorrent2 # Actually install autotorrent2\n\n# Optional, add at2 to your commandline\necho \"alias at2=~/.autotorrent/bin/at2\" >> ~/.bashrc\nsource ~/.bashrc\n```\n\nThe first time Autotorrent2 is run without a known config file, it will create a base config file.\n\n```bash\nat2 check-config\n```\n\nThe default location is ~/.config/autotorrent/config.toml - edit it to match your setup.\nSee the example configuration file for setting description [found here](config.example.toml).\n\nTest the connections and see if it can connect to all your configured clients.\n\n```bash\nat2 test-connection\n```\n\nNow you are ready to actually use it, check out the [Usage page for fun things to do](https://johndoee.github.io/autotorrent2/usage/) and [CLI page for featurelist](https://johndoee.github.io/autotorrent2/cli/)\n\n## Note about running autotorrent2 in a script\n\nIt can be fun to run scripts automatically and see cross-seeding just happen.\nAutotorrent2 is not really designed for multiple instances at once so it is recommenced to use a lock to prevent this.\n\nInstead of just `at2` then use e.g. `flock ~/.autotorrent.lock -c 'at2'` which prevents multiple instances of Autototrrent2 at once.\n\n## Note about Docker\n\nIf you use Autotorrent2 in a docker container or with a torrent client running in docker then the recommendation is to align the paths.\nIf your torrent data is located in /mnt/data outside docker then you should map it similarly inside the docker container and you will save yourself from a lot of headaches.\n\nPersonally I recommend mounting your data source as read-only because bittorrent clients are write-happy that might corrupt your data.\n\n## Docker usage\n\nThere is a docker image published automatically now.\n\nBasic usage:\n\n```bash\ndocker run -ti --rm -v ${PWD}/autotorrent.db:autotorrent.db -v ${PWD}/config.toml:config.toml ghcr.io/johndoee/autotorrent2:master check-config\n```\n\nCron usage, check config every 5 minute.\n\n```bash\ndocker run -ti --rm -v ${PWD}/autotorrent.db:autotorrent.db -v ${PWD}/config.toml:config.toml ghcr.io/johndoee/autotorrent2:master cron '*/5 * * * *' check-config\n```\n\n## Todo\n\nAssortment of stuff that is planned.\n\n- [ ] When Autotorrent2 is working on a task, e.g. copying a file to cache, then it might look like as it is stalled. An indicator should be added.\n- [ ] Client normalization indexing, e.g. index based on how transmission and qbittorrent handles problematic filenames\n- [ ] Torrent discovery for a torrent site.\n\n## Known bugs\n\nAssortment of stuff I am not sure I can do much about.\n\n- [ ] Transmission (3.x) does not parse all emojis correctly and will return the wrong filename. [This is fixed in Transmission 4.0.2.](https://github.com/transmission/transmission/pull/5096)\n\n## License\n\nMIT\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Torrent lifecycle management tool",
    "version": "1.3.0",
    "project_urls": {
        "Homepage": "https://github.com/johndoee/autotorrent2"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0ae62363ff550f58a0c2b5245faccfd0a82d001647ba954e1a619c954551d824",
                "md5": "f5abb52e6cb2891211beebe9eadd9c0a",
                "sha256": "1ab679daa11294a93bb7c8a4fb60d7248ad29c418d54d83cac7472b2ffe324e4"
            },
            "downloads": -1,
            "filename": "autotorrent2-1.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f5abb52e6cb2891211beebe9eadd9c0a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 28208,
            "upload_time": "2024-02-17T10:27:50",
            "upload_time_iso_8601": "2024-02-17T10:27:50.217865Z",
            "url": "https://files.pythonhosted.org/packages/0a/e6/2363ff550f58a0c2b5245faccfd0a82d001647ba954e1a619c954551d824/autotorrent2-1.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7b42f232d12971c320e5cf54f987fea1242470b793ab55a549bf4159a9f295ca",
                "md5": "7ae8372f5d0cb5d2289fd169da12bf05",
                "sha256": "4d313ff62a8356ec14ebc8ad7d7b546fddcc82e3b221dac9bd801ec9b8d0c937"
            },
            "downloads": -1,
            "filename": "autotorrent2-1.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "7ae8372f5d0cb5d2289fd169da12bf05",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 32299,
            "upload_time": "2024-02-17T10:27:51",
            "upload_time_iso_8601": "2024-02-17T10:27:51.460202Z",
            "url": "https://files.pythonhosted.org/packages/7b/42/f232d12971c320e5cf54f987fea1242470b793ab55a549bf4159a9f295ca/autotorrent2-1.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-17 10:27:51",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "johndoee",
    "github_project": "autotorrent2",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "autotorrent2"
}
        
Elapsed time: 0.25714s