
Installer le WSL (et Ubuntu) sans Microsoft Store

Quand on a besoin d’un environnement Linux pour travailler mais que le poste de travail en question est un Windows, les solutions ne sont pas légions. Si j’avais opté pour une machine virtuelle auparavant, solution consommatrice de RAM, il existe désormais une option mature, bien qu’encore imparfaite, le Windows Subsystem for Linux. Comment s’en servir malgré ses imperfections ?
Présentation
Le sous-système Windows pour Linux est un des moyens inventés par Microsoft et livré en 2017 pour tenter de garder dans sa prison aspiratrice à données personnelles les développeurs partis soit sous Linux soit sous Mac, en leur proposant un moyen efficace de faire tourner un environnement de type shell, provenant d’une distribution linux « classique ». La principale différence, l’absence de noyau puisque le concept est de « traduire » à la volée les appels système des applications pour que ce soit le noyau de Windows qui fasse le boulot en dessous.
Quand je disais qu’il était imparfait, c’est notamment par son mode d’installation. En fait, vous activez d’abord la fonctionnalité WSL, et il faut ensuite installer une distribution, qui s’affiche dans votre menu démarrer comme une application classique. Déjà, l’activation demande de redémarrer l’ordinateur, ce que je trouve toujours pénible. Mais surtout, les distributions sont à récupérer… par le Microsoft Store, ce qui nécessite un compte en ligne Microsoft. Mais c’est niet chez moi, Microsoft n’espionnera que le strict nécessaire (sous couvert de la fameuse télémétrie). En plus, j’en avais parlé dans le passé, je n’ai pas d’application du store ni le store lui-même sur l’installation personnalisée que j’ai faite.
Installation sans le store, c’est possible (sans la carte Kiwi)
Alors comme souvent, la ligne de commande est plus rapide que le clicodrome, on commencer par activer WSL, via Powershell en mode administrateur :
1 |
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux |
Ensuite il faut redémarrer (j’ai déjà dit que c’était con ?). À partir de là, il faut trouver le moyen de récupérer les packages d’installation. Grâce à Internet et la magie des moteurs de recherche (Qwant en l’occurrence), et Stackoverflow, j’ai pu obtenir une liste d’images officielles à installer :
Ensuite, créez un dossier C:\Users\<votre_utilisateur>\<votre_distrib>
. Avec 7-Zip (et uniquement celui-ci apparemment), décompressez le fichier téléchargé dans le dossier fraîchement créé. Lancez l’exécutable (par exemple, Debian.exe si vous avez choisi Debian), patientez que le système de base soit installé, et c’est terminé. Optionnel mais recommandé : créez un raccourci vers l’exécutable dans le menu Démarrer pour faciliter les lancements futurs.
L’imperfection va devenir moins imparfaite
La première version du WSL, comme je l’ai dit, avait un gros manque pour les adorateurs de Linux : l’absence d’un vrai noyau, et donc de la possibilité d’utiliser Docker (un Docker pour Linux s’entend). Ce manque est sur le point d’être « corrigé » par Microsoft avec la future version 2. Ceux qui sont contraints de garder un Windows tout en devant bosser sur des environnements Windows (comme moi), ça devient une solution très intéressante. Le problème reste Windows lui-même, sans parler de l’inévitable antivirus qu’on doit se paver.
En effet, jusque là, c’était la machine virtuelle qui constituait la solution à privilégier. Sauf que pour l’avoir vécu, c’est pas toujours ultra stable, très consommateur de mémoire, même en prenant une distribution ultra-légère, et basculer de l’un à l’autre n’est pas aussi naturel et fluide. Et pour avoir pété la VM de mon PC de jeu peu de temps avant d’en changer, je me suis dit que ça serait intéressant de se pencher sur la techno. Pour ma part, j’ai fait le choix d’Ubuntu, Canonical étant un partenaire de plus en plus courant de Microsoft sur pas mal de sujets, dont Azure.
Quelques bonus
Installer Terminator : Là, je vais faire le gros flemmard, et vous diriger vers le site Pofilo qui a écrit un très bon tuto. Un collègue de boulot ingénieur avait déjà tenté le coup à l’époque de la sortie du premier WSL, c’était encore un peu frais, mais ça semblait faire le taf.
Installer CentOS : Il n’y a pas de package officiel pour la distribution chapeautée désormais par Red Hat, mais vous pensez bien que certains ont cherché à corriger ce point. Je n’ia pas du tout essayé, mais si ça vous tente, vous pouvez tenter l’expérience.
Plus de détails sur WSL 2 : Comme souvent je vous recommande la lecture de NextINpact pour les détails à la fois sur WSL 2 (version du noyau, support Docker et FUSE) et sur le futur Windows Terminal qui doit là aussi séduire les exilés.
Et sinon, tu peux aussi aller sur le store sans compte et récupérer ta distrib. C’est comme ça que je rend mon exil moins pénible…
Vous auriez pu faire un article sur comment installer wsl ou wsl2 depuis la ligne de commande ou depuis un script powershell. Cela aurait été plus développeur friendly. 😉
Oui mais je ne suis pas développeur (en tout cas ce n’est pas mon métier et même si je bidouille quelques lignes de code ça ne suffirait certainement pas à me qualifier comme tel). D’ailleurs ici la méthode peut être vue comme un algo en langue humaine, scripter est tout à fait à la portée d’un développeur moyen 😀