Journal wlr-utils : je voulais juste un sélecteur de fenêtres, je me suis retrouvé avec une suite de capture pour Wayland

Posté par  . Licence CC By‑SA.
18
25
juin
2026

Bonjour LinuxFr,

C'est un peu ma première sortie publique, alors soyez indulgents. 🙂

Au départ, je voulais juste un sélecteur de fenêtres correct pour les outils de videoconf sous Wayland — aucune solution existante ne me convenait vraiment. J'ai donc commencé à écrire wlr-chooser… et je me suis un peu laissé embarquer. C'est devenu wlr-utils, une petite suite de cinq outils pour compositeurs wlroots, partageant tous le même moteur de capture.

wlr-draw — annoter en direct sur l'écran

Voilà ce qu'il y a dans la boîte :

  • wlr-chooser / wlr-switcher — sélecteur de fenêtres/écran (xdg-desktop-portal-wlr), et un switcher Alt-Tab/exposé avec aperçus en direct (bande façon macOS, grille plein écran ou carte)
  • wlr-peek — inspecter l'écran : pipette + loupe, OCR, miroir PiP en direct (fenêtre ou région), surveillance de zone (watch), et « visual grep »
  • wlr-shot — captures (zone/fenêtre/écran, vers le presse-papiers) + enregistrement (H.264, GIF/WebP animé, son système, timelapse ; NVENC/VAAPI/libx264)
  • wlr-draw — dessiner et annoter en direct sur l'écran, façon gromit-mpx : main levée, formes, flèches, texte, spotlight de présentation, freeze-frame
  • wlr-capture — la bibliothèque partagée : le moteur de capture wlroots

wlr-switcher — Alt-Tab / exposé avec aperçus en direct

Sous le capot, tout repose sur une capture GPU zero-copy pleine résolution (ext-image-copy-capture-v1, import dma-buf directement dans un rendu egui/EGL, avec repli CPU shm). Ça voit les fenêtres masquées et hors espace de travail, sans XWayland. Le tout en Rust, thémable, et traduit en 13 langues.

L'idée n'est surtout pas de remplacer les excellents outils qu'on utilise déjà — grim/slurp, wf-recorder, satty, gromit-mpx… — ils m'ont au contraire servi d'inspiration. C'est juste une option de plus sur la pile, née d'une envie de gratter là où ça me démangeait. Et j'aimerais beaucoup savoir comment ça se comporte ailleurs que sur mes machines : ça vise Sway en priorité, mais Hyprland et niri devraient fonctionner, et une commande wlr-peek doctor vérifie votre compositeur.

Bref, c'est jeune et les beta-testeurs comme les retours sont très bienvenus — rapports de bugs, « c'est bizarre sous niri », traductions, idées, tout est utile.

Merci d'avoir jeté un œil. 🦀

  • # full wlroots

    Posté par  (site web personnel) . Évalué à 5 (+3/-0).

    J'adore wayland et je suis entrain de commencer à m'amuser à coder un compositeur.

    Plus j'entre dans les détails plus je me rends compte que c'est ultra fragmenté. Certains outils fonctionnent sur un compositeurs et pas sur d'autres. C'est normal, chaque compositeur implémente ses propres protocols sur ce qui n'est pas en standard. C'est dommage même si certains protocols (XDG notamment) essaye de généraliser ça.

    Du coup, ce lot d'outils ne fonctionnent qu'avec les wlroots. Donc pas hyprland, velox, ni GNOME, KDE et xfwm+

    AI is a mental disorder

    • [^] # Re: full wlroots

      Posté par  . Évalué à 1 (+1/-0). Dernière modification le 26 juin 2026 à 10:02.

      Oui c'est fragmenté. Normalement, ça fonctionne avec hyprland, qui est aussi basé sur wlroots. Pas avec Gnome/KDE/xfwm+, cependant… J'aurais du préciser "wlroots" dans le titre plutôt que Wayland, my bad.

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.