Microsoft a lancé hier la BUILD 2020, son équivalent de la WWDC convertie cette année en un événement en ligne. L’entreprise a ainsi pu présenter les nouveautés à venir pour sa plateforme, et notamment les nouveautés dédiées aux développeurs pour Windows 10. Poursuivant une stratégie lancée en 2016, c’est notamment du côté de Linux que la firme de Redmond avait des annonces à faire.
Depuis quatre ans en effet, Windows 10 intègre le Windows Subsystem for Linux ou WSL. La première version émulait un noyau Linux pour permettre de lancer les outils en ligne de commande disponibles dans cet univers. L’an dernier, Microsoft avait annoncé une mise à jour majeure, qui est désormais disponible : WSL 2 repose désormais sur un vrai noyau Linux, qui fonctionne en parallèle de Windows grâce à un hyperviseur. Cela reste de la virtualisation, mais beaucoup plus performante, puisque l’on est beaucoup plus proche d’une installation « propre » d’une distribution GNU/Linux.
Cette meilleure intégration va permettre à Microsoft d’offrir plusieurs nouveautés. La plus symbolique est la possibilité d’utiliser non plus seulement les outils en ligne de commande issus de l’univers Linux, mais aussi les apps graphiques. En fait, c’était déjà possible, mais les performances étaient trop mauvaises pour l’envisager au quotidien. Une future version de Windows 10 activera toutefois l’accélération graphique du système pour les apps Linux, ce qui devrait permettre de bénéficier de performances similaires sur les deux systèmes.
Cette nouveauté est en fait l’heureuse conséquence d’un changement plus important. DirectX, l’API 3D de Windows, a été modifiée pour apporter l’accélération matérielle à WSL 2 et donc à tous les outils en ligne de commande que les développeurs peuvent utiliser dans cet environnement. Ce sera notamment utile pour le machine learning et d’autres tâches qui reposent massivement sur les puces graphiques. Microsoft a aussi travaillé pour qu’OpenGL et OpenCL fonctionnent sur DX12 dans le cadre de WSL 2, et ce sera aussi le cas de Vulkan à terme. Et histoire d’être complet, CUDA de Nvidia sera aussi disponible dans ce cadre.
Si des développeurs hésitaient encore à franchir le pas pour adopter Windows 10 comme leur plateforme de développement, Microsoft a abattu une carte de plus hier en présentant winget. Ce gestionnaire de paquets en ligne de commande vient combler un vide par rapport aux distributions GNU/Linux ou à macOS. L’idée est de pouvoir installer et mettre à jour très facilement des apps ou des outils en ligne de commande, en gérant notamment les dépendances.
Toutes les distributions Linux intègrent leur propre gestionnaire de paquets, que ce soit apt
pour celles basées sur Debian (dont Ubuntu) ou yum
pour les dérivées de Fedora (dont CentOS). Il en existe aussi plusieurs sur macOS, mais le plus connu est Homebrew. On pouvait aussi déjà en installer sur Windows, dont Chocolatey, mais le fait que Microsoft crée sa propre version est là encore un message fort en direction de la communauté des développeurs. Et comme la majorité de ce que fait l’entreprise désormais, winget est un projet open-source, n’importe qui peut ajouter un paquet.
WSL 2 sera disponible en version finale dans le courant du mois, et Microsoft a aussi annoncé que Docker l’exploitera dorénavant pour améliorer ses performances sur Windows 10. L’accélération graphique et les autres nouveautés liées aux processeurs commenceront à être disponibles en bêta dans les prochains mois.