Vue normale

La Californie exige l’arrêt immédiat de la production de contenus sexuels générés par IA

17 janvier 2026 à 15:00

Le procureur général de Californie a adressé vendredi une injonction formelle à xAI, sommant l’entreprise de mettre fin sans délai à la création d’images intimes non consenties et de matériel pédopornographique via son chatbot Grok. Cette démarche fait suite à l’ouverture d’une enquête plus tôt dans la semaine après des signalements indiquant que la plateforme ... Lire plus

L'article La Californie exige l’arrêt immédiat de la production de contenus sexuels générés par IA est apparu en premier sur Fredzone.

XS-Leaks chez Meta - 4 failles pour vous identifier

Par : Korben
16 janvier 2026 à 11:42

Youssef Sammouda, un chercheur en sécurité connu sous le pseudo sam0, vient de publier un article détaillant pas moins de 4 vulnérabilités de type XS-Leaks qu'il a découvertes chez Meta. Pour vous la faire courte, ce genre de faille permet à un site malveillant de déduire des informations sur vous sans même avoir besoin de pirater quoi que ce soit. Heureusement, tout a été patché depuis !

La première faille concernait Workplace (la version entreprise de Facebook) et son intégration avec Zoom. En gros, un attaquant pouvait créer une page web qui chargeait le callback Zoom de Workplace dans une iframe, et selon que l'utilisateur était connecté ou non à Meta Work, la redirection se comportait différemment. Et là, pouf, l'attaquant savait si vous étiez un utilisateur Meta Work. Pas besoin d'accéder à vos données, juste de mesurer combien de temps met une redirection. Vicieux, non ? Meta a casqué 2 400 dollars pour cette trouvaille.

La deuxième faille, c'était le bon vieux bouton Like de Facebook. Vous savez, ce petit widget qu'on trouve sur des millions de sites web ? Eh bien si vous étiez connecté à Facebook, le plugin pouvait révéler si vous aviez liké une page spécifique ou pas. Un attaquant n'avait qu'à mesurer le nombre de frames dans l'iframe pour le savoir. Encore 2 400 dollars dans la poche de notre chercheur.

La troisième était plus technique et bien trouvée. Le fichier signals/iwl.js de Facebook utilise Object.prototype pour ses opérations. En manipulant ce prototype depuis la page parente, un attaquant pouvait provoquer des erreurs différentes selon l'état de connexion de l'utilisateur, et même récupérer son ID Facebook. Ça, ça valait 3 600 dollars.

Et voilà, la quatrième concernait l'identification des employés Meta eux-mêmes via les domaines internes. Celle-là n'a pas rapporté de bounty (juste un "informative"), mais elle montre bien l'étendue du problème.

Au total, Youssef a empoché 8 400 dollars entre décembre 2024 et mai 2025, le temps que Meta corrige tout ça. Alors oui, c'est cool que ces failles soient maintenant corrigées mais ça fait quand même réfléchir sur la quantité de données qui peuvent fuiter sans même qu'on s'en rende compte.

Pour ceux qui veulent creuser le fonctionnement des programmes de bug bounty , c'est vraiment un système génial et hyper vertueux où tout le monde est gagnant. Les chercheurs sont payés pour trouver des failles, les entreprises patchent avant que les méchants n'exploitent. Y'a vraiment de quoi faire dans ce domaine.

Bref, bien joué Youssef Sammouda, grâce à lui quelques failles de moins chez Meta, et ça c'est cool !

Source

IA générative : Wikipedia fait enfin passer les chatbots à la caisse

15 janvier 2026 à 14:56

L’ère de la gratuité totale semble révolue pour les leaders de l’IA. Après les accords passés avec certains groupes de médias (d’autres ont engagé des procédures judiciaires), c’est au tour de la plus grande encyclopédie collaborative de monétiser ses millions d’articles.

A l’occasion de ses 25 ans, Wikipedia vient en effet de signer, via sa maison mère la Wikimedia Foundation, des accords commerciaux avec Microsoft, Meta et Amazon, rejoignant ainsi Google, déjà signataire d’un accord depuis 2022.

Des acteurs de l’IA comme Perplexity et le français Mistral AI ont également été enrôlés dans ce dispositif qui redéfinit les règles du jeu entre communs numériques et industrie de l’intelligence artificielle.

Le montant des accords n’est pas communiqué.

Une manne de données devenue indispensable

Les chiffres parlent d’eux-mêmes : 65 millions d’articles répartis dans plus de 300 langues. Wikipedia s’est imposée comme la colonne vertébrale de l’entraînement des modèles d’IA générative. Chaque chatbot, chaque assistant virtuel développé par les mastodontes technologiques puise abondamment dans ce gigantesque corpus de connaissances structurées et vérifiées.

Mais cette exploitation massive a un coût. Le scraping intensif des contenus par les systèmes d’IA a fait exploser la demande sur les serveurs de la fondation, provoquant une hausse vertigineuse des dépenses d’infrastructure.  « Wikipedia est un composant critique du travail de ces entreprises technologiques, elles doivent trouver comment le soutenir financièrement », martèle Lane Becker, président de Wikimedia Enterprise, la branche commerciale de la fondation.

Un modèle économique en pleine mutation

Face à cette situation, Wikimedia a créé une offre sur mesure : Wikimedia Enterprise. Cette plateforme commerciale propose un accès structuré et haut débit aux données de l’encyclopédie via des API payantes, avec des garanties de disponibilité pouvant atteindre 99% et des mises à jour en temps quasi réel.

Wikipedia reste gratuite pour le grand public et les usages non commerciaux, mais les exploitations industrielles doivent contribuer. Un principe que Tim Frank, vice-président de Microsoft, semble avoir intégré : « Nous aidons à créer un écosystème de contenu durable pour l’internet de l’IA, où les contributeurs sont valorisés.»

Les revenus générés restent pour l’instant modestes. En 2023, le contrat avec Google avait rapporté environ 3,2 millions $ de revenus annuels récurrents, soit 1,7% des 185,3 millions de revenus totaux de la fondation. Mais la multiplication des partenaires laisse augurer une montée en puissance significative.

Cette stratégie pourrait bien inspirer d’autres plateformes de connaissances ouvertes confrontées aux mêmes défis. La fondation franchit par ailleurs un nouveau cap avec la nomination de Bernadette Meehan, ancienne ambassadrice des États-Unis au Chili, au poste de directrice générale à compter du 20 janvier. Un profil diplomatique pour naviguer dans ces eaux nouvelles.

Illustration : © DR

The post IA générative : Wikipedia fait enfin passer les chatbots à la caisse appeared first on Silicon.fr.

Yann LeCun quitte Meta : les coulisses d’une rupture

13 janvier 2026 à 14:29

C’est au restaurant étoilé Pavyllon, à deux pas du Grand Palais parisien, que Yann LeCun s’est confié au Financial Times dans le cadre de sa série « Lunch with the FT ».

Attablé pour un déjeuner de trois heures et demie, le chercheur français de 64 ans a expliqué sans détour pourquoi il a décidé de quitter Meta après onze ans de bons et loyaux services. « Rester est devenu politiquement difficile », confie-t-il. Une litote pour décrire une rupture qui révèle les tensions croissantes au sein du groupe californien sur la direction à prendre en matière d’IA.

LLM : un modèle en fin de course

Au cœur du conflit : une divergence fondamentale sur l’avenir technologique de l’intelligence artificielle. LeCun, prix Turing et figure tutélaire du deep learning, ne croit pas aux grands modèles de langage comme voie vers la superintelligence. Pour lui, les LLM sont utiles mais limités, contraints par le langage seul. Une conviction qui détonne dans une Silicon Valley obsédée par cette approche.

Le problème ? Meta vient justement de miser massivement sur cette technologie. Après le lancement de ChatGPT fin 2022, l’entreprise a réorganisé ses équipes autour de Llama, son propre modèle de langage.

Le tournant s’opère véritablement en 2025. Mark Zuckerberg, déçu par les performances de Llama 4, décide de frapper fort. Il investit 15 milliards $ dans Scale AI et embauche son patron, Alexandr Wang, 28 ans, pour diriger le nouveau laboratoire de recherche TBD Lab. Une décision qui place ce jeune entrepreneur à la tête de l’unité de recherche en IA de Meta. Ses nouvelles recrues, attirées à coups de primes pouvant atteindre 100 millions $, sont selon LeCun « complètement convaincues par les LLM ».

LeCun se retrouve ainsi managé par quelqu’un qu’il qualifie de « jeune » et « inexpérimenté ». S’il reconnaît que Alexandr Wang apprend vite, il souligne son manque d’expérience en matière de recherche fondamentale. « On ne dit pas à un chercheur ce qu’il doit faire. On ne dit certainement pas à un chercheur comme moi ce qu’il doit faire », lance-t-il.

La communication se dégrade également avec l’unité IA générative. LeCun regrette que ses équipes proposent des innovations ambitieuses quand la direction ne retient que des projets éprouvés et sans risque. Une prudence qui, selon lui, conduit l’entreprise à prendre du retard.

Une organisation bouleversée

Plus profondément, LeCun refuse de renier ses convictions scientifiques. Certains chez Meta aimeraient qu’il cesse de proclamer publiquement que les LLM constituent une impasse pour atteindre la superintelligence. Mais le chercheur ne transige pas : « Je ne vais pas changer d’avis parce qu’un type pense que j’ai tort. Je n’ai pas tort. Mon intégrité de scientifique ne me le permet pas. »

Cette inflexibilité s’explique aussi par sa vision alternative : les modèles du monde, ou world models, qu’il développe depuis des années. Cette architecture baptisée V-JEPA vise à donner aux machines une compréhension du monde physique en apprenant à partir de vidéos, et non uniquement du langage. Une approche qui intéresse davantage l’industrie lourde et l’aéronautique que les réseaux sociaux.

Cap vers AMI Labs

LeCun prépare désormais son prochain chapitre : Advanced Machine Intelligence Labs, une start-up qui incarnera sa vision de l’intelligence artificielle avancée. Il y occupera le poste de président exécutif, laissant la direction opérationnelle à Alex LeBrun, cofondateur de la startup française Nabla. Une structure qui lui permettra de conserver la liberté de recherche qu’il chérissait chez Meta. Pourquoi ne doit pas prendre le rôle de CEO ?  « Je suis à la fois trop désorganisé et trop vieux ! » confie Yann LeCun.

Le chercheur promet des premières versions de sa technologie dans les douze mois. Pas encore la superintelligence, mais un chemin vers celle-ci. Emmanuel Macron lui-même aurait manifesté sa satisfaction de voir cette nouvelle entreprise mondiale maintenir des liens étroits avec la France.

Après des décennies passées à façonner l’IA moderne, Yann LeCun entame donc un nouveau cycle. Son ambition ? Augmenter la quantité d’intelligence dans le monde. « L’intelligence, c’est vraiment ce dont nous devrions avoir davantage », affirme-t-il.

Photo : © DR

The post Yann LeCun quitte Meta : les coulisses d’une rupture appeared first on Silicon.fr.

Meta Turns To Nuclear Power To Meet Growing AI Energy Demand

10 janvier 2026 à 15:07
Meta announced new partnerships focused on expanding nuclear energy capacity in the United States to support the growing energy demands of its artificial intelligence data centers. The decision follows more than a year of internal studies and aligns with a broader industry trend to secure stable, large-scale power sources for AI infrastructure. According to the company, the initiative aims to strengthen the U.S. energy grid while enabling the deployment of […]

Meta s’offre Manus : comment ce « ChatGPT asiatique » a évolué

2 janvier 2026 à 11:20

Butterfly Effect bat désormais pavillon américain.
La start-up vient en tout cas de se vendre à Meta ; possiblement pour plus de 2 Md$.

Fondée en 2022, elle avait d’abord développé un « assistant tout-en-un » permettant d’exploiter divers LLM à travers leurs API.
Le produit, nommé Monica AI, existe toujours. Mais il n’est plus la vitrine depuis le lancement de Manus. C’était début mars 2025, quelques semaines après l’électrochoc DeepSeek.

Une start-up chinoise devenue licorne singapourienne

Comme DeepSeek, Butterfly Effect est né en Chine. Il a cependant fini par en délocaliser son siège social, mi-2025. Le déclencheur : un tour de table de 75 M$ emmené par le fonds américain Benchmark… et l’enquête consécutivement conduite par le Trésor sous le régime des investissements à l’étranger.

De ce tour de table, Butterfly Effect était ressorti valorisé à environ 500 M$. L’entreprise est maintenant basée à Singapour. Elle continuera à opérer sur place jusqu’à nouvel ordre, nous affirme-t-on. Même si du point de vue organisationnel, le cœur de l’équipe sera intégré à Meta AI.

Le seuil des 100 M$ de revenu annuel récurrent avait officiellement été franchi mi-décembre. La société comptait alors une centaine d’employés, entre Singapour, Tokyo et San Francisco. Il était question d’ouvrir « bientôt » un bureau à Paris.

Du back-end à l’optimisation SEO, Manus en bâtisseur de sites web full-stack

Entre autres chiffres, Butterfly Effect annonce avoir créé, depuis le lancement de Manus, quelque 83 millions d’« ordinateurs virtuels ». L’entreprise se réfère là à sa technologie de navigateur cloud, intégrée dans l’interface de discussion. Elle y a récemment ajouté une extension (Chrome/Edge) qui permet à l’IA de travailler dans le navigateur local.

Autre brique ajoutée ces dernières semaines : un constructeur de sites web full stack – avec back-end, authentification, base de données, achat/connexion de noms de domaines, optimisation SEO (génération d’une version HTML statique spécifiquement pour les robots) et analytique. Elle fait partie des fonctionnalités réservées aux forfaits payants : Basic (20 $/mois), Plus (40 $/mois), Pro (200 $/mois), Team (à partir de 40 $/siège) et Enterprise.

Certifiée SOC 2 Type I et II, l’offre est pour le moment hébergée aux États-Unis (région AWS en Virginie). Elle met à contribution des modèles d’Anthropic, de Google, d’OpenAI. Elle dépend aussi de Cloudflare (réseau), de HCaptcha (sécurité), d’Intercom (support), de Revenue Cat (paiement), de Stripe (facturation) et de Twilio (notifications SMS).

Les jalons d’un écosystème… jusqu’en France

Outre ses partenariats académiques et son offre de crédits pour les start-up, Butterfly Effect a un programme d’ambassadeurs. Deux d’entre eux se trouvent en France : Niels Rolland (cofondateur et CEO de Paatch, communauté d’AI builders) en Pāvels Baskakovs (ancien de Deloitte et Chainalysis).

Depuis peu existe aussi la Manus Academy. Cette plate-forme de formation à l’usage de l’IA est actuellement en accès anticipé, en anglais, japonais et portugais. Elle s’inscrit dans le prolongement du Build Club, projet que Butterfly Effect porte aux côtés d’acteurs comme OpenAI, Crew AI, Leonardo AI, Groq, LangFlow et Vercel.

La « recherche étendue » est disponible depuis plus longtemps, mais son déploiement sur l’ensemble des forfaits payants n’est pas finalisé. Elle est l’une des marques de fabrique de Manus : plutôt que d’étendre la fenêtre de contexte, on instancie autant d’agents que nécessaire et on les exécute en parallèle.

Une multimodalité couleur Google

Arrivée en mai, la génération d’images repose aujourd’hui sur GPT Image 1 (OpenAI) et sur Nano Banana Pro (Google), au sein d’une espace de travail (« vue design ») qui y associe un agent de recherche et un éditeur interactif. Nano Banana Pro est aussi à la base du générateur de diapositives, réservé aux forfaits payants.

Manus sait générer des vidéos depuis juin, en particulier à l’appui du modèle Veo 3 de Google. En parallèle, il a été doté d’un système de planification de tâches. Et, par après, d’une organisation en projets.

Mi-novembre, Butterfly Effect avait promis que Manus serait disponible dans le cadre de l’offre Microsoft Agent 365.

Le mode chat est accessible à tous les utilisateurs. En mode agent, on ne peut utiliser, sur la version gratuite, que l’architecture dite Manus Lite.

Illustration générée par IA

The post Meta s’offre Manus : comment ce « ChatGPT asiatique » a évolué appeared first on Silicon.fr.

Les infrastructures cloud au cœur d’une mobilisation citoyenne sans précédent

26 décembre 2025 à 09:05

Longtemps cantonnées à l’ombre du débat public, les installations de traitement de données émergent désormais comme un sujet de préoccupation majeur pour les Américains. L’année écoulée a vu naître une vague de contestation d’ampleur nationale face à la multiplication exponentielle de ces complexes technologiques. Des dizaines de communautés locales se mobilisent contre l’implantation de nouveaux ... Lire plus

L'article Les infrastructures cloud au cœur d’une mobilisation citoyenne sans précédent est apparu en premier sur Fredzone.

Meta Plans New Visual AI Model To Rival ChatGPT And Gemini

22 décembre 2025 à 17:53
Meta seems to be developing a new artificial intelligence model focused on images and videos, codenamed “Mango.” This effort is part of its strategy to compete more directly with major players like Google and OpenAI. According to information published by The Wall Street Journal, this initiative shows Meta’s intention to strengthen its position in the fast-changing AI market, particularly in visual content generation and processing. Previously, Meta worked on another […]

WhatsApp Updates Attachment Menu With Faster Photo Access

16 décembre 2025 à 16:00
WhatsApp continues refining its user experience by combining the rollout of AI features with ongoing interface design improvements; One of the latest releases focuses on simplifying and accelerating media sharing and the new changes have recently been made available to some Android users through the beta program. The update brings a redesigned attachment and sharing menu within the app. Previously, users needed to open specific options (such as the gallery) […]

L’Inde impose des restrictions inédites à WhatsApp et menace son modèle d’usage

15 décembre 2025 à 08:15

L’application de messagerie instantanée détenue par Meta traverse une période délicate sur son principal territoire : l’Inde. Des directives gouvernementales récentes bousculent profondément le fonctionnement habituel de la plateforme, au risque de perturber aussi bien les utilisateurs individuels que les commerces qui en dépendent quotidiennement. Alors que New Delhi justifie ces mesures par la lutte ... Lire plus

L'article L’Inde impose des restrictions inédites à WhatsApp et menace son modèle d’usage est apparu en premier sur Fredzone.

AI Demand To Push Android Phone Prices Higher In 2026

13 décembre 2025 à 16:00
According to recent industry analyses, although smartphone manufacturers have been trying to keep stable prices for Android devices released in 2025, this trend is probably not going to happen next year, in 2026. Rising production costs driven by global demand for memory components are expected to have a huge impact, causing a significant price increases across the whole Android market. A major factor behind all the shift is the escalating […]

Faux site TickMill : un hub d’arnaque démantelé

10 décembre 2025 à 11:01
Le Justice stoppe un faux site TickMill birman et cible les réseaux d’arnaque crypto liés aux centres d’escroquerie régionaux....

On en sait (un peu) plus sur la future startup de Yann LeCun

4 décembre 2025 à 15:17

Présent le 4 décembre à la conférence AI-Pulse à Paris , Yann LeCun a lâché quelques informations sur sa future start-up centrée sur la ’“Advanced Machine Intelligence” (AMI) et relevées par Reuters.

S’il na pas dévoilé le nom de baptême de sa prochaine entreprise, le futur ex scientifique en chef de l’IA chez Meta ( qu’il quittera en fin d’année) a indiqué son actuel employeur ne figurera pas parmi ses investisseurs.

Autre info : la start-up pourrait s’installer à Paris.

Fin novembre, le co-lauréat du prix Turing avait annoncé son départ pour créer une start-up consacrée aux « modèles du monde », une nouvelle génération de systèmes d’IA qui apprennent à partir de données visuelles et spatiales plutôt que textuelles.

À l’époque, il avait décrit Meta comme un « partenaire » sans préciser la nature exacte de cette relation.

Son départ intervient dans un contexte de profonde réorganisation de la division IA de Meta. Mark Zuckerberg a réorienté le laboratoire de recherche fondamentale en IA (FAIR), fondé par Yann LeCun en 2013, vers des produits commerciaux et les grands modèles de langage, une stratégie éloignée de sa vision.

Photo : © DR

The post On en sait (un peu) plus sur la future startup de Yann LeCun appeared first on Silicon.fr.

Meta licencie 600 postes d’IA et resserre son organisation

Meta réorganise son unité d’intelligence artificielle avec environ 600 suppressions de postes et mise sur la mobilité interne pour accélérer l’exécution.

Cet article Meta licencie 600 postes d’IA et resserre son organisation est apparu en premier sur Linformatique.org.

Un nouveau souffle pour vos jaquettes : Aura et MediUX au service de Plex, Emby et Jellyfin

Par : Aerya
11 septembre 2025 à 15:48

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 !

demo movie

🧩 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.

aura2

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.

aura3
aura4

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

aura5

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.

  • – Future updates ONLY : ne téléchargera rien pour le moment. C’est utile si vous avez déjà téléchargé l’ensemble et que vous souhaitez uniquement appliquer les mises à jour futures. Par exemple uniquement 1x par jour.

    Notez qu’il n’y a pas toujours de backdrop de proposé.
aura6
aura7

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

aura8

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.

aura9

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.

Loading

Aphrodite – Sublimez vos affiches pour Jellyfin (et Emby ?)

Par : Aerya
10 septembre 2025 à 11:04

Ok, pour Emby je pose la question vu qu’ils ont la même origine.

J’utilise Kometa sur Plex et j’ai trouvé son pendant pour Jellyfin avec Aphrodite de jackkerouac. Enfin en mieux, selon moi, plus configurable et en WebUI.

Pour nos bibliothèques Jellyfin on peut tout simplement changer les affiches (bases), configurer et ajouter tout ou au choix la résolution, l’audio, les notes et les récompenses.

Avec la totale, ça peut donner ceci.

aphrodite20
aphrodite preview 1757492972706
aphrodite preview 1757493205061


Ça ne fonctionne évidemment pas sur les affiches des collections vu que ces badges concernent une vidéo donnée.

aphrodite21

Pour répondre à nos besoins, sommaires vu que je connais mes règles Radarr/Sonarr, je n’affiche que les notes et récompenses.

aphrodite23


Via la WebUI on peut planifier des opérations (cron) pour appliquer tout ou partie des badges sur les bibliothèques sélectionnées. En reprenant ou non les éléments déjà traités.
En revanche, pour la modification des affiches, c’est à faire manuellement, par grappes de 50 (ouais, léger…).

L’installation est relativement simple, j’ai cependant rencontré pas mal de soucis en ne configurant que via la WebUI pour Jellyfin. J’ai tout décommenté/renseigné dans le .env et ça roule.

Comme indiqué sur le GitHub, il faut télécharger le compose et son .env. Je mets ça dans /home/aerya/docker/aphrodite

# Créer le dossier entrer dedans
mkdir /home/aerya/docker/aphrodite && cd /home/aerya/docker/aphrodite

# Télécharger le docker-compose et le .env
curl -L https://github.com/jackkerouac/aphrodite/releases/latest/download/docker-compose.yml -o docker-compose.yml
curl -L https://github.com/jackkerouac/aphrodite/releases/latest/download/default.env.example -o .env


Et on passe à l’édition du compose.
Par rapport au compose de base, j’ai juste modifié les volumes sur la base de /home/aerya/docker/aphrodite/…

Mis en always pour « restart » et ajouté la MàJ auto d’Aphrodite avec watchtower. Pas la peine pour Postgre et Redis vu que ça va chercher des versions précises.
Tout le reste se modifie dans .env qui suit

services:
  postgres:
    image: postgres:15-alpine
    container_name: aphrodite-postgres
    restart: always
    ports:
      - ${POSTGRES_PORT:-5433}:5432
    environment:
      POSTGRES_DB: ${POSTGRES_DB:-aphrodite}
      POSTGRES_USER: ${POSTGRES_USER:-aphrodite}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-aphrodite123}
    volumes:
      - /home/aerya/docker/aphrodite/postgres_data:/var/lib/postgresql/data
    healthcheck:
      test:
        - CMD-SHELL
        - pg_isready -U ${POSTGRES_USER:-aphrodite}
      interval: 10s
      timeout: 10s
      retries: 5
  redis:
    image: redis:7-alpine
    container_name: aphrodite-redis
    restart: always
    ports:
      - ${REDIS_PORT:-6379}:6379
    volumes:
      - /home/aerya/docker/aphrodite/redis_data:/data
    healthcheck:
      test:
        - CMD
        - redis-cli
        - ping
      interval: 10s
      timeout: 10s
      retries: 5
  aphrodite:
    image: ${APHRODITE_IMAGE:-ghcr.io/jackkerouac/aphrodite:latest}
    container_name: aphrodite
    pull_policy: always
    restart: always
    environment:
      POSTGRES_HOST: postgres
      POSTGRES_PORT: 5432
      POSTGRES_DB: ${POSTGRES_DB:-aphrodite}
      POSTGRES_USER: ${POSTGRES_USER:-aphrodite}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-aphrodite123}
      DATABASE_URL: ${DATABASE_URL:-postgresql+asyncpg://aphrodite:aphrodite123@postgres:5432/aphrodite}
      REDIS_URL: ${REDIS_URL:-redis://redis:6379/0}
      API_HOST: ${API_HOST:-0.0.0.0}
      API_PORT: ${API_PORT:-8000}
      ENVIRONMENT: ${ENVIRONMENT:-production}
      SECRET_KEY: ${SECRET_KEY:-please-change-this-secret-key-in-production}
      ALLOWED_HOSTS: ${ALLOWED_HOSTS:-*}
      CORS_ORIGINS: ${CORS_ORIGINS:-*}
      LOG_LEVEL: ${LOG_LEVEL:-info}
      LOG_FILE_PATH: ${LOG_FILE_PATH:-/app/logs/aphrodite-v2.log}
      DEBUG: ${DEBUG:-false}
      CELERY_BROKER_URL: ${CELERY_BROKER_URL:-redis://redis:6379/0}
      CELERY_RESULT_BACKEND: ${CELERY_RESULT_BACKEND:-redis://redis:6379/1}
      ENABLE_BACKGROUND_JOBS: ${ENABLE_BACKGROUND_JOBS:-true}
      JELLYFIN_URL: ${JELLYFIN_URL:-}
      JELLYFIN_API_KEY: ${JELLYFIN_API_KEY:-}
      JELLYFIN_USER_ID: ${JELLYFIN_USER_ID:-}
    ports:
      - ${APHRODITE_PORT:-8000}:8000
    volumes:
      - /home/aerya/docker/aphrodite/aphrodite_data:/app/data
      - /home/aerya/docker/aphrodite/aphrodite_logs:/app/logs
      - /home/aerya/docker/aphrodite/aphrodite_media:/app/media
      - /home/aerya/docker/aphrodite/aphrodite_static:/app/api/static/originals
    labels:
      - com.centurylinklabs.watchtower.enable=true
    depends_on:
      postgres:
        condition: service_healthy
      redis:
        condition: service_healthy
    healthcheck:
      test:
        - CMD
        - curl
        - -f
        - http://localhost:8000/health/live
      interval: 10s
      timeout: 10s
      retries: 5
      start_period: 40s
  aphrodite-worker:
    image: ${APHRODITE_IMAGE:-ghcr.io/jackkerouac/aphrodite:latest}
    container_name: aphrodite-worker
    pull_policy: always
    restart: always
    command:
      - python3
      - -m
      - celery
      - -A
      - celery_app
      - worker
      - --loglevel=debug
      - --pool=solo
      - --concurrency=1
    environment:
      POSTGRES_HOST: postgres
      POSTGRES_PORT: 5432
      POSTGRES_DB: ${POSTGRES_DB:-aphrodite}
      POSTGRES_USER: ${POSTGRES_USER:-aphrodite}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-aphrodite123}
      DATABASE_URL: ${DATABASE_URL:-postgresql+asyncpg://aphrodite:aphrodite123@postgres:5432/aphrodite}
      REDIS_URL: ${REDIS_URL:-redis://redis:6379/0}
      CELERY_BROKER_URL: ${CELERY_BROKER_URL:-redis://redis:6379/0}
      CELERY_RESULT_BACKEND: ${CELERY_RESULT_BACKEND:-redis://redis:6379/1}
      ENVIRONMENT: ${ENVIRONMENT:-production}
      SECRET_KEY: ${SECRET_KEY:-please-change-this-secret-key-in-production}
      LOG_LEVEL: ${LOG_LEVEL:-info}
      LOG_FILE_PATH: ${LOG_FILE_PATH:-/app/logs/aphrodite-v2.log}
      PYTHONPATH: /app
    volumes:
      - /home/aerya/docker/aphrodite/aphrodite_data:/app/data
      - /home/aerya/docker/aphrodite/aphrodite_logs:/app/logs
      - /home/aerya/docker/aphrodite/aphrodite_media:/app/media
      - /home/aerya/docker/aphrodite/aphrodite_static:/app/api/static/originals
    labels:
      - com.centurylinklabs.watchtower.enable=true
    depends_on:
      postgres:
        condition: service_healthy
      redis:
        condition: service_healthy
    working_dir: /app/api
    healthcheck:
      test:
        - CMD
        - python3
        - -c
        - import sys; sys.path.insert(0, '/app'); from celery_app import
          celery_app; print('Worker healthy')
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s
networks:
  default:
    name: aphrodite_network


Et le fameux .env. Comme expliqué plus haut, après plusieurs tests, il faut y paramétrer le serveur Jellyfin et également décommenter les informations liées à Postgre et Redis. J’ai passé les logs en DEBUG vu les soucis que je rencontrais au début.

Pour créer la SECRET_KEY : (en console) openssl rand -hex 64

Et ne pas oublier de mettre le mot de passe POSTGRES_PASSWORD dans la partie DATABASE_URL
Créer une clé API dans Jellyfin via le menu tout en bas du Tableau de bord

Et récupérer l’ID utilisateur qui sera utilisée pour connecter Aphrodite. Dans Tableau de bord/Utilisateurs, cliquer sur le user et l’ID est à la fin de l’URL

# =============================================================================
# Docker Image Configuration
# =============================================================================
# Leave blank to always pull the latest version from GitHub Container Registry
# APHRODITE_IMAGE=ghcr.io/jackkerouac/aphrodite:latest

# =============================================================================
# Database Configuration
# =============================================================================
# IMPORTANT: Change POSTGRES_PASSWORD to a secure password!
# This password will be used to create the database user
POSTGRES_DB=aphrodite
POSTGRES_USER=aphrodite
POSTGRES_PASSWORD=motdepassedelamortquitue
POSTGRES_PORT=5432

# =============================================================================
# Redis Configuration
# =============================================================================
REDIS_PORT=6379

# =============================================================================
# Security Configuration (REQUIRED)
# =============================================================================
SECRET_KEY=4c887cda6e10bac46eb61a961e38f4626609c9caeca08123ed1d6d876c6b14c20a11118cec534f26d5d5de4f5b6935fa07ff8887b91322058c20f95705025fa0
# =============================================================================
# Application Configuration
# =============================================================================
# Port to run Aphrodite on (default: 8000)
APHRODITE_PORT=8000

# API Configuration
API_HOST=0.0.0.0
API_PORT=8000

# Environment
ENVIRONMENT=production

# Logging level (debug, info, warning, error)
LOG_LEVEL=debug
DEBUG=true

# Network Configuration
ALLOWED_HOSTS=*
CORS_ORIGINS=*

# =============================================================================
# Background Jobs Configuration
# =============================================================================
ENABLE_BACKGROUND_JOBS=true
CELERY_BROKER_URL=redis://redis:6379/0
CELERY_RESULT_BACKEND=redis://redis:6379/1

# =============================================================================
# Database & Redis URLs (Advanced - Override defaults if needed)
# =============================================================================
DATABASE_URL=postgresql+asyncpg://aphrodite:motdepassedelamortquitue@postgres:5432/aphrodite
REDIS_URL=redis://redis:6379/0

# =============================================================================
# Jellyfin Integration (Optional - Configure via Web Interface)
# =============================================================================
# You can set these here or configure them in the web interface
JELLYFIN_URL=https://jelly.domaine.tld
JELLYFIN_API_KEY=xxx
JELLYFIN_USER_ID=xxx


On peut ensuite lancer la Docker et aller visiter les paramètres d’Aphrodite. Mon screen date de ma 1ère installation aussi je ne sais plus si les paramètres de Jellyfin sont déjà remplis par le biais du .env

Il faut aller récupérer (ou créer) ses clés API :
OMDB : version gratuite, clé dans le mail qu’on reçoit suite à l’inscription
TMDB : le token, pas la clé
MDBList : en bas de page
AniDB si vous avez des mangas : j’ai pas regardé plus que ça pour créer une clé API

aphrodite2

C’est par ailleurs dans cette partie qu’on peut configurer les badges à mettre en overlay sur les affiches. Je ne rentre pas dans les détails, il y a tellement de personnalisation possible que c’est propre à chacun.
Aphrodite étant tout jeune, les notes ne sont pour l’instant disponibles qu’à partir d’IMDb, Metacritic, MyAnimeList, Rotten Tomatoes et TMDb. C’est déjà pas mal même si je suis impatient de voir Trakt arriver. TMDb et Trakt.tv ont maintenant un nombre d’utilisateurs suffisant pour avoir plusieurs centaines de votes et les rendre qualitatifs.
Il n’y a évidemment pas AlloCiné, pardon pour ceux qui y bossent, mais c’est bien trop franco-nombriliste-français pour avoir une quelconque utilité dans la galaxie des *arrs et du streaming.


aphrodite4
aphrodite5
aphrodite6
aphrodite7
aphrodite8
aphrodite10
aphrodite11


Pour l’audio et la vidéo, Aphrodite peut détecter les données via l’analyse des fichiers. Faut évidemment avoir la machine qui le permet sans que ça prenne des heures.

aphrodite24
aphrodite25

On peut générer un aperçu de sa configuration via le menu Preview

aphrodite26

Avant d’aller plus loin, il faut prendre le temps de vérifier l’import des bibliothèques suite à la connexion avec Jellyfin, dans le menu Poster Manager.
C’est ballot, j’ai pas pensé à faire de screen avant de modifier mes affiches…

aphrodite29

Ici on peut modifier les affiches, par lots de 50 donc faut être patient… C’est sympa, ça change mais on ne peut pas faire de choix et, pour l’instant, il n’y a pas MediUX d’intégré. Mais le projet est jeune, ça a le temps de venir.

aphrodite30

C’est également dans ce menu qu’on peut lancer à la demande l’application des badges, toujours par lots de 50 affiches. Ça peut être intéressant pour tester ou s’occuper des bibliothèques spécifiques avec peu de contenus.

aphrodite31

Et ensuite passer aux choses sérieuses avec la mise en place de tâches (ou d’une seule, c’est selon) via les Schedules

aphrodite27

Après avoir testé plusieurs configurations, j’ai créé une tâche qui se répète toutes les heures pour mes 2 bibliothèques, pour les contenus non encore « badgés » et seulement les notes et récompenses, comme expliqué au début de mon article.

aphrodite28

On peut déclencher le travail directement, sans attendre la prochaine planification et mes bibliothèques passent d’affiches simples

aphrodite18

à des badgées selon mes préférences !
Il y a eu l’ajout de collections entre temps également, depuis Jellyfin.

aphrodite40

Au final ça tourne très bien, il y a presque trop de réglages possibles quand on est comme moi un éternel insatisfait ^^’

Aphrodite est encore jeune et en sus de l’utiliser je suivrai assurément ses évolutions !

Loading

Personnaliser les affiches et collections de Plex avec Kometa

Par : Aerya
27 août 2025 à 04:46

J’aime bien avoir une idée des notes IMDB/TMDB des contenus répertoriés par Plex. Kometa, un script Python empaqueté dans un Docker pour plus de simplicité, permet de m’auditer les jaquettes des contenus indexés et créer celles de collections et playlists.
On peut presque faire la même chose sur Emby/Jellyfin, avec Posterizarr qui fonctionne aussi pour Plex)

kometa1
kometa2

On peut y mettre les infos qu’on souhaite, à l’endroit qu’on veut et créer/afficher ou non les listes par diffuseur etc. Tout est configurable, pour peu qu’on prenne le temps de lire la documentation.

Je partage ma configuration actuelle, qu’il faudrait encore peaufiner, et vous pouvez en trouver d’autres ici ou .

kometa3

Voici un Docker qui fonctionne très bien. Au besoin, pour UNRAiD, Synology, QNAP, Kubernetes, la doc est complète.

services:
  kometa:
    image: kometateam/kometa:develop
    container_name: kometa
    restart: always
    environment:
      - TZ=Europe/Paris
      - KOMETA_CONFIG=/config/config.yml
      - KOMETA_RUN=true
      - KOMETA_TIMES=00:00,06:00,12:00,18:00
    volumes:
      - /home/aerya/docker/kometa/config:/config
      - /home/aerya/docker/kometa/assets:/assets
    labels:
      - com.centurylinklabs.watchtower.enable=true

KOMETA_TIMES = les heures où Kometa doit mouliner

Et voici mon config.yml
Il faut le domaine Plex + token, les clés API TMDB, FanART et MDBlist. Je voulais tester les playlists, pas encore pris le temps…

Attention, dans la partie « libraries » les noms des librairies doivent être ceux de Plex, ici Films et Séries TV

plex:
  url: https://plex.domain.tld
  token: xxx
  timeout: 120
  verify_ssl: true

  db_cache:
  clean_bundles: false
  empty_trash: true
  optimize: true
tmdb:
  apikey: xxx
  language: fr-FR
  region: FR

  cache_expiration: 60
imdb:
  cache_expiration: 30

mdblist:
  apikey: xxx

  cache_expiration: 60
fanart:
  apikey: xxx

settings:
  run_order:
  - operations
  - metadata
  - overlays
  - collections
  asset_directory:
  - /assets
  
  overlay_artwork_filetype: jpg
  overlay_artwork_quality: 100
  show_unmanaged: true
  show_unconfigured: true
  show_missing: true

  cache: true
  cache_expiration: 60
  asset_folders: true
  asset_depth: 0
  create_asset_folders: false
  prioritize_assets: false
  dimensional_asset_rename: false
  download_url_assets: false
  show_missing_assets: true
  show_missing_season_assets: false
  show_missing_episode_assets: false
  show_asset_not_needed: true
  sync_mode: append
  default_collection_order:
  minimum_items: 1
  item_refresh_delay: 0
  delete_below_minimum: false
  delete_not_scheduled: false
  run_again_delay: 0
  missing_only_released: false
  only_filter_missing: false
  show_filtered: false
  show_unfiltered: false
  show_options: false
  save_report: false
  tvdb_language: default
  ignore_ids:
  ignore_imdb_ids:
  playlist_sync_to_users:
  playlist_exclude_users:
  playlist_report: true
  custom_repo:

libraries:
  Films:
    collection_files:
    - default: streaming
      template_variables:
        region: FR
        language: fr
        sep_style: gray
        visible_library_netflix: true
        visible_library_amazon: true
        visible_library_disney: true
        visible_library_appletv: true
        visible_library_paramount: true
        visible_library_max: true

    overlay_files:
    - default: ratings
      template_variables:
        rating1: critic
        rating1_image: imdb
        rating2: audience
        rating2_image: tmdb
        rating3: user
        rating3_image: imdb
    - default: resolution
      template_variables:
        use_edition: false
    - default: streaming
      template_variables:
        region: FR

    operations:
      assets_for_all: true
      mass_audience_rating_update: tmdb
      mass_user_rating_update: imdb

  Séries TV:
    collection_files:
    - default: streaming
      template_variables:
        region: FR
        language: fr
        sep_style: gray
        visible_library_netflix: true
        visible_library_amazon: true
        visible_library_disney: true
        visible_library_appletv: true
        visible_library_paramount: true
        visible_library_max: true
    overlay_files:
    - default: ratings
      template_variables:
        builder_level: show
        rating1: critic
        rating1_image: imdb
        rating2: audience
        rating2_image: tmdb
        rating3: user
        rating3_image: imdb
    - default: resolution
      template_variables:
        builder_level: show
        use_edition: false
    - default: streaming
      template_variables:
        region: FR
    operations:
      assets_for_all: true
      mass_audience_rating_update: tmdb
      mass_user_rating_update: imdb

collections_streaming.yml

collections:

  "Netflix • Films & Séries":
    tmdb_watch_provider: Netflix
    tmdb_region: FR
    summary: "Titres disponibles sur Netflix (France)."
    sync_mode: sync
    collection_order: alpha
    visible_home: true
    visible_shared: true
    build_collection: true
    url_poster: /assets/Streaming/Netflix/poster.jpg

  "Prime Video • Films & Séries":
    tmdb_watch_provider: Amazon Prime Video
    tmdb_region: FR
    summary: "Titres disponibles sur Amazon Prime Video (France)."
    sync_mode: sync
    collection_order: alpha
    visible_home: true
    visible_shared: true
    build_collection: true
    url_poster: /assets/Streaming/PrimeVideo/poster.jpg

  "Disney+ • Films & Séries":
    tmdb_watch_provider: Disney Plus
    tmdb_region: FR
    summary: "Titres disponibles sur Disney+ (France)."
    sync_mode: sync
    collection_order: alpha
    visible_home: true
    visible_shared: true
    build_collection: true
    url_poster: /assets/Streaming/DisneyPlus/poster.jpg

  "Apple TV+ • Films & Séries":
    tmdb_watch_provider: Apple TV+
    tmdb_region: FR
    summary: "Titres disponibles sur Apple TV+ (France)."
    sync_mode: sync
    collection_order: alpha
    visible_home: true
    visible_shared: true
    build_collection: true
    url_poster: /assets/Streaming/AppleTVPlus/poster.jpg

  # (Optionnel) Réseaux pour séries — utile pour “Originals”
  "Netflix • Séries (Network)":
    tmdb_network: Netflix
    summary: "Séries produites/diffusées par Netflix."
    sync_mode: sync
    collection_order: alpha
    visible_home: false
    visible_shared: true
    url_poster: /assets/Networks/Netflix/poster.jpg

  "Apple TV+ • Séries (Network)":
    tmdb_network: Apple TV+
    summary: "Séries Apple Originals."
    sync_mode: sync
    collection_order: alpha
    visible_home: false
    visible_shared: true
    url_poster: /assets/Networks/AppleTVPlus/poster.jpg

overlays.yml

overlays:

  ratings:
    template: rating
    default:
      rating1: imdb
      rating2: tmdb
      position: top_right
      font: Roboto-Bold
      font_size: 62
    operations:
      delete_overlays: false

  resolution:
    template: resolution
    default:
      position: bottom_left
      font: Roboto-Bold
      font_size: 70
    operations:
      delete_overlays: false

  streaming:
    template: streaming
    default:
      position: bottom_right
      region: FR
      style: logo
      allow_multiple: true
      font: Roboto-Bold
      font_size: 50
    template_variables:
      include:
        - Netflix
        - Amazon Prime Video
        - Disney Plus
        - Apple TV+
        - Canal+
        - Paramount+
        - OCS
    operations:
      delete_overlays: false

Si après un test, vous voulez que Plex revienne par défaut, Kometa propose un outil de reset.

kometa4

Loading

Covert Web-to-App Tracking via Localhost on Android

2 juillet 2025 à 20:22

We disclose a novel tracking method by Meta and Yandex potentially affecting billions of Android users. We found that native Android apps—including Facebook, Instagram, and several Yandex apps including Maps and Browser—silently listen on fixed local ports for tracking purposes.
These native Android apps receive browsers' metadata, cookies and commands from the Meta Pixel and Yandex Metrica scripts embedded on thousands of web sites. These JavaScripts load on users' mobile browsers and silently connect with native apps running on the same device through localhost sockets. As native apps access programatically device identifiers like the Android Advertising ID (AAID) or handle user identities as in the case of Meta apps, this method effectively allows these organizations to link mobile browsing sessions and web cookies to user identities, hence de-anonymizing users' visiting sites embedding their scripts.
This web-to-app ID sharing method bypasses typical privacy protections such as clearing cookies, Incognito Mode and Android's permission controls. Worse, it opens the door for potentially malicious apps eavesdropping on users’ web activity.


Permalien
❌