X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/599acf039c0c96b0a896ce581e6f71edb44e4d6b..a6ea1a1fa2e612852376b6deab07cb2388608fc8:/flexget/config.yml diff --git a/flexget/config.yml b/flexget/config.yml index 3a4fd28..e15c26a 100644 --- a/flexget/config.yml +++ b/flexget/config.yml @@ -1,11 +1,14 @@ -secrets: private.yml +variables: private.yml templates: # {{{1 email: # {{{2 - email: - from: flexget@tardis - to: ramsi@localhost + notify: + task: + via: + - email: + from: flexget@tardis + to: ramsi@localhost torrents: # {{{2 @@ -21,24 +24,28 @@ templates: # {{{1 transmission: host: localhost port: 9091 - path: /mnt/Skaro/torrents/done + path: /srv/torrents/done ratio: 0.0 usenet: # {{{2 sabnzbd: - key: '{{secrets.sabnzbd.key}}' - url: '{{secrets.sabnzbd.url}}' + key: '{?sabnzbd.key?}' + url: '{?sabnzbd.url?}' usenet-movies: # {{{2 inputs: - - rss: { url: 'https://www.usenet-crawler.com/rss?t=2040&dl=1&num=100{{secrets.crawler.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 + - rss: { url: 'https://api.drunkenslug.com/rss?t=2040&dl=1&num=100{?drunkenslug.api?}', silent: yes } # Movies HD usenet-tv: # {{{2 inputs: - - rss: { url: 'https://www.usenet-crawler.com/rss?t=5030,5040&dl=1&num=100{{secrets.crawler.api}}', silent: yes } # TV SD/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 + - rss: { url: 'https://api.drunkenslug.com/rss?t=2040&dl=1&num=100{?drunkenslug.api?}', silent: yes } # Movies HD filters: # {{{2 @@ -67,6 +74,7 @@ templates: # {{{1 - \[facepalm\]: {from: title} - \bASAP\b: {from: title} - \b Go\): {from: title} # filter those misplaced french only movies + - \b(HEVC|x265)\b: {from: title} # don't get x265/HEVC series: # {{{2 @@ -74,7 +82,7 @@ templates: # {{{1 category: 'series' series: settings: - default: + default: &default_settings identified_by: ep timeframe: 12 hours target: 1080p webdl h264+ @@ -82,7 +90,7 @@ templates: # {{{1 upgrade: yes exists_series: path: - - '/mnt/Skaro/Series/{{tvdb_series_name}}' + - '/mnt/series/{{tvdb_series_name}}' allow_different_qualities: better content_size: min: 100 @@ -95,7 +103,9 @@ templates: # {{{1 - 8 out of 10 cats - american dad - archer 2009 + - arrested development - better call saul + - black mirror - boardwalk empire - breaking bad - broadchurch @@ -108,45 +118,91 @@ templates: # {{{1 - downton abbey - eureka - family guy + - fargo - foyle's war - futurama - - game of thrones + - game of thrones: { timeframe: 9 hours } - homeland - house of cards 2013: { alternate_name: house of cards us } - how i met your mother - - last week tonight with john oliver + - last week tonight with john oliver: { timeframe: 10 hours } - masters of sex - my little pony - mythbusters - 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 - - two and a half men - the wire: { quality: 720p+ } + - two and a half men + - vinyl + - westworld + + + 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/Skaro/Movies' + - '/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 - imdb_required: on movies-1080p: # {{{2 @@ -165,23 +221,24 @@ templates: # {{{1 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={{secrets.crawler.apikey}}&t=movie&extended=1&cat=2040' - category: movie - interval: 7 days # search each entry only once a week + # 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 - trakt_add: - username: '{{secrets.trakt.login}}' - password: '{{secrets.trakt.passw}}' - list: collection + list_add: + - trakt_list: + username: '{?trakt.username?}' + account: '{?trakt.account?}' + list: collection tasks: # {{{1 @@ -191,19 +248,49 @@ tasks: # {{{1 - email - series - series-list + - series-trakt - filters - usenet - usenet-tv - dl-movies-trakt: # {{{2 - priority: 10 - trakt_list: - username: Ram-Z - list: watchlist - type: movies - accept_all: yes - movie_queue: add + # 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 @@ -278,16 +365,18 @@ tasks: # {{{1 manual: yes template: - trakt-add-collection - seen: local disable: - retry_failed + - seen + - seen_info_hash no_entries_ok: yes - find: + filesystem: path: - - /mnt/Skaro/usenet/done - - /mnt/Skaro/torrents/done + - /srv/usenet/done + - /srv/torrents/done recursive: yes + retrieve: files regexp: '.*\.(avi|mkv|mp4|mpg|divx|webm)$' regexp: @@ -295,20 +384,35 @@ tasks: # {{{1 - '[Ss]ample' thetvdb_lookup: yes + if: + - "not has_field('tvdb_episode')": + manipulate: + - title: + extract: 'done/([^/]*)/[^/]*$' + from: location + thetvdb_lookup: yes + all_series: parse_only: yes accept_all: yes + require_field: + - tvdb_season + - tvdb_episode + - tvdb_ep_name set: - destination: '/mnt/Skaro/Series' + 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/Skaro/Series/{{folder}}" - filename: "{{filename}}" + to: "/mnt/series/{{folder}}" + rename: "{{filename}}" clean_source: 100 # removes dir if < [N] MB - exec: echo "<<<{{folder}}/{{filename}}>>>" + # log: "<<<{{folder}}/{{filename}}>>>" + exec: + - echo "<<<{{folder}}/{{filename}}>>>" + - touch "{{destination}}/{{folder}}/{{filename}}{{location|pathext}}" digest: move-tasks @@ -316,15 +420,16 @@ tasks: # {{{1 manual: yes template: - trakt-add-collection - seen: local disable: - retry_failed + - seen + - seen_info_hash no_entries_ok: yes - find: + filesystem: path: - - /mnt/Skaro/usenet/done - - /mnt/Skaro/torrents/done + - /srv/usenet/done + - /srv/torrents/done recursive: yes regexp: '.*\.(mkv|avi|mp4)$' @@ -333,51 +438,115 @@ tasks: # {{{1 - '[Ss]ample' imdb_lookup: yes + if: + - movie_name is None: + manipulate: + - title: + extract: 'done/([^/]*)/[^/]*$' + from: location + imdb_lookup: yes + accept_all: yes + require_field: + - imdb_name + - imdb_year set: - destination: '/mnt/Skaro/Movies' + destination: '/mnt/movies' filename: "{{imdb_name}} ({{imdb_year}}){{'{'}}{{quality|replace(' ','}{')}}{{'}'}}[en]" move: - to: "/mnt/Skaro/Movies" - filename: "{{filename}}" + to: "/mnt/movies" + rename: "{{filename}}" clean_source: 100 # removes dir if < [N] MB - exec: echo "<<<{{filename}}>>>" + exec: + - echo "<<<{{filename}}>>>" + - touch "{{destination}}/{{filename}}{{location|pathext}}" digest: move-tasks daily-mail: # {{{2 manual: yes no_entries_ok: yes - emit_digest: + from_digest: list: move-tasks seen: local accept_all: yes - email: - from: flexget@tardis - to: ramsi@localhost - template: move + 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)$' + + 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: - - seed-search - trakt-add-collection - find: + filesystem: path: - - '/mnt/Skaro/Series' - regexp: '.*\.(avi|mkv|mp4|webm|m4v)$' + - '/mnt/series' recursive: yes + retrieve: files + regexp: '.*\.(avi|mkv|mp4|webm|m4v)$' manipulate: - title: from: location replace: - regexp: '.*/([^/]+)/[^/]+/(\d+)x(\d+)([^/]*)\.[^.]+$' + regexp: '.*/([^/]+)/[^/]+/(\d+)(?:x(\d+))+([^/]*)\.[^.]+$' format: '\1 S\2E\3\4' - title: replace: @@ -402,12 +571,12 @@ tasks: # {{{1 seen: local template: - trakt-add-collection - seen: local - find: + filesystem: path: - - '/mnt/Skaro/Movies' - regexp: '.*\.(avi|mkv|mp4|webm|m4v)$' + - '/mnt/movies' recursive: yes + retrieve: files + regexp: '.*\.(avi|mkv|mp4|webm|m4v)$' imdb_lookup: yes accept_all: yes require_field: @@ -425,4 +594,9 @@ schedules: # {{{1 hour: '*' minute: '48' + - tasks: ['backfill-mail'] + schedule: + hour: '*' + minute: '48' + # vim: sts=2 ts=2 sw=2 et