Vue normale

Feishin : client et agrégateur de serveurs de musique Navidrome, Jellyfin et Subsonic

Par : Aerya
11 décembre 2025 à 14:45


Je crois que j’ai ENFIN trouvé le lecteur de musique que j’aime !

feishin1

J’ai jamais été consommateur de musique, de qualité lossless du moins (Rikito, si tu me lis), au point d’être un gros membre de WCD et ses successeurs où je ne suis d’ailleurs plus.

Mais en bon geek curieux, j’ai toujours eu un œil sur les solutions d’hébergement/téléchargement/streaming de musique. Je me contente d’ajouter des .torrent à Decypharr/AllDebrid, ne voulant plus stocker directement chez moi (hormis un peu de partage via DecypharsSeed) et ne supportant plus Lidarr (même en hébergeant mon instance pour les métadonnées).


Il m’a cependant été impossible de trouver un lecteur (Web et/ou iOS/Android) qui réponde à mes besoins : beau & moderne, simple, avec recherche par genres, artistes similaires, playlists et paroles notamment. En gros : une copie de Spotify.

J’ai relancé il y a quelques semaines mon Navidrome qui prenait la poussière dans un vieux reste de stack audio auto-hébergée. Après avoir des années utilisé Subsonic et dérivés, Plex ou encore Jellyfin pour jouer un peu de musique, j’étais passé sur Navidrome pour sa modularité et « bonne allure » de serveur de streaming dédié à ce type de médias.
Comme je veux l’utiliser avec Decypharr/AD, j’ajuste les volumes en conséquence :
– /mnt/:/mnt/:rshared
– /mnt/Fichiers/decypharr/qbit/music:/music:ro

Et j’utilise toujours Spotify, en sus de Deezer, pour les métadonnées. Pour le reste des variables d’environnement, tout est expliqué dans la documentation.
Pour cet article je n’ai mis que 3 albums en test.

services:
  navidrome:
    image: deluan/navidrome:latest
    user: 1000:1000
    ports:
      - "4533:4533"
    restart: always
    environment:
      - TZ=Europe/Paris
      - ND_BASEURL=https/audio.domain.tld
      - ND_AGENTS=spotify,deezer
      - ND_DEEZER_ENABLED=true
      - ND_ENABLEDOWNLOADS=false
      - ND_ENABLEEXTERNALSERVICES=false
      - ND_HTTPSECURITYHEADERS_CUSTOMFRAMEOPTIONSVALUE=SAMEORIGIN
      - ND_IGNOREDARTICLES="The El La Los Las Le La Les Os As O A Du"
      - ND_IMAGECACHESIZE=10GB
      - ND_LASTFM_ENABLED=false
      #- ND_LISTENBRAINZ_BASEURL=https://mb.domain.tld
      - ND_LISTENBRAINZ_ENABLED=true
      - ND_RECENTLYADDEDBYMODTIME=true
      - ND_SCANNER_ENABLED=true
      - ND_SCANNER_SCHEDULE="0 * * * *"
      - ND_SCANNER_WATCHERWAIT="10s"
      - ND_SCANNER_ARTISTJOINER= " | "
      - ND_SCANNER_FOLLOWSYMLINKS=true
      - ND_SCANNER_PURGEMISSING=always
      - ND_SEARCHFULLSTRING=true
      - ND_SPOTIFY_ID=xxx
      - ND_SPOTIFY_SECRET=xxx
      - ND_SUBSONIC_ARTISTPARTICIPATIONS=true
    volumes:
      - /mnt/:/mnt/:rshared
      - /mnt/Docker/navidrome:/data
      - /mnt/Fichiers/decypharr/qbit/music:/music:ro


feishin4

Mais il me manquait encore surtout un tri par genres et… une WebUI plus moderne.


Je suis tombé sur Feishin qui est à la fois un client (desktop/Web) de streaming pour Navidrome, Jellyfin et Subsonic et un agrégateur de serveurs puisqu’on peut en ajouter plusieurs. On peut donc imaginer un partage de serveurs de musique Jellyfin entre amis.

feishin14
feishin6
feishin74

Gavé d’options !

feishin8
feishin9
feishin10
feishin11


Attention, c’est avant-tout un client desktop (tous OS) et donc ne propose pas de système d’authentification. Ce qui fait que lorsque comme moi on l’installe en Docker pour en profiter hors LAN (via mon iPhone notamment), il faut ajouter un système d’authentification tel qu’Authelia ou bien « à l’ancienne », via Nginx proxy Manager dans mon cas :

Sur une machine Linux (ou dans un Docker), installer de quoi créer le mot de passe encoder à filer ensuite à NPM.

sudo apt install apache2-utils


Puis, créer un fichier htpasswd avec un utilisateur et un mot de passe dans un dossier auquel accède NPM

root@StreamBox:/home/aerya/docker/npm/data# htpasswd -c htpasswd aerya
New password:
Re-type new password:
Adding password for user aerya


Et on peut alors passer ça en paramètre dans NPM pour avoir le fameux pop-up d’identification quand on va sur l’URL concernée

feishin12

Comme j’ai déjà Navidrome qui tourne sur https://audio.domain.tld, je mets Feishin sur https://music.domain.tld

feishin13

Et le compose de Navidrome est très léger vu que ce n’est qu’une interface pour un autre outil

services:
    feishin:
        container_name: feishin
        image: 'ghcr.io/jeffvli/feishin:latest'
        environment:
            - SERVER_NAME=Musique
            - SERVER_LOCK=false
            - SERVER_TYPE=navidrome
            - SERVER_URL=https://audio.domain.tld
            - TZ=Europe/Paris
        ports:
            - 9180:9180
        restart: always

À la 1ère connexion il faut ajouter ton serveur. Il propose par défaut celui configuré dans le compose du dessus

feishin2
feishin3


Sur AndroidTV, j’utilise Symfonium de Tolriq, que j’ai bien connu dans une autre vie. Application payante (onetime 7-10€ selon frais) mais qui vaut le coup, jetez un œil à sa présentation sur le PlayStore.


Et sur iPhone, j’avais Amperfy et suis passé depuis peu sur Arpeggi, qui est en TestFlight (et closed source hélas…).

feishin15
feishin16
feishin17
feishin18

Loading

TrueNAS CE : le gestionnaire de stockage basique et simple

Par : Aerya
9 décembre 2025 à 08:38


J’ai migré mon LincStation N1 d’UNRAiD à TrueNAS CE (ex TrueNAS Scale, ex FreeNAS), que je redécouvre avec grand plaisir.

EDIT : on peut passer l’interface en français dans les options, tout comme on peut choisir son shell (zsh de base, je suis repassé en Bash)
EDIT2 : oui, mon titre est réducteur.

Très longtemps utilisateur de ProxMox, depuis l’avènement de Docker je me servais de moins en moins les VM/CT. Après l’avoir utilisé avec Docker (directement sur l’hôte), j’ai ensuite bifurqué sur du 100% Linux sans interface chez moi avec Debian, Ubuntu et ArchLinux. Ce dernier n’étant pas le plus stable pour un serveur, vu le principe de rolling release, il faut être à l’aise avec Arch dans ce contexte.


Trouvant OpenMediaVault inadapté à mes besoins, Xpenology (comme un hackintosh mais pour DSM de Synology) encore moins pour un serveur de prod, j’avais fait un passage par TrueNAS Scale à l’époque mais le trouvais là encore trop peu pratique dans mon cas (manquant de simplicité). En me rapprochant de SuperBoki, je m’étais acheté une licence Pro à vie d’UNRAiD puis un LincStation N1 à l’occasion de sa promotion sur le site d’UNRAiD. Petit serveur, aussi bien physiquement qu’en terme de ressources, ce petit NAS basse consommation répond toujours très bien à mes besoins (hors post sur Usenet, le pauvre CPU ayant morflé quelques fois…).

Au fil du temps, j’allais surtout sur UNRAiD pour parcourir le magasin d’applications et faire quelques découvertes, UNRAiD étant très populaire chez les hoarders et dans l’univers de l’auto-hébergement lié au P2P and co. Mais je n’y allais que pour ça. Au final, UNRAiD ne me servait qu’à avoir une gestion simplifiée et très user-friendly du stockage.
Je gérais, quasi depuis le début, mes Dockers comme j’aime, donc pas via UNRAiD : en console, via Dockge voire Portainer ou plus récemment Arcane. Des outils qui, à mon sens, ne dépendant pas de l’OS, permettent une plus grande liberté d’actions, manipulations et migrations entre machines (j’en ai actuellement 3 au garage).
Et en plus quand un truc tourne rond, je suis de ceux qui ne sont pas contents, je pense que c’est le lot des bidouilleurs.

truenas1

J’ai récemment remisé dans un tiroir ma clé USB UNRAiD et décidé passer ce petit NAS sous TrueNAS CE, l’évolution de Scale (donc la version gratuite). Mon but cette fois-ci était précis : trouver un gestionnaire de stockage simple et efficace, qui me laisse beaucoup de liberté de gestion tout en me permettant de gérer mon stockage de manière très intuitive (autrement qu’en console via mdadm).

Je ne vais pas présenter l’OS vu que je ne m’y suis pas vraiment attardé autrement que pour la gestion des disques et partages. Il permet de créer VM, CT et mettre en place des Dockers. Il propose, comme UNRAiD mais bien moins fourni, un magasin d’applications (environ 300 pour l’instant, rien de comparable à UNRAiD donc et logiquement orientées pro/services plus que P2P etc).

J’utilise ZFS pour créer mes pools (des VDEVs) de stockage.
Docker, RAID1 de 2 NVMe de 250Go. Ne remplace pas une sauvegarde régulière mais me permet la perte d’un disque pour reconstruire le RAID sans perdre les données.

truenas2

Fichiers, en stripped (RAID0) de 2 SSD de 2To. Si un disque meurt, tout le pool est irrécupérable. Dédié à BitTorrent etc, que des données que je peux perdre.

truenas3

Usenet, composé d’un seul disque NVMe d’1To. Parce que je ne savais vraiment pas quoi en faire… Il pourrait me servir à faire un peu de DL/Post pour Usenet.

truenas4

Il me reste encore un disque d’inutilisé. Si je décide de remettre Plex/Jellyfin, il pourrait servir de cache.
J’ai pas utilisé de chiffrement, il n’y a aucun service confidentiel dessus et en plus c’est stocké chez moi.

truenas5

Je fais des backups de mes Dockers à l’ancienne via un script Bash pour l’instant (oui je sais, on arrive en 2026). Il va falloir que je me penche sur les options intégrées à TruenAS !

truenas6

J’aime la gestion simplifiée des services

truenas7

Idem pour les partages. On voit d’ailleurs que j’ai fait en sorte de pouvoir monter Fichiers sur mon Windows de jeu, vu que j’ai le temps de jouer en ce moment (…) pour récupérer mes jeux téléchargés.

truenas8

Là encore, la gestion des utilisateurs est étonnante de simplicité et pourtant très complète

truenas9
truenas10

Je redécouvre cet OS avec grand plaisir, notamment avec le recul que j’ai pris à écrire cet article. Je le trouve bluffant de simplicité sans pour autant faire de concession sur la sécurité ou les options. Même si j’ai conscience de ne pas l’exploiter, j’ai enfin trouvé un OS qui répond à mes besoins du moment, se configure en 8 minutes et me laisse libre de l’utiliser comme bon me semble.

On peut gérer cron et systemd via ses options également.

Ravi d’avoir retenté l’expérience TrueNAS 🙂

Loading

IBM rachète Confluent pour 11 milliards $

8 décembre 2025 à 14:13

Avec l’acquisition de Confluent pour une valeur de 11 milliards $, IBM réalise l’une de ses plus importantes opérations depuis le rachat de Red Hat en 2019.

Cette transaction permet au groupe d’Armonk de s’emparer d’une technologie devenue stratégique : le traitement de données massives en temps réel, indispensable au fonctionnement des applications d’intelligence artificielle les plus avancées.

Avec cette acquisition, IBM entend créer une plateforme de données intelligente spécialement conçue pour l’IA d’entreprise, capable de connecter et faire circuler les informations entre environnements, applications et interfaces de programmation.

Confluent : un acteur clé du streaming de données

Basée à Mountain View en Californie, Confluent s’est imposée comme un pionnier du streaming de données en temps réel, une technologie devenue cruciale pour alimenter les applications d’intelligence artificielle. La plateforme, construite sur Apache Kafka, permet aux entreprises de connecter, traiter et gérer des flux massifs de données instantanément, éliminant les silos inhérents aux systèmes d’IA agentique.

La société compte plus de 6 500 clients à travers le monde, dont plus de 40% des entreprises du Fortune 500. Michelin utilise ainsi sa plateforme pour optimiser en temps réel ses stocks de matières premières et semi-finies. Instacart a déployé la technologie pour développer des systèmes de détection de fraude et améliorer la visibilité des produits disponibles sur sa plateforme de livraison.

Une stratégie d’acquisitions assumée

Pour Arvind Krishna, PDG d’IBM depuis 2020, cette transaction s’inscrit dans une politique volontariste de croissance externe visant à positionner le groupe sur les segments à forte croissance et marges élevées du logiciel et du cloud.

Cette acquisition fait suite au rachat d’HashiCorp pour 6,4 milliards $ en avril 2024 et, surtout, à l’opération Red Hat de 34 milliards $ en 2019, considérée par les analystes comme le catalyseur central de la transformation cloud d’IBM.

Le timing de l’opération  n’est pas anodin. Selon IDC, plus d’un milliard de nouvelles applications logiques devraient émerger d’ici 2028, remodelant les architectures technologiques dans tous les secteurs. Le marché adressable de Confluent a doublé en quatre ans, passant de 50 milliards $ à 100 milliards en 2025.

Des synergies attendues

Les deux entreprises collaboraient déjà depuis cinq ans dans le cadre d’un partenariat permettant à certains clients d’IBM d’utiliser la plateforme de Confluent. L’intégration devrait permettre de créer des synergies substantielles à travers l’ensemble du portefeuille d’IBM, notamment dans l’IA, l’automatisation, les données et le conseil.

Les principaux actionnaires de Confluent, détenant collectivement environ 62% des droits de vote, ont conclu un accord de vote avec IBM, s’engageant à soutenir la transaction et à s’opposer à toute opération alternative. En cas d’échec ou de résiliation de l’accord, IBM devra verser à Confluent une indemnité de rupture de 453,6 millions $.

IBM a financé l’opération avec sa trésorerie disponible. La transaction, soumise à l’approbation des actionnaires de Confluent et aux autorisations réglementaires, devrait se finaliser d’ici la mi-2026.

The post IBM rachète Confluent pour 11 milliards $ appeared first on Silicon.fr.

Héberger son simili YGGapi : Ygégé

Par : Aerya
6 décembre 2025 à 06:52


Je pense que YGGapi n’est plus à présenter, enfin pour ceux qui s’intéressent un minimum au P2P/streaming, et on sait que son principal intérêt est aussi son principal défaut : la non-publication du code source.

Code non publié = impossibilité pour YGG de patcher/bloquer/freiner son utilisation. Code non publié = peur de certains de se faire usurper leur passkey (passkey de YGG… mouahahahahahah. Pardon.)

Bref, c’est là que UwUDev intervient en proposant Ygégé qui est, en un peu différent, un YGGapi à auto-héberger. Compatible avec Jackett et Prowlarr.

  • Résolution automatique du domaine actuel de YGG Torrent
  • Bypass Cloudflare automatisé (sans résolution manuelle)
  • Recherche quasi instantanée
  • Reconnexion transparente aux sessions expirées
  • Caching des sessions
  • Contournement des DNS menteurs
  • Consommation mémoire faible (14.7Mo en mode release sur Linux)
  • Recherche de torrents très modulaire (par nom, seed, leech, commentaires, date de publication, etc.)
  • Recuperation des informations complémentaires sur les torrents (description, taille, nombre de seeders, leechers, etc.)
  • Pas de dépendances externes
  • Pas de drivers de navigateur

Documentation pour Docker et TMDB. J’ai pas constaté de différence flagrante vs l’utilisation de YGG dans Prowlarr via Flaresolver/Byparr mais on peut penser que ça viendra.

Voici mon installation via VPN. Parce que oui, c’est un accès à un site au contenu illicite, donc ça se fait via VPN comme pour tout ce genre de contenu (#mode vieux schnock, je sais).

services:
  gluetun-airvpn:
    image: qmcgaw/gluetun:latest
    container_name: gluetun-airvpn
    restart: always
    cap_add:
      - NET_ADMIN
    devices:
      - /dev/net/tun:/dev/net/tun
    ports:
      - 8887:8887 # proxy
      - 8081:8081 # metube
      - 51820:51820 # qbittorrentvpn1
      - 936:936 # qbittorrentvpn1
      - 8715:8715 # ygege
      - 9696:9696 # Prowlarr
      - 5076:5076 # nzbHydra
    environment:
      VPN_SERVICE_PROVIDER: airvpn
      VPN_TYPE: wireguard
      WIREGUARD_PRIVATE_KEY: xxx
      WIREGUARD_PRESHARED_KEY: xxx
      WIREGUARD_ADDRESSES: xxx
      SERVER_COUNTRIES: Netherlands
      DNS_ADDRESS: 192.168.0.64
      HTTPPROXY: on
      HTTPPROXY_LOG: off
      HTTPPROXY_LISTENING_ADDRESS: 0.0.0.0:8887
      HTTPPROXY_USER: 
      HTTPPROXY_PASSWORD: 
      HTTPPROXY_STEALTH: on
      FIREWALL_VPN_INPUT_PORTS: 19975
      FIREWALL_OUTBOUND_SUBNETS: 192.168.0.0/24
      TZ: Europe/Paris
    volumes:
      - /mnt/Docker/gluetun/airvpn:/gluetun

  ygege:
    image: uwucode/ygege:latest
    container_name: ygege
    restart: always
    network_mode: "container:gluetun-airvpn"
    environment:
      YGG_USERNAME: xxx
      YGG_PASSWORD: "xxx"
      BIND_IP: 0.0.0.0
      BIND_PORT: 8715
      LOG_LEVEL: debug
      TMDB_TOKEN: xxx
    volumes:
      - /mnt/Docker/ygege/:/app/sessions

ygege1

Et ça s’intègre à Prowlarr comme d’habitude via une Custom Definition. Faut penser à changer l’URL d’accès si comme chez moi c’est hébergé sur une autre machine.

ygege2

On relance Prowlarr et on peut l’ajouter

ygege3

On sélectionne la bonne URL et ça roule

ygege4

Simple et très rapide, c’est un plaisir.

ygege5

Loading

❌