Initial vault setup
This commit is contained in:
@@ -0,0 +1,110 @@
|
||||
---
|
||||
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](https://slskd.com) |
|
||||
| **GitHub** | [https://github.com/slskd/slskd](https://github.com/slskd/slskd) |
|
||||
| **License** | AGPL-3.0 |
|
||||
| **Langage** | C# (.NET 8) |
|
||||
| **Étoiles** | 147 ⭐ |
|
||||
| **Dernière MAJ** | 2025-12 |
|
||||
| **Catégorie** | [[cat-downloads\|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é)
|
||||
|
||||
```yaml
|
||||
# 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
|
||||
|
||||
1. Définir un **username Soulseek** unique (le réseau n'aime pas les doublons).
|
||||
2. **Dossier partagé** : pointer `./shared` vers le dossier que vous voulez exposer aux autres peers (typiquement votre bibliothèque musicale).
|
||||
3. **Dossier d'incoming** : `./downloads` → les fichiers reçus y atterrissent. À lier à Lidarr ou Beets pour tagging automatique.
|
||||
4. **Recherche partagée** ("shared searches") : déclarez un pattern (ex. `*.flac` pour un album précis) — slskd surveille le réseau et télécharge dès qu'un peer le partage.
|
||||
5. **Authentification web** : compte admin + optionnellement multi-utilisateurs avec quotas.
|
||||
6. **Reverse proxy** : `slskd.example.com` avec 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
|
||||
- [Site officiel](https://slskd.com)
|
||||
- [Documentation](https://github.com/slskd/slskd/wiki)
|
||||
- [Reddit r/Soulseek](https://www.reddit.com/r/Soulseek/)
|
||||
- [selfh.st — Downloads](https://selfh.st/apps/?tag=downloads)
|
||||
|
||||
## 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
|
||||
Reference in New Issue
Block a user