recoder: (Default)
[personal profile] recoder

Как известно, программист - это такой работник умственного труда, который на работе старается спрограммировать всё побыстрее, чтобы наконец пойти домой и попрограммировать для удовольствия. А как же тут попрограммировать для души, когда домашний игровой комп сыграл в ящик, не гудит и не мигает лампочками? Пришлось выделить из семейного бюджета солидную сумму на покупку нового компа в серьёзной конфигурации: Ryzen 7, RTX видеокарта, 32G памяти, все дела.

Прошло несколько недель (COVID всё же на дворе), и настал светлый день. Уставший FedEx'овец в маске дотащил здоровую коробку, и не спрашивая росписи о доставке, умчал вдаль шурша опавшими листьями. Коробку распаковали, комп собрали, подвели питание, включили - он загудел, засверкал светодиодными лентами через боковое стекло. Красота!

Тут меня начал мучать соблазн - ну что я, не настоящий программист что ли? Не пропадать же такой вычислительной мощности только для вечерних загонялок в Doom! Надо поднять нормальную Linuxовую виртуальную машину для разработки, а может даже и несколько, чтобы сделать себе devel, staging, и production.

Выключил комп, засел с блокнотиком, долго изучал опыт современных домашних умельцев в интернетах. И в следующий раз включил комп только когда в блокнотике появился удовлетворительный дизайн домашнего сервера.

Теперь буду записывать себе на память инструкции по поднятию домашней системы:

Итак, после первого входа в систему мне захотелось сохранить это свежедефлорированное состояния. Умельцы с Reddit'a порекомендовали Macrium Reflect. Попробовал забэкапить диски - получилось. А насколько хорошо получилось - проверим после первой попытки восстановить сохранённое.

Дальше надо было накатывать софт и тут я очень кстати вспомнил, что под Винду тоже бывают пакетные установщики. Быстро нашёл "Chocolatey" и его автоматизацию в виде BoxStarter. Сделал конфигурационный gist на Гитхабе, запустил волшебную команду:

> start https://boxstarter.org/package/nr/url?https://gist.githubusercontent.com/recoder/9d5c4e5b959dc50d8a856dd2f2b501a8/raw/2c265bcd9089dbe8f5f33eb52f3e8b4bf9f19ebc/nexus.box

И после нескольких подтверждений всё само собой установилось. Я прямо поразился, насколько всё сработало хорошо и быстро. Прям как будто и не Windows. Но с другой стороны - всё-таки за окном третья декада третьего тысячелетия...

Дальше пошла тяжёлая артиллерия. Пришло время поднимать виртуальные машины. В очередной раз проштудировав реддитских мудрецов, решил пойти нативным путём, подняв родной майкрософтовский Hyper-V:

DISM /Online /Enable-Feature /All /FeatureName:Microsoft-Hyper-V

Но не тут-то было! Оказалось что на Win10 Home некоторое подмножество фич откручено заботливыми маркетологами. Вновь пришлось обращаться к мировому разуму за советом, и совет оказался прост: надо просто взять и восстановить открученное:

dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"

После чего DISM совершенно штатным образом устанавливает нормальный Hyper-V!

А раз пошла такая пьянка - то можно и нормальный встроенный Линукс (Убунту например) себе поднять, в три команды:

DISM /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
DISM /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
wsl --set-default-version 2

А чтобы закрепить этот программистский фьюжн, я накатил внутри Linux'a практически полноценный FAR. Надо сказать, что в FAR'e я программирую последние 25 лет, так что для меня FAR - это "наше всё". И устанавливается всё просто на раз:

sudo apt-get install -y gawk m4 libwxgtk3.0-gtk3-dev libpcre++-dev libxerces-c-dev libspdlog-dev libuchardet-dev libssh-dev libssl-dev libsmbclient-dev libnfs-dev libneon27-dev libarchive-dev cmake g++ git
git clone https://github.com/recoder/far2l
cd far2l
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DUSEWX=no -DCMAKE_BUILD_TYPE=Release ..
make -j4 && sudo make install

После этого можно удовлетворённо попить чайку и переходить к следующей стадии.

Date: 2020-12-21 08:39 pm (UTC)
From: [personal profile] alll
Круто. Особенно про активацию HyperV и Far.

Date: 2020-12-23 11:11 am (UTC)
From: [identity profile] fenikso.livejournal.com
>А насколько хорошо получилось - проверим после первой попытки восстановить сохранённое.
Вот тут как-то неуютно стало :)

December 2024

S M T W T F S
1234567
891011121314
15161718192021
22232425 262728
293031    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 25th, 2025 10:17 pm
Powered by Dreamwidth Studios