Мне нравится мой новый Macbook Air M1. Без вентилятора, зато потрясающая производительность. Рабочая клавиатура. И функция отсутствия сенсорной панели не только включена, но и является более дешевым вариантом - я бы заплатил за это деньги!

У меня было два требования для разработки, которых я хотел достичь: пользовательский интерфейс macOS, среда разработки на базе Linux. Я немного неохотно относился к новой архитектуре и, честно говоря, ожидал, что какое-то время не смогу эффективно работать над ней. Я был неправ. И поскольку меня уже несколько раз спрашивали об этой настройке, я решил составить очень краткое вступление.

Я заставил это работать виртуально, запустив полную «среду разработки». Это означает, что я проверяю репозитории на виртуальном диске и запускаю все оттуда. Это вызывает небольшое неудобство, заключающееся в том, что я не могу легко получить доступ к этим файлам с помощью Finder, но положительным моментом является то, что нет заметных проблем с задержкой ввода-вывода, как при запуске Docker для Mac. В VSCode есть отличная функция перетаскивания в удаленную файловую систему и обратно, так что это касается практически всего.

В то время, когда я настраивался, ни один из крупных поставщиков виртуальных машин (VMware, Parallells и VirtualBox) не предлагал работающее решение M1, поэтому в итоге я использовал оболочку для QEmu под названием UTM. Он создан для iOS, но без проблем работает на MacOS. Единственный недостаток, который я заметил, заключается в том, что нет опции без головы, поэтому у меня в доке постоянно находится лишнее окно терминала.

Если вы хотите это сделать, сначала следуйте инструкциям по установке и настройке UTM с сервером Ubuntu. При установке операционной системы проверьте параметр SSH Server, чтобы убедиться, что он установлен. Чтобы получить к нему доступ, настройте UTM для перенаправления порта 22 на хост-машину, предпочтительно на другой порт, чтобы избежать конфликтов (это доступно на вкладке сети в окне конфигурации).

Теперь, чтобы использовать сервер с Visual Studio Code, установите пакет удаленных расширений (или только версию SSH, если вы знаете, что это единственная версия, которую вы будете использовать). Настройте новую цель SSH, которая обращается к localhost на перенаправленном вами порту. VSCode теперь подключится к виртуальной машине, установит расширения хоста и будет использовать их для серверной части вашей установки разработки.

Поскольку я использую ARM Linux, могут быть некоторые вещи, которые не будут работать так, как я привык, но в настоящее время я запускаю всю установку для Submotion, которая представляет собой NodeJS и Postgres (работает как образ Docker), а также несколько игрушечных проектов на Rust и пока все работает.