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.
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.
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.
- Sous-système Linux : l'accès aux fichiers est plus simple dans Windows 10 May 2019
- Debian, Kali Linux, SUSE ou Ubuntu sous Windows 10 : comment ça marche ?
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.
Notre dossier sur la Build 2020 de Microsoft :
- WSL 2 gèrera les GPU et les interfaces Linux, Terminal 1.0, WinGet en preview
- Reunion d'UWP et Win32, Visual Studio, Live Share et Codespaces
- Au sein de Microsoft 365, Teams reste la star
- C# 9.0 : de nombreuses nouveautés, souvent inspirées de la programmation fonctionnelle
Commentaires (62)
Leur nouveau terminal ressemble fortement à Token2Shell je trouve 😁
Plus ça avance, plus les années Balmer ne deviennent plus qu’un mauvais souvenir pour Microsoft.
Au vu de ces changements de mentalité et cette forte intégration de Linux dans son OS, on peut que se dire que ça prépare le terrain à une autre grosse réforme.
Je pense pas qu’ils abandonneront demain la totalité de leurs technologies, mais vu comment ils intègrent en profondeur un Kernel Linux, il n’y a qu’un pas avant de basculer tout soit sur celui-ci soit son propre noyau Unix (comme MacOS).
Il ne semble par contre toujours pas question d’un support natif des systèmes de fichier ext ou btrfs (par exemple) sous Windows.
Ca finira bien par arriver je pense.
Intéressant tout ça !
Même si je resterai sur un Linux pour le dev, ça peut être utile pour débugger quelque chose rapidement sans avoir à reboot le PC pour changer d’OS.
Les puristes trouveront à redire. Mais ce sont des outils bien pratiques qu’il manquait clairement à Windows.
On ne peut pas dire que Balmer avait complètement tord.
" />
Tu laisse se développer du libre à un endroit et il se métastase dans tout l’organisme.
De plus en plus d’open source dans Windows. Microsoft reconnaît enfin que c’est le modèle dominant. Bon, maintenant il faudrait open sourcer le noyau
" />
Cépafo.
" />
Mais si à son époque Linux était le cancer de l’informatique, Windows en était le furoncle.
Encore un pas avant dans la bonne direction. J’avais testé WSL 1, pour voir si ça pourrait me faire lâcher mon MacBook Pro tout pourri, mais ce n’était pas le cas, notamment à cause de Docker.
On verra avec WSL 2.
Ils pouraient publier direct X en open source et le porter sur Linux ? Ce serait plutôt cool pour avoir encore plus de jeux là dessus.
J’avoue que WSL1 me rend bien service à la maison. C’est chouette qu’ils l’améliore encore, j’étais bloqué sur certaines applications. Qu’il continue dans ce sens j’avoue que de temps en temps, n’avoir pas à lancé la machine virtuelle ça me gagne du temps pour des commandes à la con ^^
Du coup, avec un vrai noyau Linux, ça sera plus facile de faire tourner un environnement de bureau j’imagine.
À la fin Windows deviendra une distro Linux comme une autre, avec un Wine qui est la meilleure solution actuelle pour lancer les applis Windows legacy (quelle ironie !). Si ça permet de virer X pour le remplacer par Wayland ou autres au passage c’est tout bénef !
WOW ! Bientot Windows va enfin devenir utilisable pour faire de l’informatique…
2019 l’année du desktop sur linux !
Sérieusement avec toutes les avancées de Wine & cie, il n’y a plus grand chose qui nous retient captif sur Windows, à part candy crush et les drm
Sauf quand tu as un besoin précis dans certains domaines.
En MAO, même s’il y a de bons softs et Jack, on est loin de faire tourner des vsti sans accrocs.
En graphisme ou en vidéo, il y a bien des alternatives qui s’en sortent bien (comme Blender), mais ce n’est pas aussi redoutable que les solutions qui tournent sous Windows.
Après, si Microsoft passe sur un noyau Linux pour son OS, il faudra bien que les éditeurs portent leurs softs, mais la période de transition ferait très mal, et quid de la rétro-compatibilité matériel/logiciel ?
Certains drivers ne sont déjà plus dispos depuis Win 8, parfois 7…
Je me sens pas particulièrement captif de Windows. Je préfère juste.
Et je préfère d’ailleurs faire mon dev sous Windows que sous Linux.
Et je préfère de LOIN la stack .Net à toutes les autres alternatives à base de Java et cie.
Ah, et je préfère aussi utiliser Windows pour le reste en fait.
Seul exception : les serveurs. Windows Server (2016, 2019) me donnent la gerbe et je les trouve infâme. Debian ou CentOS tous les jours en ce qui me concerne.
Perso je déteste travailler sur linux je trouve ça juste infâme, rien que la tronche des fenêtres pffffffff tu boot ta machine tu déprimes juste à cause des couleurs de la gui et j’en ai testé plein de la m**de en boite. En fait je trouve que ça n’est pas un très bon environnement de travail tout simplement. Je préfère de loin Windows, MacOS j’ai un peu de mal mais on fini par s’y retrouver. Arrrggggg, rien que repenser à unity sur ubundaube me file la gerbe.
Pour le reste j’attend avec impatience WSL2 pour faire tourner des images docker linux plus simplement.
Le nouveau terminal a l’air cool je vais compiler ça se soir et tester la bête.
C’est bien beau une nouvelle app terminal, mais c’est surtout les commandes qui doivent être revues, beaucoup sont imbitables et trop complexes
Bonjour à tous,
" />
Rêvons un peu : si Windows se modifie suffisamment en profondeur, peut-être que d’ici à quelques années on n’aura plus besoin de Wine sur les distros Linux, les développeurs de logiciels prenant en compte plus le monde “Libre” qu’ils ne le font actuellement.
Après ils (les logiciels) seront toujours payants pour certains (Photoshop et consort), mais pouvoir les faire fonctionner directement sous Linux serait déjà une bonne avancée.
Les libristes pur et dur y trouveront toujours à redire, mais c’est mieux que rien du tout.
Rêvons, ça ne coûte rien !
il n’est même pas sorti du vingtième siècle.
" />
Quoique Unity… je partage, mais il y a tant de solutions alternatives.
il a peut-être encore une carte graphique EGA. Là les couleurs
Il y en a encore qui croient à cette bêtise ? Microsoft n’a jamais repris la couche réseau BSD…
Ensuite, Microsoft produit du libre bien plus qu’il n’en récupère…
J’ai même pas voulu répondre.
Vu qu’on finit la plupart du temps en SSH ou en utilisant des services de management, Linux reste bien plus simple à utiliser dans ces domaines là.
Et l’intégration de docker, c’est juste pas le même monde.
Mais j’aime beaucoup un Linux Mint, ou Deepin pour un look vraiment sympa. Et quand je suis obligé de bosser sur du Linux, j’y vais avec plaisir.
Disons que parfois il faut aimer se taper 5 fenêtres avant d’arriver à un truc qui pourrait être directement accessible pour faciliter la vie de tout le monde
" /> (et pour la ligne de commandes, dans certains cas, ça fait gagner du temps si la syntaxe reste simple)
Ou les métriques, mais oui c’est le concept
" />
Petit à petit, Microsoft met en place les pièces du puzzle pour se fabriquer son MacOS-X à lui, à savoir une base unix (ou apparentée unix) avec une interface propriétaire.
Sinon, même politque que avec Ms Office, OS2, netscape, …
Phase1 Embrace, en cours
Embrace, extend and extinguish:
https://fr.wikipedia.org/wiki/Embrace,_extend_and_extinguish
Bientôt la vitrine de Microsoft : « tout ce que vous faites sur Linux, vous pouvez maintenant le faire chez nous »
Ce n’est pas de moi, mais je suis d’accord, Source sur demande
GG
" />
Microsoft a pris un virage intéressant depuis le changement de PDG, et c’est tant mieux. On peut les critiquer tant qu’on veut, mais comme dit plus haut, qui a osé le faire jusqu’ici à part eux (dans des entreprises de cette taille). En tout cas pas IBM (je sais de quoi je parle, je le vois tous les jours).
Concernant, Mac OS, on voit de plus en plus qu’Apple intègre des applications IOS à l’intérieur. Moi, j’y vois la fin des OS complètement séparés, la synergie se faisant d’ailleurs très bien sur IPad Pro.
Pour en revenir à la news. Grâce aux conseils récoltés sur une autre news parlant de WSL, je m’y suis mis sur mon PC pro (verrouillé sur Windows) en remplacement d’un Ubuntu sur VMWare. J’ai donc pu y installer facilement Apache, PHP et Git tout en accédant aux fichiers via un lien symbolique vers le montage Windows /mnt/c.
Et le résultat est franchement intéressant. Ca n’est pas parfait car la lecture des fichiers/écritures des fichiers est plus lente côté bash Ubuntu mais clairement je préfère ça à une machine virtuelle mono-écran. Sans compter que ça permet de tester son site en local sur Edge (voir IE).
Quel troll de bas de gamme, tu nous as habitués à mieux…
Puisque nous sommes en mode 3615 mylife…
Je suis passé de Windows à Linux la première fois que Windows a irrémédiablement crashé. J’étais en mode agonie “j’ai tout perdu”.
Un ami m’a parlé de Knoppix : j’ai téléchargé et gravé sur le pc de mon frère, lancé, et admiré : démarrage automatique, système complet avec environnement et réseau sans aucune action utilisateur, un clic pour monter automatiquement les partitions et les exposer en partage Samba -> données sauvegardées.
Ce jour là, j’ai décidé d’apprendre les bases de l’informatique et de l’admin système (notamment le partitionnement parce qu’il faut pas déconner). Depuis ce jour, les seuls plantages conséquents que j’ai eu avec Linux ayant entraîné de la perte de données se comptent sur les doigts d’une main, et résultaient de l’usage de softs en alpha qui annonçaient la couleur (notamment l’équivalent linux de Supercopier à ses débuts).
En quoi Linux est mieux que Windows depuis 20 ans ?
Et quand tu mets à jour, tu peux toujours utiliser ton pc tranquillou contrairement à cette merde de Windows qui te bloque sur un écran pour x minutes.
Et quand il y a un problème, dans 99% des cas, le système te donne une information humainement lisible : même si toi tu ne comprends pas, tu as de bonnes chances de trouver une explication sur le net, ou au pire trouver quelqu’un qui saura comprendre. À comparer avec les codes d’erreur imbitables de Windows.
D’ailleurs, la ligne de commande, parlons-en : sous réserve de soucis matériels (confer mon point plus bas) ou du besoin d’installer des logiciels non mainstream, tu peux complètement, je dis bien, COMPLÈTEMENT, te passer de la ligne de commande depuis 2010.
“Mais, dans ce cas, pourquoi donc voit-on encore de la ligne de commande partout ?”
Très simple.
Qu’il s’agisse de faire de la gestion de fichiers de masse par caractéristiques (“chopes tous les mp3 et fous les sur mon disque externe”, “vire moi toutes les versions de ce document qui ont plus d’un mois”, “trouve moi le document que j’ai commancé à écrire mais dont j’ignore et le nom exact et le type de fichier”), de l’administration système basique (“montre-moi quels sont les fucking sous-répertoires qui prennent le plus de place”, “dis-moi quelles extensions sont dispo pour mon logiciel”), ou de l’administration avancée / du dev (“trouve-moi tous les fichiers de configuration ayant telle clé”, “modifie mot-clé A par B mais uniquement dans les lignes correspondant à tel motif, dans tel ensemble de fichiers”)…
Absolument AUCUN outil ne pourra jamais fournir à la fois la rapidité et l’adaptabilité de l’intelligence humaine à qui tu fournit un langage et des opérations de base à combiner.
La ligne de commande, ce n’est pas une plaie, c’est une bénédiction, un investissement 1000 fois rentable. Faut juste accepter de brancher son cerveau pendant le temps nécessaire pour assimiler les commandes utiles pour son usage, et apprendre comment on peut les combiner.
En fait, le seul vrai prix à payer pour avoir une expérience informatique sereine avec Linux c’est…
Peut-être que pour certains c’est bloquant, pour moi ça n’a jamais été un problème : de toute façon comme ça ton budget est moins violent (surtout pour proc/carte graphique / réseau), et pour les périphériques type imprimante ou casque grosso modo il n’y a pas d’innovation réellement impressionnante depuis des années.
Comme tu le dis si bien, c’est 3615 MyLife… Ce qui n’est en rien représentatif de l’utilisation moyenne d’un PC par monsieur/madame tout le monde.
Ce qui te parait normal et simple via une ligne de commande, va paraitre abscons et compliqué pour le commun des mortels.
J’ai essayé, mais ça ne fonctionne pas, quand je redémarre, ça me dit “Operating system not found” ?
" />