Skip to main content

How to Install, Configure and Run FlexGet

FlexGet is a multipurpose automation tool for content like torrents, NZBs, podcasts, comics, series, movies, etc, and can handle different kinds of sources like RSS feeds, HTML pages, and CSV files. This allows you to integrate and create powerful automation between your downloaders, organizers, and your media servers.

This guide shows you the following:

  1. Install FlexGet to your service
  2. Create your first FlexGet configuration
  3. Upgrading and Removing FlexGet

Installation of FlexGet via python's virtual environment

  • First, log in to your service via SSH
  • Run the following command and follow the instructions. This will install FlexGet into your service.
bash <(wget -qO-

Configuring FlexGet

Creating config.yml

  • Here, we will now create your first FlexGet YAML. Start by creating FlexGet's config folder by running the following command:
mkdir -p "$HOME"/.config/flexget
  • Navigate to your created folder by doing
cd "$HOME"/.config/flexget
  • Create a config.yml with the following
nano config.yml

Refer to FlexGet Configuration for information about making your config as well as FlexGet Cookbook for some basic automation tasks that you can do with FlexGet.

To check if your config is correctly formatted and configured, you may have to use the following commands:

  • flexget check to check the config file for any errors
  • flexget --test execute to test run your configuration.

When you run it the first time, it may grab and download multiple torrents. To mitigate this, run flexget execute --learn. This will save the entries accepted so it won't download again in the future.

Upgrading FlexGet

  • To upgrade FlexGet, just run the following command:
"$HOME"/flexget/bin/python -m pip install flexget --upgrade

Removing FlexGet

  • To remove FlexGet, delete the flexget folder and your symbolic link.
rm -rfv "$HOME"/flexget
rm "$HOME"/bin/flexget