Formalmente, il Sottosistema Windows per Linux (WSL) veicolato da Windows 10 1607 Anniversary Update consente di eseguire solamente programmi per il terminale. Installando un display server appropriato, però, possiamo liberarci da questa limitazione e lanciare anche programmi ad interfaccia grafica (GUI) per Linux senza bisogno di abbandonare il desktop di Windows. Vediamo come procedere.

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10 - gvim windows 10 wsl

Passo 1: installare WSL

Come primissimo passo è necessario installare il Sottosistema Windows per Linux (WSL) e sincerarsi che la shell Bash e il resto dell'ambiente di lavoro siano funzionanti

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10 - bash windows 10 spotlight

» Leggi: La Grande Guida a Bash per Windows 10: come installare Sottosistema Windows per Linux (WSL) ed eseguire programmi Linux/Ubuntu sotto Windows 10

Passo 2: installare "Xming"

Per consentire all'ambiente Linux in esecuzione sotto Windows 10 di mostrare le finestre delle applicazioni grafiche è necessario installare un display server di terze parti sul sistema operativo Windows. Procediamo quindi a scaricare Xming da qui e completiamo il setup cliccando ripetutamente su Avanti, conservando sempre le opzioni proposte di default (in caso Xming non risultasse soddisfacente, VcXsrv è una valida alternativa)

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10

Al termine dell'installazione, l'icona di Xming appare nell'Area di notifica

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10

Il componente deve essere già in esecuzione prima di avviare applicazioni grafiche per Linux. Quando non serve, possiamo però chiuderlo tranquillamente con un doppio click sull'icona seguito da conferma

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10

In seguito, alla bisogna, localizziamo il suo collegamento cercando xming nel menu Start e clicchiamo quello chiamato Xming per riavviarlo (l'altra scelta, Xming launch, apre l'utility di configurazione).

Passo 3: esportare la variabile "display"

Aprite Bash e lanciate questi due comandi (uno dopo l'altro, facendo attenzione a rispettare le maiuscole):

  • export DISPLAY=:0.0
  • echo "export DISPLAY=:0.0" » $HOME/.bashrc

In maniera molto sommaria, basti sapere che rendono disponibile all'ambiente Linux una variabile di nome DISPLAY, valorizzata con le informazioni necessarie a mostrare l'interfaccia grafica sullo schermo dell'utente. Il primo comando è per la sessione corrente, mentre il secondo fa sì che venga eseguito automaticamente ad ogni apertura di Bash successiva.

Passo 2: installazione di applicazioni grafiche per Linux

Ora possiamo installare e lanciare applicazioni ad interfaccia grafica.

Iniziamo con la versione GUI dell'editor di testo Vi: installiamo con apt install vim-gtk -y ed eseguiamo con gvim

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10 - gvim windows 10 wsl

Procediamo con Geany, un apprezzato editor indirizzato ai programmatori (IDE). Installare con apt install geany -y, eseguire con geany

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10 - geany windows 10 wsl

Per aumentare un po' la difficoltà ed entrare nel campo degli strumenti che possono realmente risultare utili nel quotidiano passiamo ad eseguire la versione originale per Linux del programma di fotoritocco GIMP. Si installa con apt install gimp -y, si avvia con gimp

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10 - gimp windows 10 wsl

Un'altra idea interessante è installare Firefox ed utilizzare il browser web dall'ambiente Linux. Così facendo, ci si ritroverà immediatamente al sicuro da tutti i malware assortiti studiati per colpire Windows durante la navigazione. Per ottenere il risultato basta installare con apt install firefox -y e lanciare con firefox. Attivando la sincronizzazione (≡ -> Sign in to sync) diviene molto pratico allineare i preferiti, la cronologia e le password con la controparte installata sul PC Windows, semplificando enormemente il passaggio fra un ambiente di lavoro e l'altro

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10 - firefox linux ubuntu windows 10 wsl

Una volta installate, le applicazioni possono essere lanciate direttamente dall'ambiente Windows tramite un collegamento. Per maggiori info, vedi il paragrafo Passo 7: lanciare programmi Ubuntu da Windows della nostra guida a WSL. Come unica complicazione, è però necessario esplicitare la variabile DISPLAY prima del comando da eseguire: per Firefox, ad esempio, useremo bash -c "DISPLAY=:0.0 firefox", per Gimp è necessario bash -c "DISPLAY=:0.0 gimp" e via dicendo

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10 - esegui firefox wsl

Se usate in maniera continuativa tali programmi (Firefox o qualsiasi altro browser web, in particolare) non dimenticatevi di installare periodicamente gli aggiornamenti di sicurezza! Farlo da shell Bash è semplicissimo:

  • apt update (aggiorna la lista dei pacchetti disponibili)
  • apt full-upgrade -y (scarica e installa le nuove versioni dei pacchetti)

Cosa aspettarsi?

In questo articolo abbiamo visto come eseguire le applicazioni ad interfaccia grafica native per Linux sfruttando il Sottosistema Windows per Linux di Windows 10 1607. Purtroppo, non tutti i programmi funzionano: l'editor Kate e il programma di fotoritocco Krita, ad esempio, non sono partiti correttamente sul mio sistema di test. È quindi necessario provare individualmente con i singoli software desiderati e... incrociare le dita.

Andare oltre: installare il desktop Ubuntu completo

Rimane ancora un'idea da sperimentare per i più intraprendenti: usare la tecnica appena proposta per eseguire l'intero Unity, ritrovandosi così davanti al desktop completo di Ubuntu all'interno di una finestra di Windows 10.

Guida Bash Windows 10 (WSL): come eseguire programmi Linux/Ubuntu interfaccia grafica (GUI) Windows 10

L'idea, lanciata su Github, ha raccolto un discreto seguito e alcuni utenti confermano di aver raggiunto il risultato. Il beneficio concreto, però, è discutibile: si finisce infatti per appesantire il sistema con un ambiente desktop aggiuntivo, quando basterebbe utilizzare il menu Start e quale collegamento ai programmi Linux più utilizzati per ottenere un risultato pratico analogo in maniera molto più "leggera".

Ad ogni modo: io ci ho provato senza raggiungere i risultati sperati: chi volesse cimentarsi, trova qui la procedura passo passo (in inglese) che ho svolto, insieme agli errori che mi hanno bloccato.