Портирование 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 на ваш смартофон! Благордарность им: