This One Annoying Linux Problem Is Finally Ending

La vidéo explique la transition en cours dans l'écosystème Linux, notamment chez KDE, pour remplacer les systèmes de stockage de mots de passe propriétaires (comme KWallet) par une API standardisée et transparente, Secret Service, afin de résoudre les problèmes d'ergon...

Voir la source

SYNTHÈSE STRUCTURÉE

Le problème universel des « wallets »

L’intervenant commence par décrire une frustration commune à de nombreux utilisateurs de Linux : les fenêtres contextuelles intempestives demandant la création ou le déverrouillage d’un « portefeuille » (KWallet sous KDE, GNOME Keyring, etc.). Ces pop-ups, souvent incompris, apparaissent lors de l’ouverture d’applications comme Spotify et gênent l’expérience utilisateur. Le narrateur souligne que ces systèmes “font un travail horrible” pour expliquer leur fonction et sont conçus de manière peu pratique, alors qu’ils devraient être entièrement transparents et liés au mot de passe de la session.

La réponse initiale : ne pas désactiver, mais attendre

Face aux demandes répétées pour désactiver ces services, Nate Graham (un contributeur majeur de KDE) conseille dans un fil de discussion de ne pas les désactiver, mais simplement de créer le portefeuille avec le mot de passe de son compte utilisateur. Il annonce surtout que “Dans un futur proche, cela disparaîtra”. Cette promesse intrigue le narrateur et sert de point de départ à son investigation sur l’avenir de ces systèmes.

La mission des « wallets » : stocker des secrets

Avant d’aborder les solutions, la vidéo rappelle l’utilité de ces services. Ils sont conçus pour stocker de manière sécurisée des clés et des mots de passe système, comme les clés SSH ou les accès au gestionnaire de mots de passe du navigateur. Leur désactivation, bien que courante, a un coût : “Ils sont en réalité sauvegardés en texte clair, mais c’est ce que vous ratez”, explique l’intervenant, citant un commentaire d’utilisateur.

L’émergence du standard Secret Service

Le problème historique identifié est le manque d’interopérabilité entre les différents systèmes (KWallet, GNOME Keyring, etc.), créant un “gros désordre” pour les utilisateurs changeant d’environnement de bureau. Pour y remédier, un standard DBus appelé Secret Service a été développé. Des acteurs majeurs comme KWallet, GNOME Keyring et KeePassXC ont adopté cette interface commune, permettant enfin un stockage unifié des mots de passe.

La transition technique chez KDE

KDE a entamé une refonte technique pour adopter ce standard. L’ancien service KWalletD a été scindé en deux : une couche de compatibilité pour l’ancienne API KWallet (pour les applications non migrées) et un nouveau service, KSecretD, qui expose uniquement l’API Secret Service. Cette découplage permet une transition transparente pour l’utilisateur et une feuille de route de développement indépendante.

Le rôle clé de QtKeychain

Pour faciliter la migration des applications, KDE promeut l’utilisation de la bibliothèque QtKeychain. Celle-ci agit comme une abstraction : elle utilise l’API Secret Service sous Linux, mais se connecte automatiquement aux systèmes natifs de stockage sécurisé sous Windows, macOS ou Android. Cela simplifie grandement le développement d’applications multiplateformes et constitue un avantage majeur de l’écosystème Qt.

Une nouvelle application de gestion : KeepSecret

Un autre point bloquant était l’outil de gestion, KWalletManager, qui ne parlait que l’API KWallet et paraissait daté. Un nouveau gestionnaire, KeepSecret, est en développement. Son but est d’être un client purement Secret Service, capable d’afficher et de gérer les mots de passe de n’importe quel fournisseur (KWallet, GNOME Keyring, KeePassXC, etc.), avec une interface moderne et un design KDE.

L’intégration du fournisseur oo7

La dernière pièce du puzzle est l’intégration d’un nouveau fournisseur Secret Service prometteur : oo7. Écrit en Rust, il est décrit comme “très sympa, léger et multiplateforme”. Sa particularité est de ne pas imposer sa propre interface graphique pour les demandes de mot de passe. À la place, comme les Portails de Bureau, il s’appuie sur l’environnement de bureau pour afficher des dialogues natifs. Cette intégration, déjà disponible dans Plasma 6.6, garantit une expérience utilisateur cohérente, que l’on utilise Plasma, GNOME ou Cosmic.

L’objectif final : l’invisibilité pour l’utilisateur

Le message récurrent de tous ces développements est la recherche de la transparence. L’idéal, tel que décrit par les développeurs, est que “Pour l’utilisateur, l’ensemble du système devrait être juste invisible”. Le système devrait se déverrouiller automatiquement à l’ouverture de session, sans pop-up intrusif. Le travail en cours sur l’intégration d’oo7 et la migration vers QtKeychain vise précisément à atteindre cet objectif.

Un chantier encore en cours

La transition n’est pas terminée. Une “issue de suivi” répertorie tout ce qui reste à porter vers les API QtKeychain, notamment au sein de Plasma lui-même. De nombreuses applications tierces continueront d’utiliser l’ancienne API KWallet pendant un temps. L’intervenant encourage d’ailleurs les personnes intéressées à contribuer à “nettoyer ce désordre”, soulignant que la communauté perçoit ces systèmes comme “très bogués”.

CONCEPTS CLÉS

  • KWallet / GNOME Keyring : Les systèmes historiques et propriétaires de KDE et GNOME pour stocker des secrets (mots de passe, clés).
  • Secret Service : Une API standardisée (sur DBus) qui définit une interface commune pour le stockage et la récupération de secrets, permettant l’interopérabilité entre différents environnements.
  • QtKeychain : Une bibliothèque Qt qui abstrait le stockage sécurisé de secrets. Elle utilise Secret Service sous Linux et les API natives sur d’autres plateformes, simplifiant le développement multiplateforme.
  • oo7 : Un nouveau fournisseur (backend) pour l’API Secret Service, écrit en Rust, conçu pour être léger, multiplateforme et s’intégrer nativement aux environnements de bureau.
  • KSecretD : Le nouveau service de KDE qui implémente l’API Secret Service, remplaçant progressivement l’ancien KWalletD.
  • KeepSecret : La nouvelle application cliente en développement pour gérer les secrets via l’API Secret Service, indépendante du backend utilisé.

CONCLUSION

Le message principal est qu’un effort silencieux mais majeur est en cours pour résoudre l’un des points de friction historiques des bureaux Linux : la gestion opaque et irritante des mots de passe système. En standardisant autour de l’API Secret Service et en favorisant des fournisseurs modernes et bien intégrés comme oo7, les développeurs visent à rendre le stockage sécurisé complètement transparent pour l’utilisateur final. Cela compte car cela améliore directement l’expérience quotidienne, supprime une source de confusion et de frustration, et jette les bases d’une interopérabilité réelle entre les différents environnements de bureau, un rêve longtemps caressé par la communauté Linux.

Du même canal

Tout voir