# qBHardlink Programme Go lancé automatiquement par qBittorrent à la fin d'un téléchargement. Selon la catégorie du torrent, il crée des hardlinks vers un répertoire de destination configurable — l'équivalent du plugin AutoTools de rTorrent. ## Fonctionnement - Si la catégorie du torrent est présente dans la config, les hardlinks sont créés dans `dest_base//` - Si la catégorie est absente de la config, le programme se termine silencieusement (exit 0) - Les hardlinks préservent l'arborescence originale - Un fichier déjà présent dans la destination est ignoré (skip) **Fichier unique :** ``` /home/rouggy/torrents/qbittorrent/Movies/film.mkv → /home/rouggy/torrents/qbittorrent/Complete/Movies/film.mkv ``` **Dossier :** ``` /home/rouggy/torrents/qbittorrent/Movies/film.name/film.name.mkv → /home/rouggy/torrents/qbittorrent/Complete/Movies/film.name/film.name.mkv ``` ## Installation ```bash go build -o qbhardlink . sudo cp qbhardlink /usr/local/bin/ ``` ## Configuration Le fichier de config est lu depuis `~/.config/qbhardlink/config.yaml` par défaut. ```bash mkdir -p ~/.config/qbhardlink cp config.example.yaml ~/.config/qbhardlink/config.yaml ``` Contenu du fichier : ```yaml # Répertoire de destination pour les hardlinks dest_base: /home/rouggy/torrents/qbittorrent/Complete # Mapping catégorie qBittorrent -> sous-dossier dans dest_base categories: Radarr: Movies Radarr4K: Movies-4K Sonarr: Series Sonarr4K: Series-4K ``` Pour ajouter une catégorie, il suffit d'ajouter une ligne sous `categories:` sans recompiler. ## Intégration qBittorrent Dans qBittorrent : **Options → Avancées → Run on torrent finished** : ``` /usr/local/bin/qbhardlink --name "%N" --category "%L" --content-path "%F" ``` | Paramètre qBittorrent | Flag | Description | |-----------------------|------------------|--------------------------------| | `%N` | `--name` | Nom du torrent (pour les logs) | | `%L` | `--category` | Catégorie (obligatoire) | | `%F` | `--content-path` | Chemin complet du contenu | ## Options ``` --name Nom du torrent (optionnel, utilisé pour les logs) --category Catégorie qBittorrent (obligatoire) --content-path Chemin vers le fichier ou dossier téléchargé (obligatoire) --config Chemin vers le fichier de config (défaut: ~/.config/qbhardlink/config.yaml) ```