- Le développement de Karton, un gestionnaire de machines virtuelles dédié à KDE Plasma, a été officiellement confirmé
- Le projet est conçu sur la base de Qt Quick et Kirigami, afin d’être optimisé pour l’environnement KDE
- Il vise à utiliser l’API libvirt pour contrôler diverses machines virtuelles et, à terme, prendre en charge plusieurs plateformes
- Parmi les fonctions principales figurent un visualiseur SPICE personnalisé, les instantanés, une interface intuitive et la prise en charge du basculement d’hyperviseur entre système et utilisateur
- Selon le calendrier de Google Summer of Code 2025, le projet devrait être achevé vers septembre 2025
Contexte et nécessité du développement de Karton
- Dans l’environnement GNOME, des outils simples et cohérents pour exécuter des machines virtuelles existent déjà, comme GNOME Boxes
- Les utilisateurs de KDE ont utilisé des alternatives comme qt-virt-manager, mais ont dû faire face à l’arrêt du développement et à un manque d’identité propre à KDE
- Le besoin d’une solution de gestion de VM naturellement intégrée à l’environnement KDE Plasma moderne s’est donc accru
Aperçu du projet Karton
- Karton est né d’une tentative de frontend QEMU, avant d’être véritablement lancé comme projet Google Summer of Code par le développeur KDE Harald Sitter
- Derek Lin, de l’University of Waterloo, participe actuellement activement au développement dans le cadre du Google Summer of Code 2025
- L’objectif de Karton est de fournir un outil natif de gestion de machines virtuelles adapté à l’écosystème KDE
Principales technologies et caractéristiques
- Karton est développé avec Qt Quick et Kirigami, avec l’ambition d’une intégration visuelle et ergonomique complète à KDE Plasma
- Via l’API libvirt, il offre la gestion des machines virtuelles et de l’extensibilité, tout en gardant à l’esprit une prise en charge multiplateforme à l’avenir
- Au lieu d’appeler directement le CLI virt-install, le projet exploite libosinfo pour reconnaître automatiquement les images système et générer automatiquement le XML libvirt
- L’extension de la configuration des périphériques et la prise en charge de divers hyperviseurs font aussi partie des chantiers de développement
Fonctions principales et calendrier cible
Les fonctionnalités indiquées par Lin dans sa proposition Google Summer of Code sont les suivantes
- Installation et configuration de machines virtuelles via le format XML libvirt
- Développement d’un visualiseur SPICE personnalisé basé sur Qt Quick (en remplacement de virt-viewer)
- Fonction d’instantanés de machines virtuelles (sauvegarde/restauration)
- GUI intuitive et soignée avec aperçu, intégrant les retours de la communauté
- Design inspiré de la disposition en liste de MacOS UTM
- Interface adaptée aux usages mobiles
- Gestion efficace des mises à jour d’état en temps réel via la fonction
virEventRegisterImpl - Fonction de navigation affichant une liste des principaux systèmes d’exploitation
- Graphiques d’utilisation GPU/mémoire (dans le style de virt-manager)
- Fonction de bascule entre les modes session (utilisateur) et système (root) de l’hyperviseur QEMU
Calendrier de développement
- La date officielle de début du codage pour Google Summer of Code 2025 est fixée au 2 juin 2025
- Il est prévu qu’un prototype pour l’évaluation intermédiaire soit achevé le 14 juillet, et que la date limite de remise de la version finale soit le 1er septembre
Conclusion
- Karton est un nouveau projet appelé à résoudre un problème ancien : l’absence d’un outil natif de gestion de machines virtuelles optimisé pour KDE
- En proposant à la fois visibilité et ergonomie conformément aux technologies modernes propres à Qt et KDE, il représente une évolution significative pour les utilisateurs et développeurs du bureau Linux
1 commentaires
Commentaire Hacker News
À mon avis, KDE devrait se concentrer sur les fonctions de base comme l’agencement des fenêtres, le rendu des fenêtres et les icônes du lanceur d’applications. Si j’ai besoin de machines virtuelles, j’utilise un logiciel de virtualisation séparé. La suite intégrée de KDE comprend certes quelques bons logiciels, mais je ne pense pas qu’ils aient besoin d’être liés de force à l’environnement de bureau. Un gestionnaire de fichiers, un VTE et un éditeur de texte suffisent. J’aimerais qu’on gère les icônes séparément pour chaque application. Les tentatives d’icônes unifiées ne font au contraire que provoquer des problèmes, comme des icônes invisibles ou des icônes noires sur fond noir
Il semble y avoir une confusion entre le projet KDE et Plasma. Plasma est l’environnement de bureau, tandis que le projet KDE développe et distribue diverses applications. Beaucoup d’applications KDE fonctionnent aussi sur d’autres OS, comme Windows, et on peut utiliser Plasma seul sans les autres applications KDE. Historiquement, on appelait l’environnement de bureau « KDE », mais aujourd’hui ce n’est plus qu’un des nombreux logiciels développés par le projet KDE. Je ne suis pas non plus d’accord avec les thèmes d’icônes, et moi non plus je n’en utilise pas
KDE développe divers outils depuis plus de 20 ans : navigateur, client e-mail, application de gestion des contacts, etc. Il y avait déjà un explorateur de fichiers à l’époque de KDE 1, et une suite bureautique était déjà en développement. La suite KDE existe depuis l’origine. Plasma ne représente qu’une toute petite partie de ce que développe KDE. Si on veut seulement un gestionnaire de fenêtres, il existe des alternatives plus minimalistes comme LXDE, Hyprland, Sway ou i3
Les tentatives de faire des icônes un asset commun intégré aux applications échouent toujours. La communauté GNOME a bien géré cet aspect. Voir https://stopthemingmy.app/. Le support d’une cohérence thématique cross-app n’était qu’un fantasme des années 90 et, en pratique, cela n’était convaincant que pour des captures d’écran
C’est pour ça que je suis passé à sway. Il faut de l’intégration entre les différentes parties du système, mais chaque partie devrait rester séparée. GNOME et KDE ne sont bien que si on utilise absolument tout. XFCE est en fait bien plus modulaire
Je trouve un peu dommage que la plupart des commentaires parlent d’autre chose que de l’article. J’attends avec impatience ce nouveau gestionnaire de VM. J’utilise surtout virt-manager, mais il est presque plus maintenu, donc les problèmes de mise à l’échelle sur écran HiDPI sont graves. GNOME Boxes a trop de bugs et manque de fonctions. On a l’impression que tout l’effort est mis sur le CLI
virsh, si bien qu’il n’y a plus vraiment de GUI de VM convenable aujourd’huiJ’utilise KDE Plasma sur Arch et j’adore cet environnement. Il intègre même un filtre de lumière bleue. Je n’ai aucune intention de revenir à Windows. KDE est plus rapide, plus beau, et il n’y a ni pub ni pistage non désiré. C’est excellent au quotidien
Je teste Cachy et Plasma dans une VM, et je compte installer directement cette combinaison sur mon prochain PC. Aujourd’hui j’ai un dual boot Ubuntu et Windows, mais cela fait plus de 6 mois que je ne me suis pas connecté à Windows. Mon prochain PC n’aura probablement même plus de dual boot
J’ai utilisé GNOME pendant un an avant de revenir à Plasma. GNOME est trop pénible. Les extensions servent de rustines temporaires, mais elles cassent dès qu’il y a une mise à jour. L’interface en anglais et la configuration des unités ISO sont compliquées. Pour gérer les programmes au démarrage, il faut installer une application séparée. La mise à l’échelle, le multi-écran et l’enregistrement d’écran sont tous médiocres. J’ai un écran 60 fps mais le pointeur de souris saccade. Masquer les claviers suédois, sami et svdvorak n’aide guère non plus. Le copier-coller ne fonctionne pas entre les écrans. Si on change de fenêtre avec alt+tab, le glisser-déposer ne marche plus. Lorsqu’un menu contextuel s’ouvre, tout le focus est bloqué, donc si Nautilus ouvre une boîte de dialogue de copie de fichiers, on ne peut plus cliquer dans les autres applis. Après avoir essayé KDE par erreur dans une VM, j’ai compris qu’il n’y avait plus aucune raison de supporter l’inconfort de GNOME. Le jour même, je suis revenu à openSUSE
J’ai découvert KDE 1.0 il y a une vingtaine d’années. À l’époque, ça donnait un peu l’impression d’imiter Windows, mais dans mon souvenir c’était au contraire plus abouti
Cela fait 3 ans que j’utilise Ubuntu + Plasma au quotidien. Pour moi, c’est ce que Windows 7 rêvait d’être. Du point de vue d’un ingénieur dotnet et devops, les années 2020 sont le moment parfait où la toolchain Linux et la maturité de l’open source s’alignent complètement. Rider, datagrip, vscode, tout fonctionne bien. Il n’y a pas non plus les complications de docker ou de wsl. Je ne démarre Windows que pour lancer de vieilles versions de .NET Framework, et avec un réglage de démarrage NVMe Windows dans une VM, j’ai l’impression de pouvoir m’en libérer totalement à tout moment
Ce dont KDE a besoin, ce ne sont pas de nouvelles fonctionnalités, mais de moins de bugs
Je me plaignais toujours des bugs de KDE moi aussi, mais depuis la version 6.3 je n’ai plus rencontré de bug grave depuis 10 ans. Si cela fait un moment que vous ne l’avez pas utilisé, ça vaut la peine de lui redonner sa chance
Je pense à peu près la même chose. J’ai essayé plusieurs fois, mais KDE m’a toujours semblé moins stable et moins abouti que GNOME. C’est probablement lié au fort niveau de personnalisation de KDE. Le concept me plaît, mais ce n’est pas facile à maintenir, et les développeurs semblent souvent plus attirés par l’ajout de nouvelles fonctions que par la correction de bugs
J’aimerais que KDE propose une solution VM intégrée. Ce serait bien si les applications tournant dans la VM pouvaient apparaître comme des fenêtres Kwin. Cela nécessiterait peut-être un démon helper dans l’OS invité. Il y a déjà eu des fonctions similaires par le passé, mais ce serait fantastique que ce soit proposé officiellement par les grands DE
Étonnamment, Windows prend en charge cette fonction via WSL2. Un jour, j’ai lancé
nautiluspour plaisanter et j’ai été blufféJe mets en place une expérience presque identique avec VirtualBox. Je fais tourner plusieurs VM sur mon portable et, quand je branche un écran externe, je peux redimensionner librement les fenêtres. Quand je débranche l’écran, les fenêtres rétrécissent automatiquement à nouveau. Avec le partage du presse-papiers et d’autres éléments, cela ressemble presque à du natif. J’exploite des VM séparées selon l’usage : une pour le navigateur quotidien, une pour les projets contractuels, etc. J’assigne les bureaux virtuels à l’hôte et un bureau unique à la VM. J’ai configuré alt+tab pour qu’il ne fonctionne qu’à l’intérieur de la VM. Je supporte les bugs divers de VirtualBox et les risques juridiques liés à Oracle, mais comme QEMU ou KVM sont encore moins aboutis, je reste malgré tout sur VirtualBox
Techniquement, cela demande pas mal de hacks. C’est difficile avec un OS fermé, et seul Windows le prend en charge via RDP
On peut aussi essayer une approche plus légère et moins gourmande en ressources avec debboostrap et des montages chroot
Parmi les solutions actuelles, aucune ne le gère parfaitement. Le forwarding X11 est possible, mais il demande de la configuration et ce n’est pas fluide. Je n’ai pas encore trouvé de client/serveur qui prenne cela en charge nativement sous Linux
Je suis très content qu’on puisse choisir une alternative à virt-manager, surtout qu’elle soit basée sur Qt. Je trouve dommage l’usage de Kirigami et de Qt Quick. J’ai l’impression que l’apparence comme les fonctions sont inférieures à ce qu’on obtient avec Qt Widgets
Je pense qu’une alternative à virt-manager est nécessaire. Même des fonctions ordinaires comme la recherche textuelle dans le XML ou undo sont peu pratiques. Donner un nom lié à KDE paraît un peu daté, mais je trouve que Karton est quand même mieux
Le shell Plasma lui-même est basé sur Kirigami et Qt Quick, donc difficile de faire plus cohérent comme intégration
Les saccades propres au rendu QML ne peuvent être évitées qu’avec une licence Qt commerciale. En contrepartie, cela permet de créer des applis avec une syntaxe proche de JSON
Qt Quick est un peu plus générique, et Kirigami est une couche plus spécialisée par-dessus
J’aime la richesse et le côté abouti de KDE, mais son design me paraît daté par rapport aux autres OS ou DM actuels. On peut le personnaliser, mais plus on le fait, plus le système devient lent et maladroit. C’est pour cela que je choisis GNOME
Je trouve amusant que beaucoup de gens aient exactement l’avis inverse. Personnellement, KDE est le seul environnement que je trouve vraiment moderne et beau
Je me demande si vous avez essayé Plasma 6. Personnellement, je le trouve bien plus moderne que GNOME
Je pense que le design de KDE est bien supérieur à celui de Windows. J’ai l’impression que Windows réussit toujours à battre son propre record du pire design de bureau
S’ils ajoutaient ne serait-ce qu’un menu hamburger, je retournerais immédiatement sur KDE. Je viens de vérifier : KDE suit aussi cette tendance, mais heureusement on peut la désactiver via une option
Je me demande vraiment s’il faut encore une GUI pour kvm/qemu. Je trouve que cockpit-project est déjà très bien conçu pour cet usage
virt-manager m’a toujours largement satisfait jusqu’ici, donc je ne sais pas s’il fallait vraiment une nouvelle alternative. Cela dit, la concurrence est toujours bienvenue
Une interface web convient aux utilisateurs experts, mais elle reste difficile pour les utilisateurs ordinaires. Le concept même de VM est déjà compliqué, et une UI familière comme VirtualBox ou VMWare est plus accessible
J’utilise virt-manager depuis longtemps, donc j’attends avec beaucoup d’intérêt une solution native KDE. J’attends aussi le support du rendu Vulkan de virt-manager (
libvirt). L’UI basée sur Kirigami me paraît étouffante à cause des marges trop larges. J’ai eu une impression similaire avec l’UI Kirigami de print-managerÀ l’époque, aqemu était mon frontend préféré. C’est dommage qu’il ne soit plus maintenu depuis déjà plus de 10 ans