Une méthode existe.
Le projet dispose d'un backend pour détecter la fenêtre active. Un paquet ou une extension compagnon peut tout de même être requis.
GUIDE PRATIQUE / COMPATIBILITÉ
Cette page vous aide à vérifier si geetRPCS-linux peut identifier la fenêtre ou le jeu que vous utilisez. Choisissez votre environnement, lisez son statut et suivez les éventuelles indications d'installation.
À LIRE AVANT DE CONTINUER
Les statuts ci-dessous concernent la détection de la fenêtre active : comment geetRPCS-linux sait quel jeu ou logiciel est au premier plan. Ils ne signifient pas à eux seuls que Discord est connecté, ni que l'icône du logiciel apparaîtra dans votre panneau.
Pour que tout fonctionne, il faut aussi un client Discord compatible avec Rich Presence et, si vous souhaitez l'icône de tray, un panneau compatible StatusNotifierItem.
TEST RAPIDE · 5 QUESTIONS
Répondez selon votre configuration : le questionnaire indique si la détection est prise en charge, ce qu'il faut installer et les problèmes à anticiper. Il fonctionne sans JavaScript et ne collecte rien.
VOTRE PREMIÈRE ÉTAPE
Le nom de votre bureau ne suffit pas toujours : GNOME, KDE Plasma ou un gestionnaire de fenêtres peut fonctionner avec Wayland ou X11.
Ouvrez un terminal et exécutez :
echo "$XDG_SESSION_TYPE"
La commande affiche généralement wayland ou x11. Vous pouvez aussi consulter les informations de session dans les paramètres système ou sur l'écran de connexion de votre distribution.
COMPRENDRE LES STATUTS
Un statut indique le niveau de prise en charge de la détection, selon la documentation et les mécanismes présents dans la version v0.4.3.
Le projet dispose d'un backend pour détecter la fenêtre active. Un paquet ou une extension compagnon peut tout de même être requis.
La détection repose sur une configuration spécifique ou un mécanisme de repli. Elle peut être incomplète selon les applications.
L'environnement n'est pas documenté dans la matrice. Cela ne veut pas dire qu'il est incompatible.
Non pris en charge : cette mention est réservée aux environnements explicitement déclarés incompatibles. Aucun environnement précis n'est marqué ainsi dans la documentation v0.4.3 fournie.
01 — WAYLAND
Wayland est le système d'affichage utilisé par de nombreuses sessions Linux récentes. Le projet ne s'appuie pas sur une seule méthode : certains bureaux ont besoin de leur propre compagnon.
La détection utilise un protocole partagé par ces compositeurs. Le logiciel peut récupérer les informations de la fenêtre active sans extension propre à chaque bureau.
Pour Wayfire, le plugin foreign-toplevel doit être activé. Sway, Hyprland et labwc utilisent le backend correspondant lorsqu'il est disponible.
Dans ~/.config/wayfire.ini, ajoutez foreign-toplevel à la liste existante des plugins de la section [core], puis redémarrez Wayfire. Ne remplacez pas toute votre liste de plugins par un exemple minimal.
GNOME utilise Mutter, qui n'expose pas le protocole wlroots. geetRPCS-linux s'appuie donc sur une petite extension GNOME Shell pour signaler la fenêtre active.
L'extension geetRPCS Window Tracker doit être installée et activée. La version v0.4.3 déclare GNOME Shell 45 à 51. L'installateur principal tente de l'installer automatiquement lorsque les outils GNOME nécessaires sont disponibles.
Les bureaux Wayland ne donnent pas tous accès aux mêmes informations sur les fenêtres. Le compagnon GNOME transmet localement l'identifiant et le titre de la fenêtre focalisée au processus geetRPCS-linux.
Sous Plasma Wayland, un script compagnon KWin signale la fenêtre focalisée au logiciel via un pont D-Bus local.
Le script geetrpcsWindowTracker doit être déployé. L'installateur le met en place automatiquement lorsqu'il est lancé depuis une session KDE compatible.
KWin ne fournit pas le protocole wlroots utilisé par Sway ou Hyprland. Le script compagnon transmet donc les informations de fenêtre à geetRPCS-linux par le mécanisme prévu dans le projet.
02 — X11 / XORG
X11 (souvent appelé Xorg) est un autre système d'affichage, encore utilisé par plusieurs environnements et gestionnaires de fenêtres Linux.
Le logiciel utilise xprop pour demander à X11 quelle fenêtre est active, puis récupère son identifiant et ses informations.
Le paquet qui fournit xprop doit être installé. Sur Arch Linux, il s'agit de xorg-xprop ; sur de nombreuses distributions Debian/Ubuntu, il est fourni par x11-utils.
xprop est un petit outil en ligne de commande permettant de lire les propriétés des fenêtres X11. geetRPCS-linux l'utilise pour identifier la fenêtre active ; ce n'est pas une extension du bureau.
03 — WAYLAND : CAS PARTICULIERS
Ces environnements ne disposent pas d'une intégration aussi directe. La détection demande un outil externe ou se limite aux fenêtres accessibles via X11/XWayland.
Un fichier de statut temporaire peut fournir à geetRPCS-linux l'identifiant et le titre de la fenêtre active. Le logiciel ne les récupère pas tout seul : un outil externe doit produire ces informations.
Cette méthode s'adresse aux utilisateurs avancés capables de configurer leur propre outil de suivi des fenêtres.
Le fichier à actualiser est $XDG_RUNTIME_DIR/geetrpcs-linux/active-window.json. Il doit contenir les champs app_id, title et updated_at (horodatage Unix en secondes). Le fichier doit être rafraîchi avant que son contenu expire, soit toutes les 6 secondes.
{
"app_id": "org.example.Application",
"title": "Titre de la fenêtre",
"updated_at": 1794067200
}La valeur updated_at ci-dessus est un exemple de format : votre outil doit générer l'heure actuelle à chaque actualisation.
En l'absence de backend natif, geetRPCS-linux peut utiliser son repli X11/XWayland. Cela ne permet pas de suivre toutes les fenêtres Wayland natives.
Les applications accessibles via X11 ou XWayland peuvent être détectées. Les fenêtres Wayland natives ne bénéficient pas de cette garantie.
04 — ICÔNE DE ZONE DE NOTIFICATION
La détection indique au logiciel quelle fenêtre est active. Le tray (la petite icône près de l'horloge) dépend du panneau de votre bureau. geetRPCS-linux utilise le protocole StatusNotifierItem : le panneau doit donc posséder un hôte compatible pour afficher l'icône.
Sur GNOME Shell, un hôte ou une extension compatible AppIndicator/StatusNotifierItem peut être nécessaire. Budgie Panel et les panneaux Wayfire doivent eux aussi disposer d'un applet StatusNotifier adapté.
Si aucun hôte de tray n'est disponible, l'interface GTK reste utilisable ; le logiciel prévoit un mode de secours avec sa fenêtre principale.
05 — CLIENT DISCORD
Même si la fenêtre est correctement détectée, la présence ne peut s'afficher que si geetRPCS-linux peut joindre un client Discord compatible et dispose d'un Application ID Discord utilisable.
Le client Linux utilise son socket IPC local. Lancez Discord avant de vérifier l'état de connexion.
Ouvrez les paramètres de Vesktop et activez Enable Rich Presence via arRPC. Vesktop intègre déjà le serveur arRPC.
Le sandbox peut bloquer l'accès au socket de l'hôte. L'installation native est recommandée ; consultez la documentation Vesktop si vous gardez Flatpak.
06 — ENVIRONNEMENTS NON RECENSÉS
Non vérifiéCe n'est pas nécessairement un problème. Cela signifie simplement que la prise en charge n'est pas décrite dans la documentation v0.4.3 utilisée pour cette page. Le bureau peut fonctionner grâce à l'un des mécanismes existants, mais il ne faut pas le considérer comme confirmé sans essai.
Aucun environnement précis n'est explicitement déclaré « non pris en charge » dans cette documentation. La matrice distingue volontairement « non vérifié » et « incompatible ».
07 — PETIT GLOSSAIRE
Quelques mots techniques apparaissent dans les fiches. Voici ce qu'ils veulent dire sans entrer dans les détails d'implémentation.
Un système d'affichage moderne utilisé par de nombreux bureaux Linux. Il protège davantage les informations entre applications ; les méthodes de détection diffèrent donc selon le bureau.
Un système d'affichage plus ancien, encore largement utilisé. Il propose une méthode de lecture de la fenêtre active utilisée par geetRPCS-linux.
La méthode technique qu'utilise le logiciel pour obtenir le nom ou l'identifiant de la fenêtre active dans une session donnée.
Un petit module ajouté au bureau (par exemple GNOME Shell ou KWin) pour transmettre au logiciel une information que le système d'affichage ne lui fournit pas directement.
Une couche de compatibilité qui permet à certaines applications conçues pour X11 de fonctionner dans une session Wayland.
Un protocole qui permet à une application d'afficher son icône et son menu dans la zone de notification d'un panneau Linux compatible.
BASE DOCUMENTAIRE : v0.4.3
Retournez à la présentation du projet pour comprendre ses fonctions, ses prérequis et ses limites actuelles.