Initial vault setup
This commit is contained in:
@@ -0,0 +1,125 @@
|
||||
---
|
||||
title: Recyclarr
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, downloads, arr, sonarr, radarr, trash-guides, automation, go, quality-profiles]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=downloads, https://github.com/recyclarr/recyclarr]
|
||||
---
|
||||
|
||||
# ♻️ Recyclarr
|
||||
|
||||
> **Synchronise automatiquement les profils de qualité, custom formats et score releases de Sonarr/Radarr/Lidarr/Readarr** depuis les [TRaSH Guides](https://trash-guides.info) — la référence communautaire. Fini le copier-coller de 200 lignes de custom formats : Recyclarr le fait pour vous, et le refait à chaque release des guides.
|
||||
|
||||
| Métadonnée | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | [https://recyclarr.dev](https://recyclarr.dev) |
|
||||
| **GitHub** | [https://github.com/recyclarr/recyclarr](https://github.com/recyclarr/recyclarr) |
|
||||
| **License** | MIT |
|
||||
| **Langage** | Go |
|
||||
| **Étoiles** | 34 ⭐ |
|
||||
| **Dernière MAJ** | 2025-12 |
|
||||
| **Catégorie** | [[cat-downloads\|Downloads]] |
|
||||
|
||||
## Description
|
||||
|
||||
Les [TRaSH Guides](https://trash-guides.info) sont devenus **la référence incontournable** pour configurer correctement Sonarr/Radarr : ils recommandent des **profils de qualité précis**, des **custom formats** (règles de scoring pour Atmos, HDR10+, DV, x265, etc.) et des **filtres de release** qui font la différence entre une médiathèque propre et un cimetière de doublons. Mais suivre les guides "à la main" est fastidieux : **plusieurs centaines de custom formats** à créer un par un, scoring à régler au millimètre, et **les guides évoluent toutes les semaines**.
|
||||
|
||||
**Recyclarr** automatise tout ça. On déclare dans un fichier YAML `recyclarr.yml` les **profils Sonarr/Radarr/Lidarr/Readarr** qu'on veut, et on précise pour chacun quel **"TRaSH Guide Profile"** appliquer (ex. "HD-1080p", "4K", "Anime"). Recyclarr :
|
||||
1. **Télécharge** la dernière version des TRaSH Guides depuis le repo Git.
|
||||
2. **Compare** avec l'état actuel de l'instance \*arr.
|
||||
3. **Crée/met à jour** les custom formats, profiles, quality definitions, et release profiles.
|
||||
4. **Affiche un diff** clair de ce qu'il a modifié.
|
||||
5. **Idempotent** : relancer = aucune modification si rien n'a changé.
|
||||
|
||||
Le résultat : un **Sonarr/Radarr configuré "comme la communauté"** en 5 minutes, et qui **reste à jour automatiquement** quand les TRaSH Guides évoluent. Recyclarr supporte aussi la **synchronisation des Release Profiles** (regex, must-contain, must-not-contain) et la gestion des **Quality Definitions** (tailles de palier par qualité).
|
||||
|
||||
**Points forts** : **MIT**, **binaire Go** (1 seul exécutable, ultra-léger), **CLI-first** (parfait pour cron), maintient la qualité de la médiathèque à jour sans effort.
|
||||
|
||||
**Points faibles** : pas d'UI web (CLI/headless), **dépendant des TRaSH Guides** (si le projet ralentit, Recyclarr perd sa raison d'être), pas de support natif de Whisparr/Eros (encore en bêta).
|
||||
|
||||
## Installation
|
||||
|
||||
### Via Docker (recommandé)
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
services:
|
||||
recyclarr:
|
||||
image: ghcr.io/recyclarr/recyclarr:latest
|
||||
container_name: recyclarr
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- TZ=Europe/Paris
|
||||
volumes:
|
||||
- ./config:/config
|
||||
# Pas de port exposé : CLI only
|
||||
```
|
||||
|
||||
Exemple de `config/recyclarr.yml` minimal :
|
||||
```yaml
|
||||
sonarr:
|
||||
base_url: http://sonarr:8989
|
||||
api_key: xxxxxxxxxxxxxxxxxxxxxxxx
|
||||
delete_old_custom_formats: true
|
||||
quality_profiles:
|
||||
- name: HD-1080p
|
||||
trash_id: hd-1080p
|
||||
```
|
||||
|
||||
### Installation manuelle
|
||||
|
||||
Binaire Go sur [GitHub Releases](https://github.com/recyclarr/recyclarr/releases) (Linux/macOS/Windows, x86/ARM). `chmod +x recyclarr`, lancer `./recyclarr sync`. Cron recommandé :
|
||||
```cron
|
||||
0 4 * * * /usr/local/bin/recyclarr sync >> /var/log/recyclarr.log 2>&1
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
1. **API keys** : dans Sonarr/Radarr, `Settings → General → API Key`.
|
||||
2. **Fichier YAML** : un seul `recyclarr.yml` à la racine de `./config`, structure `sonarr:` / `radarr:` / `lidarr:` / `readarr:`.
|
||||
3. **trash_id** : copier depuis [cette liste](https://trash-guides.info/Radarr/quality-profiles/) — le projet recycle les noms canoniques.
|
||||
4. **delete_old_custom_formats: true** : recommandé pour éviter l'accumulation de CFs obsolètes.
|
||||
5. **Cron quotidien** : `0 4 * * *` (4h du matin, après le passage des TRaSH Guides).
|
||||
6. **Logs** : rediriger vers un fichier, superviser via [[app-grafana]] / [[app-loki]] / [[app-prometheus]].
|
||||
7. **Pas de reverse-proxy** : CLI/headless, on s'y connecte via SSH.
|
||||
|
||||
## Alternatives
|
||||
|
||||
### Open source
|
||||
- **TRaSH Guides "à la main"** — la base de Recyclarr, mais à faire manuellement. Recyclarr n'est qu'un wrapper qui les applique.
|
||||
- [[app-sonarr]] / [[app-radarr]] / [[app-lidarr]] / [[app-readarr]] — les **consommateurs** de la config Recyclarr.
|
||||
- [[app-prowlarr]] — agrégateur d'indexers, complémentaire.
|
||||
- [[app-autobrr]] — capture IRC, complémentaire.
|
||||
- **Notifiarr** — notifications Discord/Discord, complémentaire.
|
||||
|
||||
### Propriétaires
|
||||
- **Profil Quality "Default" Sonarr** — conservateur, peu optimisé, ne suit pas l'évolution des formats (Atmos, AV1, etc.).
|
||||
- **SickRage / CouchPotato** — forks historiques sans communauté de guides.
|
||||
- **Synology Download Station** — propriétaire Synology, sans qualité communautaire.
|
||||
|
||||
## Sécurité
|
||||
|
||||
- ✅ **Aucune exposition réseau** : Recyclarr parle en **sortant** vers l'API \*arr (HTTP/HTTPS local), surface d'attaque nulle.
|
||||
- ⚠️ **API keys \*arr** : stockées en clair dans `recyclarr.yml` — **chmod 600** et **ne pas versionner dans Git public**.
|
||||
- ✅ **Pas de credentials distants** : Recyclarr ne parle qu'à votre \*arr local + lit le repo Git public des TRaSH Guides.
|
||||
- ✅ **Idempotent** : une erreur d'exécution ne corrompt pas la config \*arr, Recyclarr est read-mostly (sauf `delete_old_custom_formats`).
|
||||
- ⚠️ **Suppression de custom formats** : `delete_old_custom_formats: true` supprime les CFs non référencés par un profile synchronisé — **vérifier qu'aucun profile "manuel" n'utilise un CF que vous voulez garder**.
|
||||
- ✅ **Sauvegardes** : `recyclarr.yml` est minuscule, à inclure dans le backup de `./config`.
|
||||
|
||||
## Ressources
|
||||
- [Site officiel](https://recyclarr.dev)
|
||||
- [Documentation](https://recyclarr.dev/wiki)
|
||||
- [TRaSH Guides](https://trash-guides.info) — La source de vérité
|
||||
- [GitHub](https://github.com/recyclarr/recyclarr)
|
||||
- [selfh.st — Downloads](https://selfh.st/apps/?tag=downloads)
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-downloads]] — Catégorie parente
|
||||
- [[app-sonarr]] / [[app-radarr]] / [[app-lidarr]] / [[app-readarr]] — Consommateurs
|
||||
- [[app-prowlarr]] — Agrégateur d'indexers
|
||||
- [[app-nzbget]] / [[app-sabnzbd]] — Backends Usenet
|
||||
- [[recettes-docker-compose]] — Templates Docker
|
||||
- [[securisation-home-lab]] — Bonnes pratiques
|
||||
Reference in New Issue
Block a user