Pull to refresh

Установка Sailfish OS на Nokia N9

Reading time4 min
Views32K
image

Не так давно Jolla начали продажи своего нового смартфона на территории Финляндии. Как известно, официальной поддержки N9/N950 не предвидится, но сообщество с maemo.org уже осуществило портирование и создало wiki–страничку с подробным мануалом. Именно его я и взял за основу при установке. Все делалось из–под Ubuntu 64 bit, но вполне подойдет любой debian–based дистрибутив. Также потребуются немного свободного времени и терпения.

1) Делаем полный бэкап системы, документов, контактов и всего, что кажется необходимым. Отключаем запрос pin–кода на sim–карте и защитный код безопасности на самом телефоне. Убеждаемся, что батарея заряжена хотя бы на 90 %. Отдаем себе отчет, что в случае ошибочных действий или отключения USB–кабеля во время прошивки, можно получить полностью неисправный телефон, который будет проблематично восстановить в домашних условиях.

2) Устанавливаем отсюда флэшер. Есть версия и под Windows, но я не рекомендую ее использовать, т.к. на определенном этапе вы не сможете установить Ubiboot–loader. По крайней мере, желательно иметь под рукой хотя бы виртуальную машину с Linux.

3) Надо посмотреть factory product code, написанный на трее сим–карты смартфона, и скачать вот здесь необходимую вам чистую заводскую прошивку с Meego Harmattan. (В моем случае factory product code – 059J228, а значит версия прошивки RM–696 NDT MEA1 MEA2 BLACK 64GB). В архиве будут два файла вида: DFL61_HARMATTAN_40.2012.21–3_PR_LEGACY_006–OEM1–958_ARM.bin, 528DA068_DFL61_HARMATTAN_40.2012.13–7.MEA_EMMC_MEA.bin. Распаковываем и для удобства переименовываем их в main.bin и emmc.bin соответственно.

4) Запускаем флэшер в режиме определения ID подключенного устройства flasher –i и подключаем выключенный телефон USB–кабелем. Если флэшер считал ID смартфона, значит все в порядке и можно начинать процесс прошивки. Запускаем его командой flasher –F main.bin –F emmc.bin –f В случае возникновения ошибки Error claiming USB interface: Device or resource busy надо добавить строчки blacklist cdc_phonet, blacklist phonet, blacklist cdc_acm в /etc/modprobe.d/modprobe.conf

5) После успешной прошивки запускаем Meego, выставляем региональные настройки, время и дату, включаем режим разработчика. Именно на этом этапе очень советую из–под пользователя запустить в терминале смартфона команду disclaimer–cal remove View–openmode В случае если вы этого не сделаете, при каждом последующем включении телефона вам придется около 10 секунд наблюдать раздражающий дисклеймер, уведомляющий о том, что вы модифицировали системное ПО и лишились гарантии Nokia.

6) Устанавливаем OpenMode kernel. На этот раз запускаем флэшер с параметрами flasher –a main.bin –k zImage_2.6.32.54–openmode_l2fix ––flash–only=kernel –f –R

7) Снова запускаем Meego и убеждаемся, что дисклеймер при загрузке не появляется. Также рекомендую сразу установить N9/50 QuickTweak. Это совершенно не обязательно, но твик позволит активировать ssh root access и установить bash, wget и прочие маленькие удобности. Также после установки OpenMode kernel Meego перестает запоминать пароли учетных записей. Вылечим это, набрав в терминале смартфона:
rm –rf /home/user/.accounts
rm –rf /home/user/.aegis
mkdir –p /root/ssl
cp –Rf /etc/ssl/certs/* /root/ssl
rm –rf /etc/aegisfs.d
sync
/sbin/reboot
А после загрузки:
cp –Rf /root/ssl/* /etc/ssl/certs

8) Устанавливаем MOSLO kernel от nemomobile.org. Разахривируем rpm–пакет и как обычно flasher –k zImage–moslo –n initrd–moslo –l –b Теперь на флэш–памяти смартфона появился новый раздел Alt_OS, который должен смонтироваться в /media/Alt_OS на PC.

9) Устанавливаем Ubiboot. Опция необязательна, но это удобный bootloader с GUI, который позволит при загрузке переключаться между SailfishOS и Meego Harmattan. Для этих целей есть уже предварительно сконфигурированная версия, которой я и воспользовался. Но если вы планируте запускать еще FirefoxOS и/или Nitroid, то устанавливайте чистую версию. Скачиваем архив в папку с флэшером и распаковываем tar –xvf ubiboot–02_0.3.5_131213_SFOS.tar Подключаем телефон в режиме Storage Mode и копируем извлеченный ubiboot_035_sailfishos.tar в каталог MyDocs. Теперь переходим в теминал Meego, получаем права root, распаковываем.
devel–su
cd /home/user/MyDocs/
tar –xvf ubiboot_035_sailfishos.tar –C /

Выключаем смартфон, из десктопного терминала снова запускаем флэшер с параметрами sudo flasher –a main.bin –k zImage_2.6.32.54–ubiboot–02_301013 ––flash–only=kernel –f –R Bootloader установлен.

10) Наконец–то приступаем непосредственно к установке Sailfish. Существует несколько уже готовых образов, одним из которых я и воспользовался. Если у вас есть желание и время поэкспериментировать, то изучив документацию проекта MerSDK, можно подготовить собственный. Переименовываем скачанный образ в sailfish.tar.bz2, распаковываем его в примонтированный каталог /media/Alt_OS на десктопе. tar ––numeric–owner –xvjf sailfish.tar.bz2 –C /media/Alt_OS/ Этого уже достаточно для запуска SailfishOS, но есть еще пара вещей, которые желательно сделать сразу, это включение root–доступа по ssh nano /media/Alt_OS/etc/ssh/sshd_config расскоментируем PermitRootLogin yes и процедура, позволяющая после загрузки изменить root–пароль, правим файл nano /media/Alt_OS/etc/shadow Там будет строчка вроде root:$1$00Z6Bfjc$vlIKUOMHIavIABL1gNuy6/:16049:0:99999:7::: Приводим к виду root::16049:0:99999:7::: Не забудьте выставить пароль root в терминале SailfishOS после запуска.

В общем–то, установка несколько сложна, да и есть некоторые баги, я к примеру, так и не смог пока запустить камеру и установить карты. Но хотелось бы надеяться, что в ближайшем будущем финский смартфон появится и на отечественном рынке. Тем более, что Jolla начали сотрудничать с Яндексом.
Tags:
Hubs:
Total votes 12: ↑12 and ↓0+12
Comments15

Articles