6.0 KiB
title: slskd created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, downloads, p2p, soulseek, music, headless, csharp, dotnet] confidence: high contested: false sources: [https://selfh.st/apps/?tag=downloads, https://github.com/slskd/slskd]
🎧 slskd
Client Soulseek moderne, headless, avec interface web. Permet de faire tourner un client Soulseek sur un serveur sans interface graphique pour partager et télécharger de la musique (et ebooks) en P2P, comme si vous aviez un client Nicotine+ ouvert 24/7.
| Métadonnée | Valeur |
|---|---|
| Site web | https://slskd.com |
| GitHub | https://github.com/slskd/slskd |
| License | AGPL-3.0 |
| Langage | C# (.NET 8) |
| Étoiles | 147 ⭐ |
| Dernière MAJ | 2025-12 |
| Catégorie | cat-downloads |
Description
Soulseek est l'un des derniers réseaux P2P spécialisés musique encore très actifs : on y trouve de la musique rare, des DJ sets, des enregistrements live, des éditions introuvables, et parfois des ebooks / bandes-son de jeux. Le client de référence historique est Nicotine+ (Python/Qt), graphique uniquement — ce qui pose problème pour un serveur headless.
slskd résout ce problème en étant un client Soulseek complet côté serveur, écrit en C# / .NET 8, qui parle le protocole natif Soulseek et expose toute l'UI dans une interface web moderne (Blazor). On peut ainsi faire tourner un peer Soulseek sur un NAS, un NUC, ou un VPS, et y accéder depuis n'importe où via navigateur. La découverte de fichiers se fait par recherche par mots-clés, navigation par utilisateur (drag-and-drop depuis la liste d'users), et partage de dossiers locaux (téléversement vers les peers qui les demandent, comme Soulseek classique).
Fonctionnalités clés : transfers (download/upload) avec file d'attente persistante, recherche avec auto-complete, browse de la bibliothèque distante d'un user, chats 1:1 et rooms (essentiel sur Soulseek), téléchargements partagés (mécanisme de "wishlist" : on déclare un fichier, slskd intercepte le prochain peer qui le partage et le télécharge automatiquement), intégration Lidarr/Beets possible, et API HTTP pour scripter.
Points forts : interface web réactive, support multi-utilisateurs, AGPL-3.0 (sécurité juridique), intégration *arr possible.
Points faibles : pas d'app mobile native, Soulseek reste un réseau "niche" (communauté bienveillante mais petite), le réseau n'est pas chiffré de bout en bout (voir sécurité).
Installation
Via Docker (recommandé)
# docker-compose.yml
services:
slskd:
image: slskd/slskd:latest
container_name: slskd
restart: unless-stopped
environment:
- TZ=Europe/Paris
- SLSKD_REMOTE_CONFIGURATION=true
- SLSKD_HTTP__PORT=5030
volumes:
- ./config:/app
- /mnt/media/music/incoming:/downloads
- /mnt/media/music/shared:/shared # dossier partagé Soulseek
ports:
- "5030:5030" # UI web
- "50000:50000" # port d'écoute Soulseek
Installation manuelle
.NET 8 SDK. Cloner, dotnet publish -c Release, exécuter le binaire en service systemd. Configuration par fichier slskd.yml ou via variables d'environnement SLSKD__SECTION__KEY.
Configuration
- Définir un username Soulseek unique (le réseau n'aime pas les doublons).
- Dossier partagé : pointer
./sharedvers le dossier que vous voulez exposer aux autres peers (typiquement votre bibliothèque musicale). - Dossier d'incoming :
./downloads→ les fichiers reçus y atterrissent. À lier à Lidarr ou Beets pour tagging automatique. - Recherche partagée ("shared searches") : déclarez un pattern (ex.
*.flacpour un album précis) — slskd surveille le réseau et télécharge dès qu'un peer le partage. - Authentification web : compte admin + optionnellement multi-utilisateurs avec quotas.
- Reverse proxy :
slskd.example.comavec Authelia, et redirection de port 50000 sur la box (NAT/PAT) — sinon vous apparaîtrez en "firewalled" et serez ignoré par beaucoup de peers.
Alternatives
Open source
- Nicotine+ — le client historique, graphique uniquement (GTK/Qt), pas headless
- Museek+ / Nicotine-Plus — autres forks
- Seeker — Rust, embryonnaire
- app-jellyfin + app-lidarr — pour gérer la bibliothèque une fois reçue
- app-beets — pour tagger automatiquement la musique téléchargée
Propriétaires
- Soulseek officiel — pas de client "serveur", obligation d'un poste allumé
- Spotify / Tidal — vastes catalogues mais pas de niche, pas de raretés, pas de DJ sets live
- Bandcamp — modèle d'achat direct, complémentaire
Sécurité
- ⚠️ Réseau Soulseek non chiffré de bout en bout : les requêtes de recherche et le contenu transitent en clair. Ne pas partager de fichiers sensibles via le dossier partagé.
- ⚠️ Username : ne pas réutiliser un identifiant réel. Soulseek est en P2P ouvert, votre IP est visible par les peers.
- ⚠️ Reverse proxy + auth obligatoire si exposition Internet.
- ✅ Isolation réseau : faire tourner slskd sur un VLAN ou derrière un VPN (Tailscale) est une bonne pratique.
- ⚠️ Contenu : le respect du droit d'auteur reste de votre responsabilité — slskd n'est qu'un outil.
- ✅ Sauvegardes :
./config(comptes, wishlists) est petit, à inclure.
Ressources
Pages Liées
- cat-downloads — Catégorie parente
- app-lidarr — Tagging musique (réception)
- app-navidrome — Streaming de la bibliothèque
- app-jellyfin — Media server audio/vidéo
- recettes-docker-compose — Templates Docker
- securisation-home-lab — Bonnes pratiques