variables: private.yml templates: # {{{1 email: # {{{2 notify: task: via: - email: from: flexget@tardis to: ramsi@localhost torrents: # {{{2 inputs: - rss: { url: 'https://ezrss.it/feed/', silent: yes } - rss: { url: 'http://publichd.se/rss.php', silent: yes } - rss: { url: 'http://rss.bt-chat.com/?group=3', silent: yes } - rss: { url: 'http://kickass.to/tv/?rss=1', silent: yes } - rss: { url: 'http://showrss.info/feeds/all.rss', silent: yes } # - rss: { url: 'http://www.torlock.com/television/rss.xml', silent: yes } # - rss: { url: 'http://torrentz.eu/feed_verified?q=tv', silent: yes } # - rss: { url: 'http://rss.thepiratebay.org/208', silent: yes } transmission: host: localhost port: 9091 path: /srv/torrents/done ratio: 0.0 usenet: # {{{2 sabnzbd: key: '{?sabnzbd.key?}' url: '{?sabnzbd.url?}' usenet-movies: # {{{2 inputs: - rss: { url: 'https://api.drunkenslug.com/rss?t=2040&dl=1&num=100{?drunkenslug.api?}', silent: yes } # Movies HD - rss: { url: 'https://www.usenet-crawler.com/rss?t=2040&dl=1&num=100{?crawler.api?}', silent: yes } # Movies HD - rss: { url: 'https://newztown.co.za/rss?t=2040&dl=1&num=100{?newztown.api?}', silent: yes } # Movies HD usenet-tv: # {{{2 inputs: - rss: { url: 'https://api.drunkenslug.com/rss?t=5030,5040&dl=1&num=100{?drunkenslug.api?}', silent: yes } # Movies HD - rss: { url: 'https://www.usenet-crawler.com/rss?t=5030,5040&dl=1&num=100{?crawler.api?}', silent: yes } # TV SD/HD - rss: { url: 'https://newztown.co.za/rss?t=5030,5040&dl=1&num=100{?newztown.api?}', silent: yes } # TV SD/HD filters: # {{{2 content_filter: require: - '*.mkv' - '*.mp4' reject: - 'filename.mkv' - '*.rar' - '*.r0*' - '*.wmv' - '*.exe' regexp: reject: - \b3-?D\b: {from: title} - \btrailer\b: {from: title} # I've gotten a few trailers that matched as movies. VERY annoying - \bR5\b: {from: title} # The following are poor quality types that somehow got through the quality - \bWEBSCR\b: {from: title} # features usually due to the title including a keyword like "720p" as well - \bscreener\b: {from: title} - \bTS\b: {from: title} - \bCam\b: {from: title} - '{C_P}': {from: title} # The following are groups with poor quality releases - TrTd TeaM: {from: title} - \[TNTVillage\]: {from: title} - \[facepalm\]: {from: title} - \bASAP\b: {from: title} - \b Go\): {from: title} # filter those misplaced french only movies - \b(HEVC|[xXhH]265)\b: {from: title} # don't get x265/HEVC series: # {{{2 set: category: 'series' series: settings: default: &default_settings identified_by: ep timeframe: 12 hours target: 1080p webdl h264 dts quality: 720p+ h264+ upgrade: yes exists_series: path: - '/mnt/series/{{tvdb_series_name}}' allow_different_qualities: better content_size: min: 100 max: 6000 strict: yes series-list: # {{{2 series: default: - 8 out of 10 cats - american dad - archer 2009 - arrested development - better call saul - black mirror - boardwalk empire - breaking bad - broadchurch - burn notice - chuck - community - danger 5: { quality: 720p+ } - dexter - dirk gently's holistic detective agency - doctor who 2005 - downton abbey - eureka - family guy - fargo - foyle's war - futurama - game of thrones: { timeframe: 9 hours, quality: dd5.1+ } - homeland - house of cards 2013: { alternate_name: house of cards us } - how i met your mother - last week tonight with john oliver: { timeframe: 10 hours } - masters of sex - my little pony - mythbusters - narcos - qi: { special_ids: 'uncut' } - ray donovan - red dwarf - rick and morty - sherlock - suits - the big bang theory - the blacklist - the blacklist redemption - the cleveland show - the walking dead - the wire: { quality: 720p+ } - two and a half men - vinyl - westworld: { timeframe: 9 hours, quality: dd5.1+ } series-trakt: # {{{2 configure_series: from: trakt_list: username: '{?trakt.username?}' account: '{?trakt.account?}' list: followlist type: shows settings: *default_settings series-trakt-backfill: # {{{2 configure_series: from: trakt_list: username: '{?trakt.username?}' account: '{?trakt.account?}' list: backfill type: shows settings: # *default_settings identified_by: ep quality: 720p+ h264+ discover: interval: 1 hours what: - trakt_list: username: '{?trakt.username?}' account: '{?trakt.account?}' list: backfill type: episodes - next_series_episodes: from_start: yes from: - newznab: url: 'https://www.usenet-crawler.com/api?apikey={?crawler.apikey?}&t=tvsearch&cat=5030,5040&extended=1' category: tv all_series: yes movies: # {{{2 set: category: 'movies' priority: '-2' exists_movie: path: - '/mnt/movies' allow_different_qualities: better type: files lookup: imdb movies-imdb: # {{{2 imdb_lookup: yes require_field: imdb_url imdb: min_score: 7.5 min_votes: 30000 movies-1080p: # {{{2 quality: 1080p bluray+ h264+ content_size: min: 3000 max: 15000 strict: yes movies-720p: # {{{2 quality: 720p+ webdl+ h264+ delay: 14 days content_size: min: 1000 max: 10000 strict: yes # movies-discover-queue: # {{{2 # movie_queue: accept # discover: # what: # - emit_movie_queue: yes # from: # - newznab: # url: 'https://www.usenet-crawler.com/api?apikey={?crawler.apikey?}&t=movie&extended=1&cat=2040' # category: movie # interval: 7 days # search each entry only once a week trakt-add-collection: # {{{2 list_add: - trakt_list: username: '{?trakt.username?}' account: '{?trakt.account?}' list: collection tasks: # {{{1 dl-series: # {{{2 priority: 100 template: - email - series - series-list - series-trakt - filters - usenet - usenet-tv # dl-series-trakt-backfill: # {{{2 # priority: 110 # template: # - series # - series-trakt-backfill # - filters # - usenet # digest: backfill # dl-movies-trakt: # {{{2 # priority: 10 # trakt_list: # username: '{?trakt.username?}' # account: '{?trakt.account?}' # list: watchlist # type: movies # accept_all: yes # movie_queue: add # dl-movies-trakt-remove: # {{{2 # priority: 20 # disable: # - seen # emit_movie_queue: yes # crossmatch: # from: # - trakt_list: # username: '{?trakt.username?}' # account: '{?trakt.account?}' # list: watchlist # type: movies # fields: [imdb_id] # action: reject # accept_all: yes # movie_queue: remove dl-movies-discover-queue-1080p: # {{{2 priority: 100 template: - email - movies - movies-discover-queue - movies-1080p - filters - usenet dl-movies-discover-queue-720p: # {{{2 priority: 110 template: - email - movies - movies-discover-queue - movies-720p - filters - usenet dl-movies-queue-1080p: # {{{2 priority: 100 template: - email - movies - movies-1080p - filters - usenet - usenet-movies dl-movies-queue-720p: # {{{2 priority: 110 template: - email - movies - movies-720p - filters - usenet - usenet-movies dl-movies-imdb-1080p: # {{{2 priority: 120 template: - email - movies - movies-imdb - movies-1080p - filters - usenet - usenet-movies dl-movies-imdb-720p: # {{{2 priority: 130 template: - email - movies - movies-imdb - movies-720p - filters - usenet - usenet-movies move-series: # {{{2 manual: yes template: - trakt-add-collection disable: - retry_failed - seen - seen_info_hash no_entries_ok: yes filesystem: path: - /srv/usenet/done - /srv/torrents/done recursive: yes retrieve: files regexp: '.*\.(avi|mkv|mp4|mpg|divx|webm|flv)$' regexp: reject: - '[Ss]ample' # guessit can extract info from full paths which may contain more info manipulate: - title: from: location parsing: series: guessit all_series: parse_only: yes accept_all: yes require_field: - tvdb_season - tvdb_episode - tvdb_ep_name set: destination: '/mnt/series' folder: "{{tvdb_series_name}}/{% if tvdb_season == 0 %}Specials{% else %}Season {{tvdb_season}}{% endif %}" filename: "{{tvdb_season}}x{{tvdb_episode|pad(2)}} {{tvdb_ep_name|replace('/','-')}} ({{tvdb_ep_air_date|formatdate('%Y')}}){{'{'}}{{quality|replace(' ','}{')}}{{'}'}}[en]" move: to: "/mnt/series/{{folder}}" rename: "{{filename}}" clean_source: 100 # removes dir if < [N] MB # log: "<<<{{folder}}/{{filename}}>>>" exec: - echo "<<<{{folder}}/{{filename}}>>>" - touch "{{destination}}/{{folder}}/{{filename}}{{location|pathext}}" digest: move-tasks move-movies: # {{{2 manual: yes template: - trakt-add-collection disable: - retry_failed - seen - seen_info_hash no_entries_ok: yes filesystem: path: - /srv/usenet/done - /srv/torrents/done recursive: yes regexp: '.*\.(mkv|avi|mp4)$' regexp: reject: - '[Ss]ample' # guessit can extract info from full paths which may contain more info manipulate: - title: from: location parsing: movie: guessit imdb_lookup: yes accept_all: yes require_field: - imdb_name - imdb_year set: destination: '/mnt/movies' filename: "{{imdb_name}} ({{imdb_year}}){{'{'}}{{quality|replace(' ','}{')}}{{'}'}}[en]" move: to: "/mnt/movies" rename: "{{filename}}" clean_source: 100 # removes dir if < [N] MB exec: - echo "<<<{{filename}}>>>" - touch "{{destination}}/{{filename}}{{location|pathext}}" digest: move-tasks daily-mail: # {{{2 manual: yes no_entries_ok: yes from_digest: list: move-tasks seen: local accept_all: yes notify: task: template: move via: - email: from: flexget@tardis to: ramsi@localhost backfill-mail: # {{{2 priority: 500 manual: yes template: - email no_entries_ok: yes from_digest: list: backfill seen: local accept_all: yes seed-series-db: # {{{2 manual: yes seen: local filesystem: path: - '/mnt/series' recursive: yes retrieve: files regexp: '.*\.(avi|mkv|mp4|webm|m4v)$' #TODO use guessit like in move-series manipulate: - title: from: location replace: regexp: '.*/([^/]+)/[^/]+/(\d+)(?:x(\d+))+([^/]*)\.[^.]+$' format: '\1 S\2E\3\4' - title: replace: regexp: '\[.*\]' format: '' - title: replace: regexp: '[\(\)\{\}]' format: ' ' metainfo_series: yes thetvdb_lookup: yes all_series: tracking: no assume_quality: 480p accept_all: yes require_field: - tvdb_id seed-trakt-series: # {{{2 manual: yes seen: local template: - trakt-add-collection filesystem: path: - '/mnt/series' recursive: yes retrieve: files regexp: '.*\.(avi|mkv|mp4|webm|m4v)$' #TODO use guessit like in move-series manipulate: - title: from: location replace: regexp: '.*/([^/]+)/[^/]+/(\d+)(?:x(\d+))+([^/]*)\.[^.]+$' format: '\1 S\2E\3\4' - title: replace: regexp: '\[.*\]' format: '' - title: replace: regexp: '[\(\)\{\}]' format: ' ' metainfo_series: yes thetvdb_lookup: yes all_series: yes assume_quality: 480p accept_all: yes require_field: - tvdb_id seed-trakt-movies: # {{{2 manual: yes seen: local template: - trakt-add-collection filesystem: path: - '/mnt/movies' recursive: yes retrieve: files regexp: '.*\.(avi|mkv|mp4|webm|m4v)$' imdb_lookup: yes accept_all: yes require_field: - imdb_id schedules: # {{{1 - tasks: ['daily-mail'] schedule: hour: '17' minute: '00' - tasks: ['dl-*'] schedule: hour: '*' minute: '48' - tasks: ['backfill-mail'] schedule: hour: '*' minute: '48' # vim: sts=2 ts=2 sw=2 et