Портирование HyperOS 2
Этап 1 - Подготовка
В первую очередь, нужно определиться, из какого устройства брать базу. Тут, уже, дело ваше, но я рекомендую брать прошивку с устройства, которые максимально похоже на ваше. Это поможет улучшить совместимость
INFO
Например, для порта Hyper NexiunOS я взял базу с POCO F3. POCO F3 чуть близок с POCO X3 PRO. (И на порте серьезных багов нету)
INFO
База - эта та прошивка, которую мы будем портировать.
Этап 2 - Донор
Для порта конечно понадобится донор
INFO
Донор - это то устройство, с которого мы будем брать важные файлы. У донора должнен быть либо MIUI (но предеться доделать фалйы), либо уже есть порт HyperOS, откуда можно будет взять донор.
Желательно что бы версия прошивки донора была близка или одинакова версии базы!
Этап 3 - Подготовка из донора
INFO
Требуется:
- Root доступ к корню
- Создаем папку
portв/sdcard/
- Создаем папку
- Переходим по пути
/product/etc/
- Переходим по пути
- Копируем:
build.prop, папкуdisplayconfig, и папкуdevice_featuresвport
- Копируем:
- Идем в
/system_ext/и копируем папкуapexв папкуsdcard. Также удаляем все файлы вapex, кроме с.vndk.
- Идем в
- Идем в
/product/overlay/и копируемAospFrameworkResOverlay.apk,DevicesAndroidOverlay.apk,DevicesOverlay.apk. ИногдаGestureLine.apk.
- Идем в
- Проверяем
portна наличие всех нужных файлов.
- Проверяем
Этап 3 - Расспаковка Базы
Все будет на примере расспаковки super.img, разделенного на части. На Android.
- Устанавливаем UKA кухну. (Как это делать, читайте в теме)
- Запускаем через команды в терминале:
suи
menu- Закидываем
super.img.0,super.img.1и т.д в/data/local/UnpackerQfil
- Закидываем
- В UKA переходим
11 -> 4 -> 1
- В UKA переходим
- Спустя время будет текст:
.....Найдены файлы "*sparsechunk*"
.....Склейка super_chunk.raw.img...
.....Успешно создан файл super_chunk.raw.img
.....Сохранено в /data/local/UnpackerQfil/outputРезультат будет лежать в /data/local/UnpackerQfil/output Для удобства, файл super_chunk.raw.img переименуем в super.img
- Дальше, наш готовый
super.imgкидаем в/data/local/UnpackerSuper/, а папку/data/local/UnpackerQfil/очищаем для освобождения места. Удаляем все, кроме: папкиconfig,system_ext.img,system.img,product.img, иmi_ext.img(если есть)
- Дальше, наш готовый
- Переходим снова в UKA, и идем
3 -> 2 -> 1 ->
- Переходим снова в UKA, и идем
- После распаковки
super.imgфайлы будут лежать в/data/local/UnpackerSuper/. Теперь тамже, удалемsuper.img.
- После распаковки
- Теперь в UKA снова идем
3 -> 2 ->, но теперь выбираем пунктРасспаковать все образы
- Теперь в UKA снова идем
- Результат в
/data/local/UnpackerSystem/
- Результат в
Этап 4 - Замены файлов.
Это самый легкий этап. Долго писать не буду, просто замена файлов, но расскажу про разные моменты.
- Папки
displayconfigиdevice_featuresв базе сначало надо удалить.
- Папки
build.propне заменять!!!
- Если вдруг у вас есть
mi_ext, тогда перенесите файлы из базы/mi_ext/productв/product/
- Если вдруг у вас есть
WARNING
Не заменяйте файлы! Просто копируйте в соответсвии с папка/файл !!!
- После копирования файлов из
mi_ext, папкуmi_extудаляем
- После копирования файлов из
Этап 5 - сборка
После замены, можно уже собрать образы.
- Копируем папки все папки из
/data/local/UnpackerSystem/в/data/local/UnpackerSystem/erofs/
- Копируем папки все папки из
- Идем снова в UKA,
7 -> 2 -> 5Собираем все образы.
- Идем снова в UKA,
Результат будет лежать в /data/local/UnpackerSystem/
- Дальше, прошивка образов через fastboot:
## Прошиваем system_ext
fastboot flash system_ext system_ext.new.img
## Прошиваем system
fastboot flash system system.new.img
## Прошиваем product
fastboot flash product product.new.img- Дальше загружаемся. Если хотите прошить vendor, тогда:
## Прошиваем vendor
fastboot flash vendor vendor.imgЭтап 6 - Финал.
Поздровляю, вы портировали HyperOS 2 на ваш смартофон! Благордарность им: