Metadata-Version: 2.1
Name: rofi-pirate
Version: 1.0.1
Summary: Rofi module for searching torrents using Jackett API.
Home-page: https://github.com/haarnel/rofi-pirate
License: MIT
Author: Pierre Linn
Author-email: haarnel@proton.me
Requires-Python: >=3.10,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Requires-Dist: beautifulsoup4 (>=4.11.1,<5.0.0)
Requires-Dist: python-dateutil (>=2.8.2,<3.0.0)
Requires-Dist: requests (>=2.28.1,<3.0.0)
Project-URL: Repository, https://github.com/haarnel/rofi-pirate
Description-Content-Type: text/markdown

# 🏴‍☠ Rofi Pirate

![](./assets/logo.png)

Rofi module for searching torrents using Jackett API. You can also instantly play media files without having to leave the Rofi menu. The project is still in beta.

## Requirements

1. Streaming torrent client: [Peerflix](https://github.com/mafintosh/peerflix) (to play media files without downloading it first)
2. qBittorent (optional)
3. Nerd Fonts

## Setup process

1. First, you need a running instance of Jackett and install Peerflix

```shell
# Arch Linux users
yay -S jackett-bin
systemctl start jackett.service # then go to http://localhost:9117/
# Or Docker image
docker pull linuxserver/jackett
# Peerflix install
npm install -g peerflix
```

2. Set up your indexers through the dashboard and also obtain an API key from there.

3. Install rofi-python package.

```shell
pip install rofi-pirate
```

4. Place the configuration file under ```~/.config/rofi_pirate/config.json```. **Don't forget** to specify your API key.

Config example:

```json
{
  "JACKETT_ENDPOINT": "http://127.0.0.1:9117",
  "JACKETT_APIKEY": "<API_KEY>", 
  "SEARCH_LIMIT": 25,
  "PEERFLIX_CMD": "peerflix -t -k -a",
  "PEERFLIX_CACHE": "~/Downloads/Torrents",
  "HISTORY_CACHE": "~/.config/rofi_pirate/history.db",
}
```

## TODO

- [ ] Dynamic indexer configuration.
- [ ] Ability to preview torrent images (movie/music covers).
