Windows 10 bash i miętowy


13

Właśnie zainstalowałem nowy podsystem Linux w systemie Windows 10. Naprawdę miło jest mieć dostęp do repozytoriów Ubuntu, ale absolutnie NIENAWIDZĘ domyślnego programu terminalowego. Cygwin zawiera MinTTY, który jest naprawdę ładny i działa bardzo dobrze, ale nie mogę znaleźć samodzielnego pakietu dla MinTTY. Czy istnieje sposób, aby MinTTY stał się domyślnym terminalem dla WSL podczas uruchamiania dowolnego skrótu?

Edycja: aby było jasne, NIE chcę instalować Cygwin. Chcę użyć nowego podsystemu Linux i jego powłoki bash, ale chcę użyć mintty jako mojego terminala.


1
Obecnie nie jest to możliwe.
Seb

2
Istnieje kilka uwag na temat BashOnLinux GitHub zagadnień tracker, takie jak ten github.com/Microsoft/BashOnWindows/issues/... a także na trackerze emisyjnej mintty: github.com/mintty/mintty/issues/558 Nie jesteśmy jeszcze nie ...
Seb

Jeśli nie masz nic przeciwko, jestem ciekawy twojego przypadku użycia i dlaczego nalegasz na bash Ubuntu zamiast Cygwin. Czy rozwijasz się w celu dystrybucji na Ubuntu? Powód, dla którego pytam, ponieważ ta nowa wersja Ubuntu wydaje się niemożliwie okaleczona pod wieloma względami w porównaniu z wersją Cygwin. Na przykład może uruchamiać tylko oryginalne pliki binarne Ubuntu, co oznacza, że ​​nie może nawet uruchomić notatnika. Fascynuje mnie to, co ludzie z tym zrobią.
Nicole Hamilton

@NicoleHamilton Cygwin nie ma dostępu do apt repos. Jeśli chcę zainstalować nowy program i pozwolić mu pracować z cygwinem, albo muszę zainstalować przez cygwin za pomocą instalatora graficznego, co może być trochę uciążliwe, albo muszę zainstalować binarny system Windows, a następnie dodać go do mojego ścieżka, która może być również bólem. Cygwin jest przydatnym narzędziem, jeśli chcesz mieć podobny do basha terminal w środowisku Windows, ale jest ograniczony faktem, że nie jest to Linux.
ewok

Są też programy, które działają tylko w systemie Linux (bez wkładania dużego wysiłku w portowanie). Znacznie łatwiej jest uruchomić Bash niż uruchomić maszynę wirtualną.
Ben Fulton,

Odpowiedzi:


13

Deweloper mintty właśnie wydał instalator, który skonfiguruje to wszystko bez żadnych zewnętrznych zależności (zawiera cygwin dll, pomocnika konsoli i wslbridge):

https://github.com/mintty/wsltty/releases

Pobierz, zainstaluj i gotowe.

Jeśli chcesz uruchomić inną powłokę niż Bash, po prostu zmień skrót (w menu startowym). Na przykład, aby uruchomić ssh-agent na terminal za pomocą zsh:

%LOCALAPPDATA%\wsltty\bin\mintty.exe /bin/wslbridge -t /usr/bin/ssh-agent /bin/zsh -l

5

Korzystanie z mintty + wslbridge działa.

Pobierz 3 pliki:

mirrors.kernel.org/sourceware/cygwin/x86_64/release/cygwin/cygwin-2.5.2-1.tar.xz

mirrors.kernel.org/sourceware/cygwin/x86_64/release/mintty/mintty-2.4.2-0.tar.xz

github.com/rprichard/wslbridge/releases/download/0.1.0/wslbridge-0.1.0-cygwin64.tar.gz

Umieść te pliki w tym samym katalogu o nazwie bin:

cygwin1.dll : cygwin-2.5.2-1.tar.xz

cygwin-console-helper.exe : cygwin-2.5.2-1.tar.xz

mintty.exe : mintty-2.4.2-0.tar.xz

wslbridge.exe : wslbridge-0.1.0-cygwin64.tar.gz

wslbridge-backend : wslbridge-0.1.0-cygwin64.tar.gz

I stwórz pusty minttyrc.

Biegać mintty -c ./minttryc ./wslbridge

Lub użyj emulatora terminala dla podsystemu Windows dla systemu Linux (WSL)


-4

Oryginalny wątek .

Oto jak to zrobić, uruchomić miętowy pod bash.

  1. Pobierz miętowy stąd .

  2. Rozpakuj i wypakuj mintty.exe

  3. Przejdź do binfolderu, w którym zainstalowałeś Git . Domyślna lokalizacja to:C:\Program Files (x86)\Git\bin

  4. Kliknij prawym przyciskiem myszy skrót Windows do Git Bash

  5. Ustaw cel na:

C: \ Program Files (x86) \ Git \ bin \ mintty.exe "/ bin / sh --login -i

Jeśli lokalizacja pobierania jest inna, zmień ją odpowiednio.

  1. Kliknij skrót Git Bash, aby go uruchomić.

2
To nie korzysta z nowego podsystemu Linux, używa bash dostarczonego przez Git dla Windows ...
Seb
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.