# đŸŽ” Deezer Downloader for Nextcloud WebDav ## đŸ§© Description Ce projet a pour objectif d’évoluer en une **application Nextcloud**. Pour l’instant, il s’agit d’une **application externe utilasant WEBDAV **. Le projet est basĂ© sur le dĂ©pĂŽt GitHub de [deezer-downloader](https://github.com/kmille/deezer-downloader). Un grand merci aux auteurs pour leur excellent travail ! ## ❓ Pourquoi Je souhaitais intĂ©grer Ă  **Nextcloud** un **raccourci** permettant aux utilisateurs de **tĂ©lĂ©charger leur musique, playlists, albums**, etc., directement depuis **Nextcloud**. Les tĂ©lĂ©chargement sont directement accessible des **Fichiers** de Nextcloud. Vous pouvez aussi choisir un rĂ©pertoire situĂ© dans le dossier de syncronisation de l'application interne **Musique** pour profiter directement du tĂ©lĂ©chargement sur une appli de streaming style subsonic... ## 🔧 Modifications apportĂ©es par rapport au dĂ©pĂŽt original * 🔐 Utilisation du **JWT de Nextcloud** pour obtenir les informations d’identification de l’utilisateur connectĂ©. * 📂 TĂ©lĂ©chargement des fichiers dans le **dossier personnel** de l’utilisateur connectĂ©, dans un rĂ©pertoire créé Ă  la racine : `DeezerDl`. * đŸȘ Utilisation d’un **cookie** pour sauvegarder le rĂ©pertoire de destination choisi par l’utilisateur. * đŸš« VĂ©rification de la **connexion Ă  Nextcloud** : si non connectĂ© → retour **403 Forbidden**. ## Dev sous windows (vsCode): Pour que powershell accepte d'exĂ©cuter des scripts: ``` Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass ``` venv activer avec: ``` .\.venv\Scripts\Activate.ps1 ``` Install: ``` pip install poetry git clone https://github.com/kmille/deezer-downloader.git cd deezer-downloader poetry install poetry run deezer-downloader --show-config-template > settings.ini ``` run du srv en ligne de cmd: ``` poetry run deezer-downloader --config .\deezer_downloader\settings.ini ``` # Installation sur NextCloud (Debian 12) Dans le container nextcloud: ``` adduser nextclouddeezer ``` installer `sudo`, puis taper `visudo`, ajouter en fin de fichier la ligne: ``` nextclouddeezer ALL=(www-data) NOPASSWD: /usr/bin/php ``` cela permet d'executer des command php avec l'utilisateur `nextclouddeezer` Dans le container DeezerDownloader * CrĂ©er le point de montage oĂč son stokĂ© les donnĂ©es Nextcloud. * CrĂ©er un utilisateur `www-data` pour faire tourner le service. * Donner Ă  l'utilisateur `www-data` le meme `uid` user et group que celui de `www-data` du contenair Nextcloud. * `ls -ln /nextcloud_user_data/` * Installer `python` et le `venv` * Installer le site DeezerDownloader * CrĂ©er le service pour qu'il soit autonome * Configurer les settings