Windows 10 Bash и Mintty


13

Я только что установил новую подсистему Linux в Windows 10. Очень приятно иметь доступ к репозиториям Ubuntu, но я абсолютно НЕНАВИЖУ программу терминала по умолчанию. Cygwin поставляется с MinTTY, который действительно хорош и работает очень хорошо, но я не могу найти отдельный пакет для MinTTY. Есть ли способ сделать MinTTY терминалом по умолчанию для WSL при запуске любого ярлыка?

Изменить: чтобы быть ясно, я не хочу устанавливать Cygwin. Я хочу использовать новую подсистему Linux и ее оболочку bash, но я хочу использовать mintty в качестве моего терминала.


1
В настоящее время это невозможно.
— Себ

2
Есть несколько комментариев о трекере проблем BashOnLinux Github, например github.com/Microsoft/BashOnWindows/issues/…, а также о мятных трекерах: github.com/mintty/mintty/issues/558 Мы не там еще ...
— Себ

Если вы не возражаете, мне интересно ваше дело и почему вы настаиваете на использовании Ubuntu, а не Cygwin. Вы разрабатываете для распространения на Ubuntu? Причина, по которой я спрашиваю, потому что этот новый Ubuntu Bash кажется невозможным в большинстве случаев по сравнению с Cygwin Bash. Например, он может запускать только подлинные двоичные файлы Ubuntu, то есть не может даже запускать блокнот. Я восхищен тем, что люди будут делать с этим.
— Николь Гамильтон

@NicoleHamilton Cygwin не имеет доступа к подходящим репо. Если я хочу установить новую программу и заставить ее работать с cygwin, я должен либо установить ее через cygwin с помощью графического установщика, что может быть немного затруднительно, либо установить двоичный файл Windows, а затем добавить его в свой путь, который также может быть боль. Cygwin - полезный инструмент, если вам нужен bash-подобный терминал в среде Windows, но он ограничен тем, что это не linux.
— Ewok

Также есть программы, которые работают только на Linux (без значительных усилий по переносу). Намного проще запустить Bash, чем запустить виртуальную машину.
— Бен Фултон

Ответы:


13

Разработчик mintty только что выпустил установщик, который установит все это для вас без внешних зависимостей (в него входит cygwin dll, консольный помощник и wslbridge):

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

Скачайте, установите и все готово.

Если вы хотите запустить оболочку, отличную от Bash, просто измените ярлык (в вашем стартовом меню). Например, чтобы запустить ssh-agent для каждого терминала с помощью zsh:

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

5

Использование mintty + wslbridge работает.

Скачать 3 файла:

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

Поместите эти файлы в тот же каталог с именем 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

И создать пустое minttyrc.

Бегать mintty -c ./minttryc ./wslbridge

Или используйте эмулятор терминала для подсистемы Windows для Linux (WSL)


-4

Оригинальная тема .

Вот как это сделать, запустите mintty под Bash.

  1. Скачать мятный отсюда .

  2. Распакуйте и распакуйте mintty.exe

  3. Перейдите в вашу binпапку, где вы установили Git . Расположение по умолчанию:C:\Program Files (x86)\Git\bin

  4. Щелкните правой кнопкой мыши по ярлыку Windows для Git Bash

  5. Установить цель:

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

Если местоположение загрузки отличается, измените местоположение соответствующим образом.

  1. Нажмите на ярлык Git Bash, чтобы запустить его.

2
Это не использует новый Linux Subsystem, он использует Баш предоставленный Git для Windows ...
— Себ
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.