Чому Hackintosh вже актуальне. Розвінчання міфів

Кожному iOS розробника потрібен свій куточок з печеньками, плюшевою качечкою і шайтан-машиною на OSX.
В світлі переходу на Swift, потужність заліза стала особливо затребувана. Щоб комфортно розробляти під айфони, потрібен як мінімум процесор з частотою 3+ ghz, SSD на 120-250Gb і оперативы 16 гигов.
Все це саме для того, щоб не було бажання подивитися футбол, поки запускається проект або відкривається interface builder.
А знаєте, що ще було завжди актуально? Божевільні ціни на яблучні пристрою:
image
PC з таким же, плюс-мінус, залізом можна запросто зібрати всього за 30.000 рублів! (інфа на листопад 2016).
Багато, звичайно, думають, що раз компанія купує залізо, то значить фінанси нескінченні, можна не соромитися у засобах. Якщо ви працюєте в Google, то вам пощастило і життя хороша. Але в інших випадках це не так.
Що ж робити? Не розробляти ж під Android врешті-решт?
Під катом ми дізнаємося про сучасний Hackintosh, його ролі в розробці, способів безболісної установки і настройки, почуємо думку людей, що працюють на ньому не перший рік, і проведемо тест на iOS інструментах.

Короткий вступ
Більшість, природно, не збираються купувати пристрій за 120к своїм розробникам і йдуть по альтернативному шляху — беруть Mac Mini 2011-2014 років за 50-60к, який дещо слабше. Але навіть в цьому випадку ціна все одно захмарна. В першу чергу, порівняльні тести ми будемо проводити саме на такому спрощеному варіанті, так як він найбільш поширений.
Мушу попередити, що офіційно установка Хакінтоша — це порушення ліцензійної угоди з Apple, але до тих пір, поки ви не продаєте власні комп'ютери з передустановленою OS X, все більш ніж невинно.
Рішення
усталений стереотип, що установка Hackintosh виглядає приблизно так:
image
І це буде правдою, але лише частково. Як і на будь-якому терені, ніщо не стоїть на місці. Ось і ринок зламаних маків впевнено пішов уперед з того часу, як ви після лабораторних в інституті, ще не бородатим студентом в далекому 2007-му, намагалися поставити на свій дохлий комп це диво техніки.
Зараз це процес виглядає наступним чином: створюємо саму звичайну завантажувальну флешку з самим звичайним Mac з AppStore, проводимо невелику налаштування BIOS, встановлюємо систему і докидываем дрова парою кліків. На geektimes навіть є чудова інструкція з усього цього процесу.
Коли зрозумів, що дарма ти сидиш на своєму Mac Mini.
image
Чому ж тоді стільки форумів залите сльозами розробників і історіями провалу? Якби все було так просто, то ніхто б просто не купував пристрої Apple. Вся справа в тому, що головний камінь спотикання — це неправильно підібране залізо.
Комплектуючі
image
Навіть більше скажу, найбільш проблемна частина — це відеокарта, на неї дійсно потрібно звернути увагу. Все інше, як правило, вже працює з коробки.
Природно, ми говоримо тільки про стаціонарників. З ноутбуками подружити яблуко ще жодного разу не вийшло, скільки не старався. Кажуть, мистецтва установки хакінтоша на ноут вчать на останніх курсах Хогвартса.
Повертаючись до відеокарт, пораджу перевірені часом варіанти, які регулярно використовуємо в себе в компанії: gt210 і gt630. Практично безкоштовні, не потребують танців з налаштуванням, що служать вірою і правдою вже не перший рік. Для машини розробника підходять ідеально. Використовувати вбудовану в CPU картку я б не радив, так як, по-перше, гірше налаштовується, а по-друге, кілька позначається на продуктивності.
Ось тільки є одна особливість, через яку я одного разу ледь не вийшов у вікно, намагаючись другу добу завести відео — хакинтоши не люблять VGA. Цифру на льоту схоплюють — DVI/HDMI/DP все відразу завелося, а аналог ніяк. Так що якщо будете підбирати монітор для робочої станції, то переконаєтеся, що у нього є HDMI або DVI.
У цілому по залізу, контент стандартного чорного ящика для розробника виглядає наступним чином. Даю відразу посилання на Yandex-Market для актуальних цін:
  • CPU: Intel Core i3-6100 Skylake (3700MHz/LGA1151/L3 3072Kb). Не обов'язково брати процесор з блек джеком і нанотехнологіями, лише б це було Intel. AMD традиційно ніхто не любить не підтримується яблуком. Ми зупинили свій вибір саме на i3-6100 Skylake через його порівняну дешевизну(~7к на момент написання статті) і солідних кінських сил.
  • Motherboard: Gigabyte GA-H110M-S2H. Гігабайт практично завжди легко заводиться з коробки, не вимагає патчінга USB, ethernet злітає сам, а для аудіо досить потрібний kext в multibeast вказати, що елементарна процедура сама по собі. Поставити галочку навпроти ALC887 і натиснути next може і эникейщик.
    Зверніть увагу:, що плата для 1151 чіпсету(Skylake) і DDR4 оперативы! Ваші старі проц і пам'ять туди, на жаль, не увійдуть.
  • GPU: GigaByte GeForce GT 210. Про відеокарту можна ще додати, що якщо берете в офіс, то краще зупинитися на варіанті без кулера з пасивним радіатором. Коли вона одна така — це нічого страшного, але якщо їх стає багато, то гул вже цілком відчутний і починає набридати.
    По виробнику пораджу дивитися в бік GigaByte по можливості — воно так історично склалося, що краще ставиться з хакинтошем.
  • Cooler: Zalman CNPS80F. Обміняв на коробку цукерок в магазині. Вкрай дешевий кулер, досить легко ставиться(якщо бути досить впевненим у собі) і непогано розслабляє. Для мене Zalman завжди був One-Love, в цей раз фірма теж не підвела.
  • SSD: Kingston SSDNow V300 256Gb. Диск перевірений часом. У мене в Macbook такий стоїть, з яким я подорожую ось уже кілька років, будинки в ігровому стационарнике, на роботі практично в кожній робочій конячці, і (соромно зізнатися) на локальному офісному сервері. І за весь цей час ні один навіть не натякнув на збій. Якщо у вас немає особливих переваг, то рекомендую як варіант з гарантією.
    p.s. Не забудьте взяти санчата 2.5 3.5, якщо купуєте для стационарника.
  • RAM: Crucial DDR4 8Gb * 2. Не дорога і містка оперативна пам'ять. Але варто пам'ятати, що вона UDIMM (нерегистрировая). Нібито менш стабільна і за рахунок цього швидше і дешевше, але поки несподіванок не виявили. Для офісу саме те.
    Якщо ви сумніваєтеся, брати одну або дві плашки для розробки під iOS, то беріть скільки поміститься в матір, тому що Xcode — це Chrome у світі IDE. Йому ніколи не буде багато оперативы, він завжди знайде куди прилаштувати 'надлишки'. Особливо, якщо ви ще граєтесь симулятором.
Про корпус писати не буду, підійде будь-mini-tower, лише б влізла мати.
Продуктивність
Щоб не тестувати сферичних коней у вакуумі, ніяких абстрактних навантажувальних тестів ми проводити не будемо, кожен сам може подивитись індекси того чи іншого процесора, якщо зацікавить. Я ж поділюся спостереженнями в швидкості конкретно на робочих інструментах Xcode, наскільки відчутною є різниця між Mac Mini 2011-го року з оновленою оперативною пам'яттю та диском(вважай, версія 2014 року), і нашим франкенштейном. HighEnd девайс ми залишимо в стороні, тому що на нього не вистачило фінансів)
За традицією попередніх статей, візьмемо все той же свифтовый Open Source проект, яке ми так рясно розганяли. Для чистоти експерименту відключимо повно-модульну оптимізацію і зробимо повну очистку проекту.
Порівнювати будемо залізо з приблизно однакового цінового сегмента, БО MacMini такий зараз коштує близько 30к, а новий 2014-го року від 50 копійок і вище.
  • Mac Mini
    image
    Час складання проекту:
    image
  • Hackintosh
    image
    Час складання проекту:
    image
Результат на обличчя. За одну і тугіше суму для правильного заліза можна отримати більш ніж дворазовий приріст продуктивності! Крім того, це впливає не тільки на час компіляції, але і в цілому проявляється на чуйності системи, що важливо.
Щасливий розробник на швидкій системі:
image
Стабільність
В якості критеріїв візьмемо користувача враження, складність оновлення, частоту зависань, глюків, збоїв і в цілому стабільність системи. Постараємося об'єднати суб'єктивне сприйняття й об'єктивне.
  • Враження: хлопці, які сидять на хакинтошах без винятку говорять, що все спритно і не хочеться вдарити системний блок ногою, щоб працював швидше. Між природним маком і зітканим з чорної магії, суттєвої різниці не помітили.
    А як сказав мій колега Олексій: якщо порівнювати з Windows, то просто казка.
  • Збої і помилки: практично ніколи не зависає. За кілька років буквально пару разів таке траплялося. Причини не виявили, проблема вирішується простою перезавантаженням.
  • Оновлення: а ось тут криється головний побічний ефект. Перехід на свіже мажорний реліз — це як коробка цукерок: ніколи не знаєш, що всередині. Може оновитися, а може і доведеться заново всю систему накочувати. Мінорні оновлення входять без проблем, але перед крупняком рекомендується зробити бекап важливої інформації і мати під рукою настановну флешку з останньою версією.
    Це що стосується програмного оновлення. А ось з прокачуванням заліза Хакінтоша далеко попереду. Наприклад, на Mac Mini 2014-го року(це остання модель) не можна навіть докинути плашку оперативки, вона там просто впаяна. Що вже говорити про оновлення процесора і відеокарти при необхідності. Теж саме стосується ремонтопридатності, якщо в Mac у вас що-небудь летить, то полагодити або замінити це буде набагато складніше. Крім цього, старі Mac(до 2013 року) мають апаратне обмеження за обсягом оперативної пам'яті (16 гб).
Все це стосується як Sierra(остання версія), так і El Capitan, якщо хтось воліє операційки постарше.
Висновок
Цією статтею я хотів показати, що для iOS розробки не обов'язково потрібен дорогий Mac або особливі хакерські навички. Технології не стоять на місці і установка Hackintosh більше не така болюча і не потребує високої експертизи як раніше.
Ми нещодавно провели експеримент, дозволивши стажисту з третього курсу університету, самостійно зібрати і налаштувати собі робочу машину, включаючи повну установку системи. Отримавши всього пару порад про прапори завантаження, утиліту для фінальної конфігурації і флешку з системою, хлопець буквально за день зібрав собі готовий робочий інструмент.
Мабуть, це все. Буду радий почути ваш досвід роботи з Hackintosh, коментарі і зворотний зв'язок.
На солодке залишу кілька посилань, які можуть бути корисні при роботі з хаком:
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.