← К журналу

Хватит тормозов Xcode: сборки на облачном Mac mini M4

Заметки · 2026.06.02 · ~8 мин

Ультрабук для правок, облачный Mac mini M4 для тяжёлых сборок Xcode

Я работаю на MacBook Air с 16 ГБ. Писать Swift нормально, но ⌘B на полную сборку — вентиляторы, SourceKit и компилятор душат диск, курсор подвисает. Нужен не обязательно MacBook Pro, а чтобы сборка не занимала единственный ноутбук.

Рабочая схема: ультрабук — правки и Git, облачный Mac mini M4 — только xcodebuild. Xcode целый день по VNC не вариант (через океан хуже локалки). Удалённая машина — постоянно включённый билдер.

Локальный ультрабук Правки · Git · лёгкий preview VS Code / Xcode diff · commit · push тихо · батарея git / ssh Облачный Mac mini M4 xcodebuild · тесты · Archive кэш Derived Data подпись · notary · CI 24/7 · память Тяжёлые сборки в облаке, код — локально
Ноутбук: правки и Git. Clean Build, тесты, Archive — на облачном M4

Сборка или индексация?

swift-frontend, XCBBuildService — проблема сборки. Вечный SourceKitService — сначала Derived Data. Удаление 40 ГБ старого кэша вернуло локальные инкрементальные сборки. Облако снимает тяжёлую работу с ноутбука, не лечит всё.

Разделение

  • Локально: код, git commit, diff MR.
  • Облачный M4: build, test, archive; сертификаты только там.
  • Устройство: рядом — к ноутбуку, иначе на билдере.

Запуск

Версии Xcode совпадают; только Git; Derived Data на билдере ~/Cache/DerivedData (документация Apple).

Makefile (фрагмент)
build-remote:
	git push origin HEAD
	ssh $(REMOTE) 'cd ~/workspace/$(REPO) && git pull --ff-only && 	  xcodebuild -scheme $(SCHEME) -derivedDataPath ~/Cache/DerivedData build'

TN2339.

VNC — редко

p12, Keychain, мастер Archive — и закрыть. Не пишите код в VNC.

Команда: тот же M4 как runner

Self-hostedзаметка о runner.

Ошибки

Железо

M4, 24 ГБ, 512 ГБ. Стабильный IP: один IP на машину.

Альтернативы

MBP, Xcode Cloud, хакинтош-ВМ. Только Windows: облачный Mac. APAC: Release и нотаризация.

Коротко

«Run локально, сборка удалённо» без VNC — нет. RTT SSH для логов нормален. Сертификаты не на личном Mac.

Где арендовать билдер

Мой билдер на Hashvps Mac mini M4 — SSH каждый день, VNC для Keychain. Тарифы.

Hashvps

Нужен отдельный Mac для сборок?

Bare-metal macOS, SSH/VNC, вторая машина для xcodebuild.

Тарифы
Акция