Linux için Cygwin / X ve Windows Alt Sistemi


14

İşleyen bir Xorg pencereleme ortamı da dahil olmak üzere Windows 10 cihazımda (önemli olması durumunda bir Surface 3) çalışan bir Cygwin kurulumum var. Linux için Windows Alt Sistemi ile de denemeye başladım. WSL'den GUI uygulamalarını çalıştırma tavsiyesi başka bir X sunucusu kurmak gibi görünüyor. Genellikle Xming önerilir, ancak Cygwin'in çalışmaması gereken herhangi bir öneri görmedim.

Ancak, basit yol başarısız olur:

WSL $ export DISPLAY=:0
WSL $ emacs &
Display :0 unavailable, simulating -nw

Bunun bir ağ sorunu olabileceğinden şüphelendim, çünkü

WSL $ telnet localhost 6000
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
WSL $ /sbin/ifconfig
Warning: cannot open /proc/net/dev (No such file or directory). Limited output.
WSL $ # there was no output at all, actually

... ama uzak bir makineye ssh iyi çalışıyor ve görünüşe göre Xservers en son hata ayıkladığımdan beri 6000 numaralı bağlantı noktasını dinlemeyi bıraktı.

Çalıştırmayı denedim cygwin $ xhost +localhost, sadece orada xhostyüklü olmadığını keşfetmek için . Hangi denemek sonraki şey olabilir veya bir vahşi kaz kovalamaca --- olabilir xhost(ya da en azından, bir çıplak xhost +) idi çoğunlukla bir X sunucusu debug son kez cesaretini.

WSL'nin Cygwin X sunucusunu kullanmasını engelleyen bazı temel kusurlar var mı? Değilse, nasıl devam edeyim?


1
Yüksek DPI cihazı (Yüzey 3) kullandığınız için, bu ekstra numara sizin için yararlı olabilir. CygwinX'in ekran DPI'sının ne düşündüğünü değiştirerek gösterilen yazı tipi boyutunu, pencere boyutunu vb. Artırabilirsiniz. Düzen /etc/X11/Xresourcesdeğiştirme ve Xft.dpimetin CygwinX aracılığıyla oldukça küçük bakmak gerekir bu yüzden, 214 DPI olmalıdır 96. Kişisel ekranından varsayılan. Ne olursa olsun, ölçeklendirmeyi beğeninize göre değiştirmek için bu DPI değerini değiştirebilirsiniz. (Değişiklikler arasında CygwinX'i yeniden başlatın.)
Chris

Yanıtlar:


15

Cygwin / X'e TCP'yi dinlemesini söylemelisiniz, ki bu varsayılan olarak yapmaz. Bunu seçeneği -listen tcpXLaunch'a geçirerek yaparsınız. Bunu yaptığınızda, gerçekten iyi çalışıyor. Aslında Cygwin / X'i Xming'e tercih ederim. Kılavuzda daha fazla ayrıntı .


Cygwin / X'i başlatmak için kullandığınız kısayolu bulun. (Kullanıcı başına başlangıç ​​kısayolları, C:\Users\<you>\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startupsistem genelindeki başlangıç ​​kısayolları ise C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp. Bu bağlantının "Özellikler" ini açın ve hedefi

C:\cygwin64\bin\run.exe --quote /usr/bin/bash.exe -l -c "cd; exec /usr/bin/startxwin"

için

C:\cygwin64\bin\run.exe --quote /usr/bin/bash.exe -l -c "cd; exec /usr/bin/startxwin -- -listen tcp"

İçin xauthdestek, kopyalamak gerekir ~/.Xauthoritysizin wsl ev dir için Cygwin'ın ev dir den.

Veya devre dışı bırakmak xauthisterseniz, Cygwin'leri düzenleyerek /usr/bin/startxwinüstteki uygun satırı olarak değiştirebilirsiniz enable_xauth=0.


Başlat menüsünde XLaunch'ı tıklattığımda XLaunch panel alanına -listen tcp ekleyerek bana çalıştı. Komut satırı bağımsız değişkenini değiştirmek için menü öğesiyle özelliği değiştiremedim.
Yu Shen

0

X sunucusunu ile başlatmanız gerekir startx. X Windows yüklü değilse, Cygwin'i çalıştırın setup.exeve tüm X Windows sistemlerini ve bir pencere yöneticisini seçin.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.