Tässä kirjoituksessa käyn lyhyesti läpi kuinka Node.js asennetaan, kun käytössä on Windows 10:n tarjoama Windows Subsystem for Linux -ominaisuus (kavereiden kesken vain WSL), joka mahdollista Linux-käyttöjärjestelmille suunnattujen ohjelmien suorituksen Windowsissa.
Tässä kohtaa joku saattaa miettiä, että miksi Node.js pitäisi asentaa WSL:n kautta, kun saatavilla on myös Windows 10 -versio. Perusteluna voisi olla esim. monissa Linuxeissa hyvin tuettu Bash-komentotulkki, jonka päälle rakennetut skriptit toimivat yleensä paremmin Linux-ympäristöissä.
Windows Subsystem for Linuxin eli WSL:n käyttöönotto
Windows 10:n kanssa WSL pitää ottaa erikseen käyttöön. Tämä tapahtuu käynnistämällä PowerShell -komentokehoitteen Admin-oikeuksilla,
ja antamalla siihen seuraavan komennon
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Kun komento on suoritettu onnistuneesti, pitää Windows 10 käynnistää kerran uudestaan, jotta WSL aktivoituu.
Halutun Linuxin asennus Microsoft Storesta
Kun WSL on otettu käyttöön, voidaan haluttu Linux-jakelu asentaa suoraan Microsoft Storesta. Oma valintani oli Ubuntu 18.04 LTS, jonka saa luonnollisesti ilmaiseksi painamalla aluksi Hanki-nappia ja sen jälkeen Asenna-nappia
Asennuksen jälkeen Ubuntu löytyy Windows 10:n käynnistysvalikosta, josta sen voi käynnistää
Ensimmäisellä käynnistyskerralla kannattaa varautua muutamien minuuttien odotukseen, kun järjestelmä viimeistelee asennuksensa. Tämän jälkeen luodaan uusi käyttäjätili Linuxiin, ja luonnollisesti oman käyttäjätunnuksen ja salasanan saa valita itse (mutta käyttäjätunnukseksi eivät kelpaa pelkät numerot).
Node.js asennus
Ubuntun kohdalla Node.js:lle on tarjolla valmiit asennusskriptit, joiden viimeisimmät versiot löytyvät Nodesource-listauksesta. Itsellä oli tarvetta Node.js:n 11-versiolle, joten asennus onnistui seuraavilla komennoilla
curl -sL https://deb.nodesource.com/setup_11.x | sudo -E bash -
sudo apt-get install -y nodejs
Ensimmäisen komennon kohdalla kysytään käyttäjän salasanaa, koska skiptin suorittaminen, ja Node.js:n asennus vaativat pääkäyttäjän oikeudet. Muutaman minuutin odottelun jälkeen Node.js:n pitäisi olla asennettuna, ja asennuksen onnistumisen voi testata vaivattomasti seuraavalla komennolla
node --version
Typescriptin asennus npm:n avulla
Kun Node.js on saatu asennettua, tulee usein tarpeelliseksi asentaa muita npm-pakettienhallinnan tarjoamia paketteja. WSL + Ubuntu -yhdistelmän kanssa globaalit pakettienasennukset vaativat pääkäyttäjän oikeudet. Muussa tapauksessa tarjolla on yleensä "npm WARN checkPermissions Missing write access to /usr/lib/node_modules" -tyyppinen virheilmoitus
Täten esim. Typescriptin asennus onnistuu seuraavalla komennolla
sudo npm install -g typescript
ja asennuksen onnistumisen voi testata komennolla
tsc
👍