La Brocante du Web 2025#38
Voici la sélection d'articles, projets et vidéos repérés cette semaine.
Thomas de la chaine Cocadmin nous propose une visite du datacenter OVHcloud de Montréal.
Alors oui c'est une collab, mais ça n'enlève rien au fait qu'on puisse jeter un œil sur les baies et le système de refroidissement d'OVH avec la bonne humeur de Thomas :
Merci à Thomas pour cette immersion hardware !
Vous n'aimez pas le RSS : abonnez-vous par emailArticle original écrit par Mr Xhark publié sur Blogmotion le 21/09/2025 |
Pas de commentaire |
Attention : l'intégralité de ce billet est protégée par la licence Creative Commons
Les modes de déplacement en zone urbaine sont en pleine mutation, ce qui crée fatalement de nouvelles frictions entre usagers, chacun se sentant plus vulnérable que les autres — piétons, cyclistes ou adeptes d’engins électriques à une ou deux roues. Les villes rivalisent d’ingéniosité pour les complaire — sans pour autant ébranler radicalement la domination de la voiture individuelle.
Le 3 juin, une manifestation un peu particulière s’est déroulée dans le centre-ville de Dijon. Une petite centaine de cyclistes, vélos en main et marchant au pas, ont déambulé rue de la Liberté, principale artère commerçante de la ville, pour protester contre un arrêté municipal. « Des pistes, pas des interdictions ! » pouvait-on lire sur une pancarte : la mairie venait tout juste d’interdire cet axe aux vélos de 11h30 à 20h. « Cela n’a pas du tout été concerté », explique à Reflets Sylvain Nocquard, président de l’association Ensemble à vélo (EVAD), affiliée à la fédération nationale (FUB). « On a été reçu par la mairie un peu avant, mais pour nous informer, pas pour en discuter au préalable ». Le collectif Piétons dans la métropole dijonnaise a critiqué aussi le calendrier et la méthode » de cette interdiction municipale.

Même si les cyclistes, partout en France, ont de plus en plus de poids dans les décisions d’aménagement urbain (dû aux usages en hausse des trajets domicile-travail à vélo), la municipalité dijonnaise semble avoir été plus sensible aux arguments des commerçants qu’à la tranquillité des piétons. Une telle décision a déclenché les mêmes grincements à Lille à l’automne 2023 (10h-23h dans plusieurs rues piétonnes du centre historique). Le manque de concertation a également été mis en avant par les associations lilloises...
Script à ajouter dans l'extension Actions & Tags de Zotero permettant de supprimer les marqueurs tout en conservant certains d'entre eux
Astuce : en commentant les 2 lignes qui affichent une fenêtre pendant la suppression, cela évite de devoir cliquer des centaines, voire des milliers de fois sur OK.
// Delete tags, based on Replace tags
// This script removes all tags from the specified Zotero items, except those in the ignore list.
// add tags you wish to keep to `ignoreTags` list, the list is prefilled with two examples
(async () => {
const ignoreTags = ['#GoldSet', '#ClinicalTrials.gov', '#Cochrane Central', '#Embase', '#Medline', '#Proquest', '#Web of Science', '#WHO ICTRP'];
// ^^^^^ Add tag names here to ignore. ^^^^^^^
// Initialize `targetItems` to the array of `items`, or if `items` is undefined,
// use the single `item` wrapped in an array. If neither exists, default to an empty array.
let targetItems = items || (item ? [item] : []);
// Show an alert message
// await Zotero.alert(null, "Delete all tags except ignored ones");
// Iterate over each item in the `targetItems` array.
for (const currentItem of targetItems) {
// Retrieve all tags associated with the current item.
// Use `.getTags()` to get tag objects, and map to their `tag` property to get tag names.
const tags = currentItem.getTags().map(tag => tag.tag);
// Iterate over each tag in the list of tag names.
for (const tag of tags) {
// Check if the tag is in the ignore list.
if (ignoreTags.includes(tag)) {
// Alert the user that the tag is being skipped.
// await Zotero.alert(null, `Tag "${tag}" is in the ignore list and will not be deleted.`);
continue;
}
// Remove the tag from the current item using `.removeTag()`.
await currentItem.removeTag(tag);
}
}
// The script finishes here.
})(); Une ancienne version de Decypahrr permet de l’utiliser avec Usenet. Non maintenue, je ne recommande pas de s’en servir pour BitTorrent.
J’ai testé sur une petite machine et ça marche mais ça consomme 100% de mon CPU en cas de transcodage couplé au téléchargement sur Usenet. Mais c’est fonctionnel avec les .nzb compatibles (pas de mot de passe, par d’archive).
À l’époque j’avais Usenet-Drive ou encore nzbDAV sur un serveur plus robuste et ça passait très bien même en avance rapide.
Nous sommes dans le cas d’un montage de .nzb « streamable », il n’y a donc aucun debrideur à ajouter.
Le compose que j’utilise build le Dockerfile puisqu’il n’y a pas d’image de publiée et s’occupe du montage rClone du WebDav, celui-ci n’étant pas inclus dans l’interface.
Il faut au préalable avec sa config rClone, qu’on peut créer à la main dans rclone.conf :
[decypharr-usenet]
type = webdav
url = http://192.168.0.163:2828/webdav/usenet
vendor = other
user = ""
pass = ""
URL : l’IP et le port de la WebUI de Decypharr tel qu’indiqué dans le compose
Ici je n’utilise pas de user:pwd pour l’accès à la WebUI de Decypharr. Si vous voulez le faire, il faut y mettre un pwd chiffré :
rclone obscure mon-mot-de-passe
Et donc mon compose
services:
decypharr-usenet:
image: decypharr:usenet
container_name: decypharr-usenet
build:
context: https://github.com/sirrobot01/decypharr.git#usenet
dockerfile: Dockerfile
restart: always
cap_add:
- SYS_ADMIN
security_opt:
- apparmor:unconfined
ports:
- 2828:8282
volumes:
- /mnt/decypharr-usenet:/mnt/decypharr-usenet:rshared
- /home/aerya/docker/decypharr-usenet/configs/:/app
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Paris
devices:
- /dev/fuse:/dev/fuse:rwm
rclone-mount:
image: ghcr.io/rclone/rclone:latest
container_name: decypharr-usenet-rclone
depends_on:
- decypharr-usenet
devices:
- /dev/fuse
cap_add:
- SYS_ADMIN
security_opt:
- apparmor=unconfined
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Paris
volumes:
- /home/aerya/docker/decypharr-usenet/config/rclone:/config/rclone
- /mnt/decypharr-usenet:/mnt/decypharr-usenet:rshared
- /mnt/:/mnt/
ports:
- 5575:5575
restart: always
command:
- mount
- "decypharr-usenet:"
- /mnt/decypharr-usenet
- --config=/config/rclone/rclone.conf
- --log-file=/config/rclone/rclone.log
- --async-read=true
- --allow-non-empty
- --no-modtime
- --allow-other
- --rc
- --rc-no-auth
- --rc-addr=0.0.0.0:5575
- --cache-dir=/mnt/Data/rCloneCache
- --vfs-cache-mode=full
- --vfs-cache-max-age=1h
- --vfs-cache-max-size=50G
- --dir-cache-time=5m
- --vfs-cache-poll-interval=1m
- --vfs-read-chunk-size=128m
- --vfs-read-chunk-size-limit=128m
- --vfs-read-ahead=256k
- --buffer-size=10m
- --umask=002
networks: {}
Je pense que les paramètres de montage de rClone peuvent s’optimiser. Pour l’instant je ne fais pas plus de tests.
La configuration de Decypharr est simple : ajouter un indexeur Usenet et les chemins de téléchargement (le WebDAV)



Une fois Decypharr configuré et le tout relancé, j’ai bien mon montage
root@StreamBox:/mnt# df -H
Filesystem Size Used Avail Use% Mounted on
tmpfs 824M 4.3M 819M 1% /run
/dev/sdb2 251G 183G 56G 77% /
tmpfs 4.2G 0 4.2G 0% /dev/shm
tmpfs 5.3M 8.2k 5.3M 1% /run/lock
/dev/sda1 472G 108G 341G 25% /mnt/Data
tmpfs 824M 115k 823M 1% /run/user/1000
decypharr-alldebrid 1.2P 0 1.2P 0% /mnt/decypharr/alldebrid
decypharr-usenet: 1.2P 0 1.2P 0% /mnt/decypharr-usenet
Avec les contenus de tests
root@StreamBox:/mnt# tree decypharr-usenet/
decypharr-usenet/
├── __all__
│ ├── 28.Years.Later.2025.MULTi.VFQ.Hybrid.2160p.UHD.BluRay.REMUX.CUSTOM.DV.HDR10Plus.HEVC.TrueHD.7.1.Atmos-ONLY
│ │ └── bd7925555a625f9db23d7ddf2ae4cfe64fc8c250d5d308.mkv
│ ├── Barbie.2023.MULTi.VF2.HDR.DV.2160p.WEB.x265-FW
│ │ └── daec752aec35c12cca5178469508afb58b7dbebfb93ef6e139cf.mkv
│ ├── Demolition.2015.MULTi.TRUEFRENCH.1080p.BluRay.REMUX.AVC.AC3.DTS.HDMA.5.1-PATOMiEL
│ │ └── lHWf3M0BMGkf.mkv
│ ├── Final.Destination.Bloodlines.2025.MULTi.TRUEFRENCH.1080p.BluRay.x264-Ulysse
│ │ └── ee3d99f582465188bdb26588adcd67846f9e410d2a128fc072b9596f0b035e.mkv
│ ├── Superman.2025.MULTi.VFQ.2160p.Bluray.REMUX.DV.HDR10.HEVC-BDHD
│ │ └── 6641c6843c54ea19333837ac52c889d991363f2303.mkv
│ ├── The.Electric.State.2025.MULTi.HDR.2160p.WEB.H265-LOST
│ │ └── 32f2be574e0ef3edaf3e547771d04a003129.mkv
│ └── V.H.S.Viral.2014.MULTi.1080p.WEB.H264-SUPPLY
│ └── 5c27f2c7ca6d9f3d26a749c23a43f0e6cd0470b9fd87.mkv
├── __bad__
└── version.txt
10 directories, 8 files
On peut d’ailleurs, comme pour la version BitTorrent, parcourir le WebDAV depuis Decypharr

Le tout est accessible depuis Jellyfin. Et on peut configurer les *arrs avec ce WebDAV comme expliqué dans mon tutoriel sur Decypahrr « normal ».
Pour ce test j’y suis allé à l’arrache et ai monté directement /mnt/decyphrarr-usenet en médiathèque sous Jellyfin

Sans transcodage, donc qu’avec le téléchargement Usenet, ça passe bien (Jellyfin sous LibreWolf).


En revanche avec un 2160p en transcodage mon serveur ne fait pas le poids


Tout ça pour dire que cette mouture de Decypharr est plus un PoC, certes fonctionnel, qu’un acteur majeur et durable du segment du streaming de .nzbs.
![]()
Il est très simple d’ajouter une image à un fichier PDF. Trois méthodes sont possibles : en passer par un éditeur de fichiers PDF en ligne, par Adobe Acrobat ou encore Aperçu (macOS).
Si votre jean bâille légèrement ou s’il est juste un peu trop large au niveau de la taille, vous pourrez remédier au problème en le reprenant vous-même. Si vous êtes une couturière confirmée, reprenez la ceinture à l’arrière, pour un effet professionnel. Pour un ouvrage plus facile, essayez de rentrer la taille sur les côtés. Si vous n’êtes pas suffisamment compétente ou patiente pour coudre votre jean, vous pourrez tout de même rétrécir la ceinture, sans coudre, en utilisant un élastique.
Les vitres de protection permettent de protéger les écrans des appareils électroniques des fissures. Cependant, si vous ne les appliquez pas correctement, des bulles d'air peuvent se former en dessous. Une fois que vous avez appliqué la vitre de protection, il n'est pas si facile d'éliminer ces bulles, à moins de retirer la vitre puis de la remettre en place. Si les bulles d'air se forment sur le pourtour de l'écran, vous pourrez les éliminer avec de l'huile de cuisson.
Un réseau domestique est très intéressant à plusieurs titres. Grâce au modem qui permet l'accès à Internet et à un routeur qui distribue le signal Internet à tous vos appareils, tout le monde à la maison a accès au réseau mondial. Les liaisons sont assurées par des câbles spécifiques, comme des câbles Ethernet et un câble coaxial. L'établissement de la connexion n'est pas compliqué, il demande juste un peu d'attention.
Les souris sauvages adultes peuvent être porteuses d'hantavirus, de même que les vers de terre, les tiques et les puces. Par conséquent, vous devez toujours les relâcher dans la nature. Il serait cruel de garder une souris sauvage adulte, car ces animaux ne surmontent jamais leur peur des humains, quel que soit le temps qu'ils ont passé en votre compagnie. Toutefois, un souriceau sauvage ne peut pas encore prendre soin de lui-même, donc l'élever à la main est la chose la plus gentille que vous puissiez faire. Un animal élevé de cette façon n'aura pas l'instinct de survie de base, vous devez donc continuer à garder la souris en captivité. Les souriceaux sauvages élevés à la main ont tendance à être fidèles et affectueux envers leurs soignants humains. Ils sont également plus intelligents que les souris domestiques.
TikTok n'accorde des badges de vérification qu'à ses utilisateurs les plus authentiques, populaires et influents. Même si les critères officiels de cette vérification sont tenus secrets, vous pouvez apprendre comment acquérir un public fidèle pour améliorer vos chances d'être couronné [1]. Il ne faut pas confondre ces badges avec la vérification du numéro de téléphone, qui vous permet quant à elle d'avoir accès à des fonctionnalités supplémentaires sur TikTok, y compris l'envoi de messages privés, l'ajout de personnes dans l'onglet trouver mes amis et la possibilité de commenter sur les vidéos et diffusions en direct d'autres utilisateurs.
Apprends à acheter des Robux pour Roblox sur un ordinateur, téléphone ou une tablette. Robux est une monnaie virtuelle qui est utilisée sur la plateforme de jeu Roblox. Tu peux utiliser des Robux pour acquérir des capacités spéciales ou des améliorations pour ton avatar dans les jeux.
Parfois, si vous vous étirez d’une certaine manière, vous pouvez entendre un craquement provenant du sternum. Cela peut être accompagné d’un sentiment de soulagement, surtout si vous avez eu des douleurs musculaires à la poitrine. Il existe même des étirements que vous pouvez faire si vous désirez faire craquer vous-même votre sternum. Même si cela n’est pas plus dangereux que de faire craquer une autre articulation de votre corps, vous devriez consulter un médecin si vous ressentez une douleur persistante au thorax, une sensation de picotement ou une douleur intense à la suite du craquement, car cela pourrait indiquer un problème de santé plus grave.
Vous souhaitez changer la tenue de votre Bitmoji ? Sachez qu’il est possible d’y parvenir sans pour cela devoir passer en revue toutes les coiffures, les morphologies ou les traits de visage proposés.
Savoir si un port spécifique est ouvert ou fermé sur votre connexion ou sur un routeur local peut être une donnée utile pour connaitre les autorisations en cours et savoir quelles applications sont bloquées ou non. La procédure pour vérifier si un port local est ouvert ou fermé varie suivant le système d'exploitation dont vous disposez, elle est toutefois facilement applicable sur Windows ou Mac.
Vous avez fait tomber votre téléphone dans l’eau et voulez le sécher ? Pas de panique ! Il existe plusieurs façons d’y parvenir, sans devoir tremper l’appareil dans un bol de riz. D’ailleurs, le riz n’est pas forcément la substance la plus efficace pour absorber l’humidité d’un téléphone mouillé. Lorsque vous vous retrouvez dans cette situation, il est crucial que vous sortiez l’appareil de l’eau immédiatement et le désassembliez aussi rapidement que possible. Essuyez les composants internes et laissez-les reposer dans une substance absorbante pendant au moins 48 heures. Sachez aussi qu’il ne faut jamais secouer un téléphone mouillé, car vous risqueriez d’aggraver les dégâts.
Organiser une réunion implique de devoir communiquer toutes les informations pertinentes d'une manière claire et précise. Vous devez indiquer la date, le lieu et l'ordre du jour. Il peut être utile aussi d'ajouter quelques indications supplémentaires, par exemple s'il y a lieu d'effectuer des travaux préparatoires ou si des fournitures spéciales sont nécessaires à la réunion. Que vous utilisiez votre messagerie personnelle ou une application comme Outlook, assurez-vous de bien fournir tous les détails nécessaires afin que les personnes convoquées aient accès aux informations basiques relatives à la teneur de la réunion.
Decypharr intègre une option de réparation automatique mais quand on agrège plusieurs sources locales et/ou distantes, il est pratique d’avoir un outil de contrôle de ses bibliothèques.
Checkrr d’aetaric permet de contrôler à intervalles réguliers le contenu des bibliothèques liées à des instances Radarr, Sonarr, Lidarr. Si un fichier manque, l’info est relayé au bon outil qui remet dans la boucle du téléchargement.
Le genre d’outil qui ne consomme rien, ne fait pas de bruit mais peut s’avérer très pratique.
Pour l’installer en Docker il faut auparavant créer la base de données et le fichier de configuration, dans le dossier de son choix. Chez moi c’est /home/aerya/docker/checkrr
touch checkrr.db
touch checkrr.yaml
On peut maintenant remplir le fichier de configuration. Y’a une version longue et une version courte, j’ai fait mon mix avec :
Mes bibliothèques
Les extensions ignorées. C’est là qu’il faut bien regarder ce qu’on, prévoir large, sous peine d’avoir beaucoup de fichier non pris en compte, ça change rien mais ça fait des erreurs et du log pour Checkrr
Mes instances de Radarr et Sonarr
Des notifications Discord en cas de problème/réparation
L’activation de la WebUI
lang: "fr-FR"
checkrr:
checkpath:
- "/media/Films/"
- "/media/Séries/"
database: ./checkrr.db
debug: true
cron: "@daily"
ignorehidden: true
ignorepaths:
- 'media/ignored'
ignoreexts:
- .txt
- .nfo
- .nzb
- .url
- .xml
- .jpg
- .jpeg
- .mp3
arr:
radarr:
process: true
service: radarr
address: "https://radarr.domaine.tld"
apikey: "xxx"
baseurl: /
port: 443
ssl: true
mappings:
"/mnt/Bibliothèques/Films/": "/media/Films/"
sonarr:
process: true
service: sonarr
address: "https://sonarr.domaine.tld"
apikey: "xxx"
baseurl: /
port: 443
ssl: true
mappings:
"/mnt/Bibliothèques/Séries/": "/media/Séries/"
logs:
stdout:
out: stdout
formatter: default
notifications:
discord:
url: "https://canary.discord.com/api/webhooks/xxx"
notificationtypes:
- reacquire
- unknowndetected
- startrun
- endrun
webserver:
port: 8585
baseurl: "/"
Et le compose qui va avec
services:
checkrr:
container_name: checkrr
image: aetaric/checkrr:latest
restart: always
volumes:
- /home/aerya/docker/checkrr/checkrr.yaml:/etc/checkrr.yaml
- /home/aerya/docker/checkrr/checkrr.db:/checkrr.db
- /mnt/Bibliothèques:/media
ports:
- 8585:8585
environment:
- TZ=Europe/Paris
labels:
- com.centurylinklabs.watchtower.enable=true
De cette manière Checkrr tourne 1 fois par jour (minuit) mais on peut également le lancer manuellement via l’interface.

Les logs
+---------------------+---------------+
| Files Checked | 10503 |
| Hash Matches | 0 |
| Hashes Mismatched | 0 |
| Submitted to Sonarr | 0 |
| Submitted to Radarr | 0 |
| Submitted to Lidarr | 0 |
| Video Files | 0 |
| Audio Files | 167 |
| Text or Other Files | 214 |
| Unknown Files | 3 |
| Elapsed Time | 23.253042916s |
J’ai malheureusement, ou heureusement, aucun cas de réparation à montrer en exemple. Je ne manquerai pas d’éditer l’article si ça arrivait.
Pour Heimdall ou autre dashboard, cxtal propose une icône.
![]()
J'ai découvert la chaîne Ypsol au travers d'une vidéo de fabrication d'une jolie matrice LED 7 x 7, imprimée en 3D et utilisant WLED.
Si vous aimez la chaine des Frères Poulain et Abrège alors vous aimerez Ypsol :
Ne vous fiez pas aux moins de 20k abonnés, le contenu est très propre, bien monté et détaillé, rendant le tout très accessible pour les débutants.
Pas convaincu ? voici une autre création :
Sympa non ? ![]()
Article original écrit par Mr Xhark publié sur Blogmotion le 13/09/2025 |
Pas de commentaire |
Attention : l'intégralité de ce billet est protégée par la licence Creative Commons
Je zyeute MediUX depuis très longtemps mais le côté « Faut parcourir le site, télécharger le .zip, l’importer dans mon lecteur, l’appliquer » m’avait clairement rebuté dès les… 52 premières secondes.
L’équipe derrière MediUX propose l’outil Aura, encore en early stage donc on utilise tous une unique clé API de « test », qui permet de parcourir les sets liés à ses bibliothèques via une WebUI.
Ne reste qu’à choisir un set et l’appliquer de suite via un clic ou le prévoir pour une mise à jour automatique en cron. Et on peut en plus lui indiquer de surveiller les MàJ du set sélectionné pour les appliquer.
Si on peut l’intégrer à Kometa, en revanche pour Aphrodite il faut bien veiller à faire mouliner Aura puis ensuite Aphrodite pour les overlays. Comme vous le verrez plus bas, Aura se lance à minuit chaque jour alors qu’Aphrodite est lancé chaque heure. Au pire, il n’y a plus aucun overlay entre minuit et 1h du matin, « pas grave ».
Cet outil se destine aux amateurs de beaux visuels et de personnalisation.
Malgré un maximum d’automatisation, rien ne pourra remplacer l’action de parcourir ses contenus et,
pour chaque, de parcourir à leur tour les embellissements disponibles pour ensuite les appliquer.
Merci TiMac pour la belle découverte !

Compatibilité multi-serveurs : fonctionne avec Plex, Emby et Jellyfin.
Navigation visuelle : prévisualisez les visuels dans une interface claire et organisée.
Mises à jour automatiques : enregistrez les ensembles d’images choisis et gardez-les synchronisés automatiquement.
Stockage local : possibilité d’enregistrer les images à côté de vos fichiers multimédias pour un accès facile.
Support Docker : déploiement simple avec Docker ou docker-compose.
Le docker-compose est à récupérer localement et on peut l’éditer rapidement pour l’adapter
services:
aura:
image: ghcr.io/mediux-team/aura:latest
container_name: aura
restart: always
ports:
- 3064:3000 # Web UI PORT
- 8888:8888 # API PORT
volumes:
- /home/aerya/docker/aura:/config
- /mnt/Bibliothèques/:/data/media
labels:
- com.centurylinklabs.watchtower.enable=true
Avant de le lancer il convient de faire de même avec le fichier de configuration. Son remplissage est déterminant pour le fonctionnement d’Aura. Les paramètres ne sont en effet pour l’instant accessibles qu’en lecture seule via l’interface.
Vous pouvez vous aider de la documentation mais c’est pas compliqué.
Voici le mien pour Jellyfin, avec 2 bibliothèques, SANS authentification (derrière Authelia chez moi), avec notifications Discord. Si vous voulez utiliser un mot de passe, il devra être hashé.
Il faudra une clé API Jellyfin (ou un token Plex) et une clé API (pas le token) TMDB.
Le cron servira pour la MàJ auto (si sélectionnée) des sets, on voit ça plus bas.
# Configuration Sample - aura
# For full documentation, see: https://mediux-team.github.io/AURA/config
# This file should be located in /config on the docker container
# Auth - Configuration for authentication
# This is used to configure the authentication for the application.
# Enable - Whether to enable authentication or not.
# Password - The Argon2id hashed password for the user.
Auth:
Enable: false
Password: $argon2id$v=19$m=12,t=3,p=1$Z3k1YnkwZzh5OTAwMDAwMA$lJDoyKZy1BMifB1Mb2SWFQ
# CacheImages - Whether to cache images or not. Caching images can improve performance but will use more disk space.
CacheImages: true
# SaveImageNextToContent - Whether to save images next to the Media Server content or not.
# If set to true, images will be saved in the same directory as the Media Server content.
# If set to false, images will still be updated on the Media Server but will not be saved next to the content.
# The benefit of this is that you have local images that are not dependent on the Media Server database in case of migration.
# If you are using Emby or Jellyfin, this option being set does not matter. This is determined by Emby or Jellyfin.
# If you are using Plex, this option will determine if the images are saved next to the content or not.
SaveImageNextToContent: false
# Logging - Configuration for logging
# Level - The level of logging. Can be one of: TRACE, DEBUG, INFO, WARNING, ERROR
Logging:
Level: DEBUG
# AutoDownload - Configuration for auto-downloading images
# Enabled - Whether to enable auto-downloading of images or not.
# You have the option when selecting a set to save it to the database.
# This will look for updates to the set and download them automatically.
# Cron - The cron schedule for auto-downloading images. This is a standard cron expression.
# For example, "0 0 * * *" means every day at midnight
AutoDownload:
Enabled: true
Cron: "0 0 * * *"
# Notifications - Configuration for notifications
# Enabled - Whether to enable notifications or not.
# Providers - A list of notification providers to use. Currently supported providers are:
# - Discord
# - Pushover
# You can set multiple providers at the same time. aura will send notifications to all. You also have the option to enable each provider. This gives you flexability to turn off the ones that you don't want to use.
# When provider is Discord, you must set the Webhook URL
# When provider is Pushover, you must set the Token and UserKey
# Sample:
# - Provider: "Pushover"
# Enabled: true
# Pushover:
# Token: your_pushover_token
# UserKey: your_pushover_user_key
# - Provider: "Discord"
# Enabled: true
# Discord:
# Webhook: your_discord_webhook_url
Notifications:
Enabled: true
Providers:
- Provider: "Discord"
Enabled: true
Discord:
Webhook: "https://canary.discord.com/api/webhooks/xxx"
- Provider: "Pushover"
Enabled: false
Pushover:
Token: your_pushover_api_token
UserKey: your_pushover_user_key
# MediaServer - Configuration for your Media Server
# Type - The type of Media Server. This can be one of: Plex, Jellyfin, Emby
# URL - The URL of the Media Server. This should be the IP:Port of the Media Server or your Media Server reverse proxy domain.
# Token - The token for the Media Server. This can be found in the Media Server web interface.
# Libraries - A list of libraries to scan for images. Each library should have the following fields:
# - Name: The name of the library to scan for content. Please note that this application will only work on Movies and Series libraries.
# SeasonNamingConvention - The season naming convention for Plex. This is a Plex exclusive requirement. This can be one of: 1 or 2. This will default to 2
# 1 - Season 1 (non-padded)
# 2 - Season 01 (padded)
MediaServer:
Type: "Jellyfin" # The type of Media Server. This can be one of: Plex, Jellyfin, Emby
URL: https://jelly.domaine.tld:443
Token: xxx
Libraries:
- Name: "Films"
- Name: "Séries"
# - Name: "4K Movies"
# - Name: "4K Series"
# SeasonNamingConvention: 1 # This is a Plex exclusive requirement. This is the season naming convention for Plex. This can be one of: 1 or 2
# Kometa - Configuration for Kometa
# RemoveLabels - Whether to remove labels or not. This will remove all specific labels from the Media Server Item.
# Labels - A list of labels to add to the Media Server Item. This will be used to identify the item in the Media Server.
# This is also a Plex exclusive requirement. This will only work on Plex.
Kometa:
RemoveLabels: false
Labels:
- "Overlay"
# TMDB - Configuration for TMDB (The Movie Database) This is not used yet.
# ApiKey - The API key for TMDB. This can be obtained by creating an account on TMDB and generating an API key.
TMDB:
ApiKey: xxx
# Mediux - Configuration for Mediux
# Token - The token for Mediux. This can be obtained by creating an account on Mediux and generating a static token.
# !!!! NOTE: This is not yet available to the public. It is currently in development and will be available in the future.
# If you would like to test this app, you will need a MedUX. You can contact us on Discord to get access.
# DownloadQuality: The quality of the images to download. Options are: "original" or "optimized"
Mediux:
Token: N_l1upAQrVJ05J6Fwjz89HEoo348l1u-
DownloadQuality: "optimized"
Une fois lancé ça indexe nos contenus globaux ou par bibliothèque, avec un minimum de tri. Et ça ffiche les posters actuels. Aphrodite n’est pas encore passé mettre des overlays.

De là on peut sélectionner 1 film ou 1 série et parcourir les sets MediUX tout en visualisant le poster actuel. En l’occurrence, pour Carnivàle j’ai le choix entre 3 sets. C’est pas foufou MAIS des gens ont pris le temps de les réaliser et partager sur MediUX alors merci à eux.


Aura indique si c’est ou non déjà en base de données

Tout est expliqué et détaillé dans la documentation (en anglais, mais on est en 2025, donc go les d’jeuns ! – je suis de 73- ).
La sélection d’un set de série offre plusieurs choix :
– Poster : l’affiche de la série
– Backdrop : l’image d’arrière plan si vous avez activé l’option dans Plex/.Jellyfin
– Season poster : les affiches des saisons
– Auto DL : vérifiera périodiquement les nouvelles mises à jour de cet ensemble. C’est utile si vous souhaitez télécharger et appliquer automatiquement les nouvelles titlecards ajoutées lors de futures mises à jour de cet ensemble. C’est à ça que cert le cron entré dans la configuration.


Et je constate la mise à jour dans la foulée sur Jellyfin

On peut parcourir les sets proposés par un utilisateur par rapport à nos contenus indexés par Aura, pratique si on apprécie son travail et qu’on veut en profiter pour d’autres séries ou films.

Il y a une option Kometa, pour conserver ou non les overlays après la MàJ d’une affiche. Je n’ai pas testé.
On peut déjà utiliser des sets MediUX via Kometa mais ça semble vraiment fastidieux. Aura est encore tout jeune mais il y a fort à parier qu’il y aura une bonne intégration à/de Kometa dans le futur.
![]()