Zdaj lahko izvajate aplikacije Linux z GUI v sistemu Windows 10 prek WSL

Zdaj je mogoče zagnati aplikacije GUI Linux v sistemu Windows 10 zahvaljujoč najnovejšim Microsoftovim spremembam WSL ali podsistema Windows za Linux.

Windows je morda najbolj priljubljen namizni operacijski sistem, vendar to ne pomeni, da zmore vse. Če želite narediti nekaj podobnega zaženite strežnik JetBrains Projector, na primer, boste potrebovali sistem, ki temelji na Unixu, kot je Linux. Microsoft je pred časom predstavil podsistem Windows za Linux (WSL), ki je prinesel podporo za izvajanje aplikacij za Linux neposredno iz namestitve sistema Windows.

Toda WSL je imel nekaj omejitev. Različica 1 sploh ni uporabljala polnega jedra Linuxa, zato veliko aplikacij še vedno ni delovalo. Različica 2 je naredila veliko izboljšav, nekaj pa je še vedno manjkalo: podpora za aplikacije GUI.

Seveda, vedno lahko nastavite hekersko rešitev, kjer namestite strežnik X v Windows, se poigrate z vrati posredovanje in nastavite samodejno spremenljivko okolja v WSL, vendar je to težava in ne deluje vedno zelo dobro.

Vnesite WSLg.

WSLg: Zaženite aplikacije Linux z GUI v sistemu Windows 10

WSLg je Microsoftov odgovor na vprašanje grafičnega uporabniškega vmesnika Linuxa in je pošteno nekako čuden. Tukaj je zabaven diagram, kako deluje, z dovoljenjem Microsofta.

Tukaj se veliko dogaja, vendar je osnovna ideja pravzaprav precej podobna stari ročni metodi nastavitve lastnega strežnika X. Namesto tega pa se strežnik X izvaja na vzporedni instanci WSL, ki je uporabniku nevidna. Windows nato uporabi protokol oddaljenega namizja za prenos videa in zvoka iz te nevidne instance na stran sistema Windows. To se verjetno sliši zapleteno in je, vendar deluje.

Microsoft tudi pravi, da bi morale biti aplikacije za Linux tudi skozi vse te plasti sposobne izkoristiti vaš GPE s stvarmi, kot je prehod OpenGL. Trenutno to vedenje zahteva poseben gonilnik AMD, Intel ali NVIDIA, vendar je načrt, da ga bomo v prihodnosti privzeto združili.

Ta prihodnost verjetno prihaja v drugi polovici tega leta z Windows 21H2 skupaj z veliko prenovo uporabniškega vmesnika. Craig Loewen, programski vodja platforme Windows Developer Platform, je na Twitterju potrdil, da bo podpora GUI za aplikacije Linux na voljo vsem uporabnikom v naslednji večji izdaji sistema Windows.

Lastnosti

Trenutno se zdi, da ima WSLg precej popolno funkcijo. Trditev je, da lahko imate polno video in avdio podporo za aplikacije GUI Linux, skupaj s 3D pospeškom. In je precej brezhibno. Ko je nova aplikacija GUI nameščena v primerku WSL, se doda celo v začetni meni, tako da jo lahko zaženete neposredno. Aplikacije bi morale biti prikazane pod mapo z enakim imenom kot ustrezni primerek WSL.

Napake

Seveda je to zgodnja izdaja in je nekaj napak. Osebno, ko sem ga nastavil na enem od svojih prenosnikov, sploh nisem mogel zagnati nobene aplikacije. Prav tako nisem dobil nobenega vnosa v meniju Start za aplikacije. Ekipa, ki stoji za tem, je neverjetno odzivna in vsaj prva težava je že odpravljena za naslednjo izdajo.

Očitno obstajajo tudi druge težave, ki vključujejo kopiranje in lepljenje ter pokvarjen zvok. Celoten seznam težav si lahko ogledate na Repozitorij WSLg GitHub.

Kako začeti

Kako torej dobiti WSLg? Trenutno je najlažji način posodobitev na najnovejšo različico programa Windows 10 Insider Developer Ring (graditev 21364 ali novejša). Ko to storite, lahko preprosto tečete wsl --posodobitev v povišanem ukaznem pozivu ali oknu PowerShell, čemur sledi wsl --izklop.

Nato preprosto odprite primerek WSL in zaženite aplikacijo Linux z grafičnim vmesnikom. Ob predpostavki, da je šlo vse dobro, boste videli, da je vaša aplikacija videti skoraj kot izvorna aplikacija za Windows. V nasprotnem primeru preverite težave z GitHub ali po potrebi vnesite lastno težavo.

Viri

Za več informacij o tem, kako delujejo aplikacije za Linux z GUI, si oglejte naslednje vire:

  • Repozitorij GitHub WSLg.
  • Obvestilo Windows Insider 21364.
  • Podroben zapis Craiga Loewena.

Ali pa si oglejte potek in primer videoposnetka Craiga Loewena: