Windows 10 intégrera un noyau Linux 4.19, WSL 2 et un Terminal repensé

Docker sous Windows, c'est enfin facile ! 62
Accès libre
image dediée
OS BUILD
David Legrand

Microsoft continue son offensive pour séduire les développeurs en travaillant sur des solutions open source et en intégrant Linux de manière croissante. Un nouveau Terminal arrive dans Windows 10 ainsi... qu'un noyau Linux complet, avec tous ses avantages. 

Dans les dernières évolutions de Windows 10, Microsoft a montré un interêt particulier pour un élément jusque là délaissé : l'invite de commandes. Les changements étaient principalement techniques et en profondeur comme nous l'avions relevé dans un article sur l'alternative Cmder, préparant des changements plus visibles et importants.

Il faut dire que pour Microsoft, l'enjeu est de taille. Avec le temps, la société a intégré PowerShell à Windows 10, puis le sous-sytème Linux permettant l'accès à un Bash avec des performances natives, et désormais une gestion de fichiers dédiée. Mais tout cela s'est fait dans des terminaux distincts, sans évolution de l'originel.

Or, il est à des années lumière de ce que l'on trouve dans les distributions Linux avec des outils comme Tilix ou des alternatives pour Windows qui font bien mieux que ce que propose Microsoft, avec des fonctionnalités demandées par les développeurs : interface unifiée, onglets et multi-fenêtres, configuration complète, etc.

C'est là que Windows Terminal entrera en jeu dès le mois de juin. Il sera accompagné de deux évolutions de taille : l'intégration d'un noyau Linux 4.19 complet ainsi qu'une nouvelle version du sous-système Linux (WSL 2).

Windows Terminal : thèmes, liens, émojis, onglets, tout-en-un, open source

Au quotidien, l'invite de commandes peut être une plaie pour les développeurs tant il est éloigné des besoins actuels en la matière. Microsoft semble enfin l'avoir compris avec ce nouveau projet, entendu open source. Le code est diffusé sur GitHub sous licence MIT, avec celui de la console Windows actuelle. 

Première fonctionnalité, l'unification des terminaux, à la manière de ce que l'on trouvait déjà ailleurs dans Cmder ou Visual Studio Code par exemple. Ainsi, il sera possible de lancer une fenêtre pour l'invite de commandes classique, PowerShell (Core) ou les différentes distributions WSL. Une approche permettant à l'équipe de ne pas « casser » l'existant, donc d'aller plus loin dans les avancées introduites qu'une modification de l'invite de commandes classique. 

Chaque type de terminal pourra être ouvert dans une nouvelle fenêtre ou un nouvel onglet, un logo représentant chaque cas pour plus de clarté. Des thèmes sont également prévus, quelques exemples colorés ayant été exposés. Il ne semble par contre pour le moment pas prévu d'afficher ces onglets de manière simultanée dans un même fenêtre.

  • Windows Terminal
  • Windows Terminal
  • Windows Terminal
  • Windows Terminal
  • Windows Terminal

D'autres évolutions, en apparence anodines, ont un aspect fondamental, comme les émojis. Ils peuvent en effet être utilisés pour indiquer facilement un statut de manière graphique dans une interface textuelle. Ils sont accompagnés d'une nouvelle police open source, de la gestion d'autres symboles (idéogrammes CJC, symboles powerline, icônes, ligatures) et des liens. Le tout bénéficie d'une accélération graphique via DirectWrite/DirectX. 

Surtout, l'ensemble est présenté comme extrêmement configurable, les paramètres étant stockés dans un fichier structuré qui peut donc être facilement modifié à la main et partagé avec d'autres. Des profils peuvent aussi être créés pour les différentes consoles, permettant là aussi de renforcer la clarté dans l'usage au quotidien. 

Une première préversion sera disponible cet été dans le Microsoft Store. La version stable est attendue pour fin 2019.

WSL 2 : un noyau Linux 4.19 (LTS) dans Windows 10

Après avoir introduit le sous-système Linux (WSL) à son OS il y a un peu plus de deux ans, Microsoft va plus loin en y intégrant désormais un noyau complet. La société proposait déjà son propre noyau pour Azure Sphere, elle participera ainsi à son développement de manière croissante, des patchs locaux étant appliqués pour l'intégration à Windows 10.

Une évolution qui vise à rendre l'expérience du sous-système Linux plus complète. Cette nouveauté est d'ailleurs présentée comme WSL 2, les deux versions devant cohabiter au moins dans un premier temps. Ainsi, un utilisateur pourra lancer un bash Linux WSL 1 ou WSL 2 selon ses besoins, le mettre à jour ou le rétrograder, etc.

Microsoft ne détaille pour le moment pas la manière dont cette v2 fonctionne, précisant juste qu'il s'agit cette fois de virtualisation, mais d'assez bas niveau avec une empreinte minimale, une bonne intégration et une transparence totale pour l'utilisateur qui ne verra pas de différence dans la pratique : il lance l'application, le terminal s'ouvre, il peut l'utiliser.

Microsoft WSL 2Microsoft WSL 2

Compatibilité et performances renforcées, Docker et FUSE supportés

WSL 2 sera plus rapide, notamment pour la gestion des fichiers, qui a posé pas mal de problèmes à WSL 1. Une décompression doit ainsi s'exécuter 20 fois plus rapidement, contre 2 à 5 fois pour une opération comme la récupération d'un dépôt Git, l'installation d'un paquet npm ou une compilation Cmake. 

Autre intérêt, la compatibilité complète par rapport à une solution nécessitant de « traduire » les appels système pour le noyau Windows NT, impliquant des carences et donc des applications qui ne fonctionnaient pas. On peut ainsi désormais faire tourner des systèmes de fichiers dans l'espace utilisateur (FUSE) ou Docker directement via WSL 2.

Comme actuellement, WSL 2 passera par l'installation de distributions via le Microsoft Store, Ubuntu en sera. Il s'agira alors de récupérer des espaces utilisateurs à « brancher » au noyau Linux intégré, un petit script initiant le lien entre les deux. Le noyau sera pour sa part mis à jour via Windows Update, les détails de son évolution étant donnés par ici

Une première version sera disponible à travers le programme Insider de Windows 10 d'ici fin juin. On imagine que l'objectif est une finalisation pour la mise à jour de fin d'année. Il ne semble par contre toujours pas question d'un support natif des systèmes de fichier ext ou btrfs (par exemple) sous Windows.


chargement
Chargement des commentaires...