Web application for automatically downloading TV & Movies (w/ VPN)

View the Project on GitHub lardbit/nefarious


nefarious is a web application that automatically downloads Movies and TV Shows.

Build Status Docker Pulls

It uses Jackett and Transmission under the hood. Jackett searches for torrents and Transmission handles the downloading.






TV Result

Movie Result

Download Status

Discover via TMDB

Discover via Rotten Tomatoes




Search Manual

Mobile Friendly




You must have docker and docker-compose already installed. See dependencies.

Part 1

Clone the nefarious repository:

git clone
cd nefarious

Copy the default environment file to make changes:

cp env.template .env

Edit .env as needed for your settings, at least defining HOST_DOWNLOAD_PATH to something like HOST_DOWNLOAD_PATH=/path/to/downloads.

You should never need to edit the docker-compose.yml file since all settings are read from .env.

Start all the containers:

docker-compose up -d

NOTE: the first time you start nefarious can take a few minutes.

Your default local URLs for all the various services will be:

See Part 2 for finalizing the configuration.

Low powered systems

See for low powered / single board computers (sbc) like the raspberry pi, odroid, pine etc.


See for VPN integration.

Part 2

The default nefarious user/password is admin/admin. On first login you will be directed to the main nefarious settings and asked to configure your Jackett API token. Jackett’s host in the main settings should remain jackett and the port should remain 9117. Copy your API Token from Jackett into the appropriate nefarious section. Don’t forget to also add some indexers in Jackett to track your preferred content, and be sure to test them to see that they’re working. Some popular examples are The Pirate Bay, 1337x, RARBG.

Transmission’s host should remain transmission and port should remain 9091. It’s possible to configure it with a username and password, but it defaults to keeping them both blank. Entering both username and password in the nefarious settings should only be done if the Transmission settings of transmission-settings.json were also configured for your desired user/pass.

Once all of your settings are updated, click Save & Verify Settings to save and verify they’re valid.

Transmission Configuration

There is no default transmission user/pass, but feel free to edit the transmission-settings.json beforehand following the official settings to make any changes you’d like.

NOTE if you make any changes to transmission-settings.json you’ll have to recreate the transmission container for the changes to take place:

docker-compose up -d --force-recreate transmission




If you’re running nefarious via the default docker-compose.yml file then nefarious will automatically update to the newest versions as they release. However, occasionally the docker-compose.yml configuration file changes and you’ll need to redo the steps in Setup. You will not lose your nefarious settings due to persistent docker volumes. It’s a safe operation.