Home » Home Server » Guide: How to configure FlexGet to download your media

Guide: How to configure FlexGet to download your media

During this month we have been talking about how to install FlexGet on Ubuntu and add FlexGet to Windows, in order to take advantage of this lightweight console application. Despite its lack of graphic interface, which is being developed at the moment under the name FlexGet WebUI, learning how to configure FlexGet could be useful in order for you to automate your media downloads. If you dislike applications with no GUI, you can use other downloaders instead, such as SABnzbd on Windows or Sonarr, an alternative to SickBeard. [Read: CouchPotato vs SickBeard, SickRage, or Sonarr for beginners]

Update: Learn with us how to use FlexGet Daemon mode after you’re done with this configuration tutorial, to get the most out of this application and schedule automatic downloads for your shows and movies.
Update 2: Are you a beginner to FlexGet? Read our Beginner Blueprint: Complete FlexGet Setup Guide and find relevant information about installing, configuring, and using this application.

How to Configure FlexGet downloads
Learn the basics about how to configure FlexGet with this brief summarized tutorial.

Downloading your shows with a proper FlexGet configuration in an automatic way is useful if you’re setting up a home server with Plex or Emby. It’s also useful if you use Kodi; but you could get content for Kodi in an easier way, streaming from addons such as these 10 best Kodi movies addons. Whatever the case, in case you want to setup FlexGet there are very basic aspects you need to know. The first one is, that you should better have a wireless HTPC keyboard ready to use. You can also use a wired one, actually, but the important thing is that you need to be able to send text somehow to the server where you will configure FlexGet, as you need to edit a text configuration file.

Best Wireless HTPC and Android TV Box Keyboards

  1. Logitech K410 Living-Room Wireless Keyboard with Built-In Touchpad - $37.75 editors pick
  2. Logitech Illuminated K830 HTPC Wireless Keyboard and Touchpad - $69.99
  3. iPazzPort KP-810-10AS Wireless Mini Keyboard Remote with Touch - $15.99
  4. Rii i8+ 2.4GHz Mini Wireless Keyboard with Touchpad - $22
  5. LYNEC C120Pro Mini Wireless Gyro Remote Keyboard Mouse - $13

How to configure FlexGet?

To setup FlexGet you need to create a configuration file. This is a text file with a defined structure. FlexGet uses Yaml markup in its configuration file, which makes indentation and spacing very critical for FlexGet to successfully process your configuration file. If you want to know how to configure FlexGet, you need to know that configuration has several important aspects.

FlexGet configuration example
Check out this example of a simple FlexGet configuration file, to download shows via RSS to a media folder on your local drive.

FlexGet configuration: Plugins

Plugins are called from the FlexGet configuration file with no specific order. They are listed with their name and followed by a colon, after which some parameters are also written. Plugins can be grouped in tasks, and these are grouped in a big tasks list, that will be started with the tasks: keyword. Here’s an example:

tasks:
first task:
rss: http://myfeed.com/path.rss
series:
- An Amazing Show:
quality: 1080p
- Another Amazing Show
download: /home/mymedia/path

What does this all mean? In our example, rss, series and download are plugins. There are several plugins you can use to configure FlexGet, each one with their syntax, but the most important concept is that there are three levels of plugins: input, filter and output.

FlexGet configuration: input plugins

In layman’s terms, these are the plugins that will give you the location of the media to download. In this case, you would be using an rss feed, through the rss plugin.

Setup FlexGet filters

filter plugins are simply parameters that will tell FlexGet what specific media out of the available ones you want to download. In this case, from the rss feed specified, you only want the episodes of Another Amazing Show, no matter their quality, and episodes of An Amazing Show, only in 1080p. Note how the configuration parameter is also indented, and note how, whenever a show name has modifiers (such as quality: 1080p), it has to end with a colon.

How to configure FlexGet output plugins

To configure FlexGet output plugins, you simply specify what will FlexGet do with the media from the input,  that has been filtered with the filter plugins. In this case, you would need to tell FlexGet where to store the shows you just told it to download, specifying a proper path for it within your home server with the download plugin.

Setup FlexGet graphic breakdown
It’s better to remember the three main parts of a FlexGet config file in a graphical sort of way.

That’s it! Now you have got the basic idea on how to configure FlexGet! If you want to delve deeper into this, make sure to take a look at their wiki page on FlexGet Configuration. Please keep in mind indentation and spaces are important when writing a FlexGet configuration file, and that they should be stored in the current path, the virtualenv path if you’re using a virtual environment, or in the FlexGet directory if you’re using Windows or Linux. The config.yml file that will be used will be the one that FlexGet finds first. Does this all sound too complex? Take a look at these 10 best live TV addons for Kodi, or watch your favorite series via streaming with Kodi Exodus Addon, while waiting on the graphical interface to use FlexGet and unleash all its potential!

We Are Hiring: Familiar with Media Streaming, HTPC, Home Server, Smart Home, and Home Automation topics? Write about it and earn money. No writing experience needed. APPLY HERE.

Get 20% OFF with IPVanish VPN:

♦   Hide your browsing and streaming activity: No logs and no tracking
♦   Access geo-restricted content from anywhere
♦   Encrypt and anonymize: Kodi, Plex, Downloads, Personal Info
♦   Windows, Mac, Linux, Android, iOS, Router, and more.
♦   Money back guarantee - Sign Up Now

About the author

Alejandro

Alejandro is an electrical engineer, working as a software developer and part-time writer. He has a passion for technology, languages and games, and has been around the web since 2004.