Возвращение в Windows: поиск святой оболочки.

Итак, я в восторге, потому что я только что сделал себе новый компьютер. Как начинающий создатель игр и полный рабочий день разработчик, вы можете себе представить, как я взволнован тем, что получил давно необходимое обновление для моей основной компьютерной системы дома. Если вам интересно, с какими частями я работал, они перечислены ниже (у меня также есть несколько твердотельных накопителей с моей старой машины, которые будут перемещены):

"будь спокоен! Модульный блок питания Dark Power Pro 11 1200W ATX 12V 80 Plus Platinum - вентиляторы Silent Wings 3 »

Графическая карта GIGABYTE GeForce RTX 2070 Super GAMING OC 8G, 3 вентилятора WINDFORCE, 8 ГБ 256-битной памяти GDDR6, GV-N207SGAMING OC-8GC…

CORSAIR Hydro Series, H115i RGB PLATINUM, 280 мм, 2 x ML PRO 140-мм вентилятора с ШИМ RGB, улучшенное освещение RGB и управление вентиляторами с…

SAMSUNG 970 EVO M.2 2280 1 ТБ PCIe Gen3. X4, NVMe 1.3 64L V-NAND 3-битный внутренний твердотельный накопитель (SSD) MLC MZ-V7E1T0BW

Материнская плата ASRock X399 Taichi sTR4 AMD X399 SATA 6 Гбит / с ATX AMD

Серия G.SKILL Trident Z Neo (для AMD Ryzen) 64 ГБ (4 x 16 ГБ) 288-контактная RGB DDR4 SDRAM DDR4 3600 (PC4 28800) Память для настольных ПК…

Двухдиапазонный адаптер ASUS PCE-AC68 PCI Express Wireless-AC1900

Я собрал эту систему, и она довольно крутая. Время загрузки быстрое, он с легкостью передает графику на 3 монитора, и в моем случае это все виды радужной красоты.

Начиная

Я устанавливаю Windows, Office и обычную программу, а затем решаю, что хочу установить свои утилиты для разработки.

Я начинаю с загрузки Visual Studio Community 2019 и быстро обнаруживаю, что встроенная беспроводная связь слишком медленная, чтобы любой человек мог ее принять в наши дни (отсюда и добавление беспроводной карты Asus).

Цель установки VS - подготовиться к написанию игр на C # с использованием Unity и Google Cloud Platform. Однако сейчас мне лень выключить компьютер, чтобы установить более быструю беспроводную карту. VS все еще загружается и находится примерно на полпути (прошло всего около 10 часов).

Это наводит меня на мысль, что мне нужно просто начать загружать и устанавливать инструменты, которые я обычно использую на работе, к которым я довольно привык, несмотря на то, что на протяжении всей своей ранней карьеры я был MS-Dev. Конечно, вся простота установки диспетчера пакетов, предлагаемая в обычных дистрибутивах Linux, ушла, потому что это Windows, а если у вас Windows, зачем вам печатать?

Поскольку мне нравится усложнять себе задачу, я начинаю искать разумное приложение командной строки, которое может реплицировать и позволить мне использовать оболочку bash способом, более близким к тому, к чему я привык.

Конечно, еще во времена, когда я работал с Windows, я помню, что очень любил Powershell. Я начинаю с проверки, хочу ли я использовать Powershell, поскольку он уже установлен на моем компьютере. Я набираю ls и, к своему удивлению, получаю список файлов. Затем я пытаюсь открыть новую вкладку ctrl+t и получаю экранированный символ табуляции. Потрясающие! Поскольку у меня нет терпения и нет новой вкладки, Powershell отсутствует!

Я нахожу следующие варианты, встроенные в Windows, которые не требуют особого сумасшествия - просто установите и работайте:



Я открываю ConEmu, и это чертовски ужасно.

Действительно похоже, что он вышел из 90-х. Он также имеет безумно странное поведение, например, всегда находится в верхней части экрана, и я не могу перемещать его с помощью мыши. У него также нет интуитивно понятной последовательности команд для создания новой вкладки. ConEmu тоже отсутствует. Я просто не могу!



При установке Cmder он сообщает мне, что приложения, которые я хочу, должны находиться в каталоге bin, поскольку этот каталог будет добавлен для меня в путь. Мне это показалось немного неинтуитивным, поскольку в Windows все по умолчанию устанавливается в программные файлы. Я не планирую устанавливать дерьмо в этот каталог только для того, чтобы получить эту выгоду.

Я решил попробовать разместить ярлык в каталоге bin для приложения, но это не помогло, поскольку оно не выполнялось автоматически в Cmder. Я продолжаю, игнорируя эту проблему, и начинаю пробовать Cmder.

Во-первых, у него хорошая цветовая схема, а не откровенная атака на стержни и конусы. Он построен на ConEmu, поэтому сохраняются приятные части этого динозавра, такие как выбор типа консоли и легкое переключение высоты буфера. Вкладки внизу, что мне лично не нравится, но все же выглядит намного лучше. Думаю, мне нравится этот, и да - во многом потому, что он симпатичный.

Visual Studio Install по-прежнему загружен только на 63% и установлен на 45%. Сетевая карта полностью лежит в коробке, так что ожидание продолжается.

Затем я хочу попробовать установить приложения, как в MacOS или Linux, с использованием Homebrew.

Как и ожидалось, это Windows, и brew для нее недоступен, поэтому я начинаю искать эквивалент и натыкаюсь на Chocolatey.



Читая страницу, я понимаю, что это именно то, что я ищу. Начните с использования такой команды, как:

поиск choco "intellij" - по популярности

Первый элемент, который возвращается:

intellijidea-community 2019.2.1 [Одобрено] Загрузки кэшируются для лицензированных пользователей

…неплохо. Это действительно хорошо работает.

Итак, теперь, из-за отсутствия у меня желания брать эту более быструю беспроводную карту снизу, у меня есть еще одна большая загрузка.

IntelliJ находится на уровне 1%, а VS по-прежнему загружен на 74% и установлен на 45%. Слава богу, я могу просто создать больше вкладок и заставить эту машину работать еще больше 😜.

Теперь я понимаю, что Cmder хорош и все такое, но мне действительно нужны мои команды bash. Я просто привык к ним. Google говорит, что я хочу это сделать:



Следуя этим шагам, я могу добраться до точки, где мне предлагается установить Ubuntu или Debian, чтобы получить приложения командной строки, к которым я привык. К сожалению, я пошел слишком быстро, установил Ubuntu и включил WSL в соответствии с этими инструкциями. Итак, в следующем пункте я не уверен на 100%, но я считаю, что после включения WSL, независимо от того, устанавливаете ли вы дистрибутив Linux или нет, вы получаете bash. Это означает, что вы можете открыть Cmder и указать ему открыть консоль bash вместо консоли Cmd или Powershell.

На данный момент у меня есть возможность открыть консоль bash в Cmder, и мне доступны все основные команды Linux, такие как wc, grep, cat, diff и т. Д. Chocolatey - достойная замена brew, позволяющая мне устанавливать утилиты простым способом. Однако он пропускает некоторые пакеты.

IntelliJ - 31%, Visual Studio - 87% загружено.

Попытка установить brew на WSL продолжает терпеть неудачу с ошибкой символической ссылки.

Похоже, это происходит, когда brew пытается установить Ruby. К счастью, похоже, что Chocolatey помогает мне каннибализировать его, потому что для него загружен Ruby. Я переустанавливаю Ruby через Chocolatey, и он меняет ряд переменных среды, что еще больше ломает все.

Чтобы заставить Cmder запускаться с правильным набором переменных, мне приходится перестраивать его задачи запуска. К счастью, в ConEmu \ Cmder это довольно просто. Просто перейдите к Settings → Startup → Tasks, удалите все задачи и создайте заново, используя задачи добавления / обновления по умолчанию. Как только это было сделано, я смог создать оболочку bash, запустить установку Homebrew и успешно завершить ее. Затем просто следуйте инструкциям, чтобы добавить его в свой .profile и переменную среды, и brew начнет работать должным образом.

Отлично… Brew требует GCC и угадайте, какой GCC тоже не установлен! Установка gcc с использованием предоставленных команд не сработала из-за отсутствия зависимостей. В моем случае он жаловался на отсутствие патчелфа. Итак, теперь нам предстоит еще одно приключение. Чтобы получить патчелф, мне пришлось установить binutils. В этом случае сработало выполнение следующих команд.

sudo apt-get update

sudo apt-get install binutils

brew install gcc

Наконец, похоже, что установка brew работает должным образом.

Затем я смог установить другие утилиты, которые я обычно использую, которые требуют локальной сборки. Уэлп! Это был кошмар, но мои инструменты заработали, и хотя я все еще предпочитаю iterm2, эта оболочка Cmder работает как достойная замена. Мне удалось заставить валяться, и я также могу попрощаться с Chocolatey за установку приложений \ инструментов, не относящихся к Windows.

В целом, довольно успешный, но невероятно запутанный процесс.

IntelliJ - не удалось Visual Studio - загружено на 100%. 100% установлено.

Мне действительно нужно установить эту сетевую карту. 😞