mirror of
https://github.com/JulienMalka/snowfield.git
synced 2025-03-25 21:30:52 +01:00
feat: we have ygg at home
This commit is contained in:
parent
3cc6ebdd52
commit
774a896bfd
2 changed files with 124 additions and 1 deletions
|
@ -35,7 +35,13 @@ in
|
||||||
services.jackett = {
|
services.jackett = {
|
||||||
enable = true;
|
enable = true;
|
||||||
# unstable version to have updated torrent list
|
# unstable version to have updated torrent list
|
||||||
package = pkgs.jackett;
|
package = pkgs.unstable.jackett.overrideAttrs (
|
||||||
|
_: _: {
|
||||||
|
postInstall = ''
|
||||||
|
cp ${./ygg-api.yml} $out/lib/jackett/Definitions/ygg-api.yml
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
);
|
||||||
inherit (cfg) user group;
|
inherit (cfg) user group;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
117
modules/jackett/ygg-api.yml
Normal file
117
modules/jackett/ygg-api.yml
Normal file
|
@ -0,0 +1,117 @@
|
||||||
|
---
|
||||||
|
id: ygg-api
|
||||||
|
name: Ygg API
|
||||||
|
description: Indexeur non officiel pour ygg.re MOVIES / TV
|
||||||
|
language: fr-FR
|
||||||
|
type: private
|
||||||
|
encoding: UTF-8
|
||||||
|
testlinktorrent: false
|
||||||
|
links:
|
||||||
|
- https://yggapi.eu/
|
||||||
|
|
||||||
|
caps:
|
||||||
|
categorymappings:
|
||||||
|
- {id: 2178, cat: Movies/Other, desc: "Films d’animation"}
|
||||||
|
- {id: 2179, cat: TV/Anime, desc: "Séries d’animation / Mangas"}
|
||||||
|
- {id: 2183, cat: Movies, desc: "Films"}
|
||||||
|
- {id: 2184, cat: TV, desc: "Séries"}
|
||||||
|
|
||||||
|
modes:
|
||||||
|
search: [q]
|
||||||
|
tv-search: [q, season, ep]
|
||||||
|
movie-search: [q, year]
|
||||||
|
allowrawsearch: true
|
||||||
|
|
||||||
|
settings:
|
||||||
|
- name: passkey
|
||||||
|
type: password
|
||||||
|
label: Passkey
|
||||||
|
- name: info_key
|
||||||
|
type: info
|
||||||
|
label: About your passkey
|
||||||
|
default: "You will find your passkey on the <a href=\"https://www.ygg.re/user/account\" target=\"_blank\">YGG</a> account page."
|
||||||
|
- name: sort
|
||||||
|
type: select
|
||||||
|
label: Sort requested from site
|
||||||
|
default: uploaded_at
|
||||||
|
options:
|
||||||
|
uploaded_at: publish_date
|
||||||
|
seeders: seeders
|
||||||
|
downloads: downloads
|
||||||
|
- name: multilang
|
||||||
|
type: checkbox
|
||||||
|
label: Replace MULTi by another language in release name
|
||||||
|
default: false
|
||||||
|
- name: multilanguage
|
||||||
|
type: select
|
||||||
|
label: Replace MULTi by this language
|
||||||
|
default: FRENCH
|
||||||
|
options:
|
||||||
|
FRENCH: FRENCH
|
||||||
|
MULTi.FRENCH: MULTi.FRENCH
|
||||||
|
ENGLISH: ENGLISH
|
||||||
|
MULTi.ENGLISH: MULTi.ENGLISH
|
||||||
|
VOSTFR: VOSTFR
|
||||||
|
MULTi.VOSTFR: MULTi.VOSTFR
|
||||||
|
- name: info_downloads
|
||||||
|
type: info
|
||||||
|
label: About missing Downloads
|
||||||
|
default: "If the torrent has no seeder and no leecher then the torrent file may be missing and download may fail."
|
||||||
|
|
||||||
|
search:
|
||||||
|
paths:
|
||||||
|
- path: torrents
|
||||||
|
response:
|
||||||
|
type: json
|
||||||
|
inputs:
|
||||||
|
$raw: "{{ range .Categories }}&category_id={{.}}{{end}}"
|
||||||
|
q: "{{ .Keywords }}"
|
||||||
|
page: 1
|
||||||
|
per_page: 100
|
||||||
|
order_by: "{{ .Config.sort }}"
|
||||||
|
|
||||||
|
rows:
|
||||||
|
selector: $
|
||||||
|
missingAttributeEqualsNoResults: true
|
||||||
|
|
||||||
|
fields:
|
||||||
|
category:
|
||||||
|
selector: category_id
|
||||||
|
title_normal:
|
||||||
|
selector: title
|
||||||
|
title_multilang:
|
||||||
|
text: "{{ .Result.title_normal }}"
|
||||||
|
filters:
|
||||||
|
- name: re_replace
|
||||||
|
args: ["(?i)[\\.](MULTI(?!.*(?:FRENCH|ENGLISH|VOSTFR)))[\\.]", ".{{ .Config.multilanguage }}."]
|
||||||
|
title:
|
||||||
|
text: "{{ if .Config.multilang }}{{ .Result.title_multilang }}{{ else }}{{ .Result.title_normal }}{{ end }}"
|
||||||
|
_id:
|
||||||
|
selector: id
|
||||||
|
details:
|
||||||
|
text: "torrent/{{ .Result._id }}"
|
||||||
|
download:
|
||||||
|
text: "torrent/{{ .Result._id }}/download?passkey={{ .Config.passkey }}"
|
||||||
|
year:
|
||||||
|
selector: title
|
||||||
|
filters:
|
||||||
|
- name: regexp
|
||||||
|
args: (\b(19|20)\d{2}\b)
|
||||||
|
size:
|
||||||
|
selector: size
|
||||||
|
seeders:
|
||||||
|
selector: seeders
|
||||||
|
leechers:
|
||||||
|
selector: leechers
|
||||||
|
grabs:
|
||||||
|
selector: downloads
|
||||||
|
optional: true
|
||||||
|
default: 0
|
||||||
|
date:
|
||||||
|
# unix
|
||||||
|
selector: uploaded_at
|
||||||
|
downloadvolumefactor:
|
||||||
|
text: 1
|
||||||
|
uploadvolumefactor:
|
||||||
|
text: 1
|
||||||
|
# JSON 1.0.0
|
Loading…
Add table
Reference in a new issue