diff --git a/README.md b/README.md index 3833920..bd5acfb 100644 --- a/README.md +++ b/README.md @@ -49,23 +49,32 @@ Possible ideas: - [ ] Optimize types. Generated ones work for first step but not very optimal because they do not correctly represent request/response types. - [x] Default scores from trash guide - [x] Radarr support -- [ ] Debug logging switchable -- [ ] Improved Diff output +- [x] Debug logging switchable +- [x] Improved Diff output - [ ] Feature completion with recyclarr -- [ ] Cross references to: - - [ ] https://github.com/PCJones/radarr-sonarr-german-dual-language - - [ ] https://github.com/PCJones/usenet-guide -- [ ] Build docker container -- [ ] Build multi arch containers -- [ ] Add Github Actions stuff -- [ ] Improve code & tidy up lint errors -- [ ] write docs for running with container - - [ ] Plain docker - - [ ] Kubernetes +- [x] Cross references to: + - [x] https://github.com/PCJones/radarr-sonarr-german-dual-language + - [x] https://github.com/PCJones/usenet-guide +- [x] Build docker container +- [x] Build multi arch containers +- [x] Add Github Actions stuff +- [x] Improve code & tidy up lint errors +- [x] write docs for running with container + - [x] Plain docker + - [x] Kubernetes - [ ] Simple Config validation - [x] Local recyclarr templates to include - [ ] Clone existing templates: Lets say you want the same template but with a different name? +## Custom formats + +This repository also provide additional custom formats what TrashGuide does not offer. +At the moment this is mostly focused on German related stuff. + +- Most CustomFormats used from @PCJones + - See here: https://github.com/PCJones/radarr-sonarr-german-dual-language + - Or good german guide: https://github.com/PCJones/usenet-guide + ## Development 1. Optionally setup the local sonarr instance diff --git a/custom/cfs/custom-size-bigger-40gb.json b/custom/cfs/custom-size-bigger-40gb.json index aedadd0..5b69e9b 100644 --- a/custom/cfs/custom-size-bigger-40gb.json +++ b/custom/cfs/custom-size-bigger-40gb.json @@ -4,18 +4,17 @@ "default": -10000 }, "trash_description": "Size: Block sizes over 40GB", - "custom_inf": "Does not work because SizeSpecification is not supported by recyclarr", "name": "Size: Block More 40GB", "includeCustomFormatWhenRenaming": false, "specifications": [ { "name": "Size", "implementation": "SizeSpecification", - "negate": false, + "negate": true, "required": true, "fields": { - "min": 1, - "max": 9 + "min": 0, + "max": 40 } } ] diff --git a/custom/cfs/de-tier-01.json b/custom/cfs/de-tier-01.json new file mode 100644 index 0000000..36ce96f --- /dev/null +++ b/custom/cfs/de-tier-01.json @@ -0,0 +1,89 @@ +{ + "trash_id": "de-tier-01-version1", + "trash_scores": {}, + "name": "GER HD Rel. Group Tier 01", + "includeCustomFormatWhenRenaming": false, + "specifications": [ + { + "name": "ZeroTwo", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "ZeroTwo" + } + }, + { + "name": "WAYNE", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "WAYNE" + } + }, + { + "name": "TSCC", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "TSCC" + } + }, + { + "name": "DETAiLS", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "DETAiLS" + } + }, + { + "name": "FoST", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "FoST" + } + }, + { + "name": "SAUERKRAUT", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "SAUERKRAUT" + } + }, + { + "name": "Baka (Anime)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "Baka" + } + }, + { + "name": "D02KU", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "D02KU" + } + }, + { + "name": "WvF", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "WvF" + } + } + ] +} diff --git a/custom/cfs/de-tier-02.json b/custom/cfs/de-tier-02.json new file mode 100644 index 0000000..eedeb04 --- /dev/null +++ b/custom/cfs/de-tier-02.json @@ -0,0 +1,197 @@ +{ + "trash_id": "de-tier-02-version1", + "trash_scores": {}, + "name": "GER HD Rel. Group Tier 02", + "includeCustomFormatWhenRenaming": false, + "specifications": [ + { + "name": "iNTENTiON", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "iNTENTiON" + } + }, + { + "name": "TVS (keine ENG subs?)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "TVS" + } + }, + { + "name": "TV4A (check ob Tier 01)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "TV4A" + } + }, + { + "name": "TvR", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "TvR" + } + }, + { + "name": "TVARCHiV", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "TVARCHiV" + } + }, + { + "name": "RUBBiSH", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "RUBBiSH" + } + }, + { + "name": "MGE", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "MGE" + } + }, + { + "name": "HAXE", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "HAXE" + } + }, + { + "name": "RSG", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "RSG" + } + }, + { + "name": "AWARDS (Inactive)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "AWARDS" + } + }, + { + "name": "TMSF", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "TMSF" + } + }, + { + "name": "HQC (Inactive)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "HQC" + } + }, + { + "name": "DMPD", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "DMPD" + } + }, + { + "name": "MiSFiTS (Inactive)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "MiSFiTS" + } + }, + { + "name": "4SJ (Inactive)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "4SJ" + } + }, + { + "name": "euHD (Inactive)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "euHD" + } + }, + { + "name": "FuN (Low Size 265)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "FuN" + } + }, + { + "name": "OCA (Inactive)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "OCA" + } + }, + { + "name": "JaJunge", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "JaJunge" + } + }, + { + "name": "RWP", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "RWP" + } + }, + { + "name": "WOTT", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "WOTT" + } + } + ] +} diff --git a/custom/cfs/de-tier-03.json b/custom/cfs/de-tier-03.json new file mode 100644 index 0000000..2e54be1 --- /dev/null +++ b/custom/cfs/de-tier-03.json @@ -0,0 +1,71 @@ +{ + "trash_id": "de-tier-03-version1", + "trash_scores": {}, + "name": "GER HD Rel. Group Tier 03", + "includeCustomFormatWhenRenaming": false, + "specifications": [ + { + "name": "AIDA", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "AIDA" + } + }, + { + "name": "SunDry", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "SunDry" + } + }, + { + "name": "TVP (Inactive)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "TVP" + } + }, + { + "name": "UTOPiA", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "UTOPiA" + } + }, + { + "name": "VECTOR (Evaluate 07.2024)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "VECTOR" + } + }, + { + "name": "EXCiTED (Inactive)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "EXCiTED" + } + }, + { + "name": "FRAGGERS (Inactive)", + "implementation": "ReleaseGroupSpecification", + "negate": false, + "required": false, + "fields": { + "value": "FRAGGERS" + } + } + ] +} diff --git a/custom/cfs/lang-de-dl-2.json b/custom/cfs/lang-de-dl-2.json new file mode 100644 index 0000000..35429c5 --- /dev/null +++ b/custom/cfs/lang-de-dl-2.json @@ -0,0 +1,35 @@ +{ + "trash_id": "lang-de-dl-2-version1", + "trash_scores": {}, + "name": "German DL 2", + "includeCustomFormatWhenRenaming": false, + "specifications": [ + { + "name": "NOT German DL", + "implementation": "ReleaseTitleSpecification", + "negate": true, + "required": true, + "fields": { + "value": "(?i)german\\s*\\.?dl|(?<=\\bGerman\\b.*)(?