Így frissítettem CM13-ról AOSP Nougat-ra

Szoktam mondani a hallgatóimnak, hogy egy jó mérnök játszik. Ha van egy eszköze, programja, megismer egy új technológiát, akkor - ha megteheti - játsszon el vele, nêzze meg, mire képes.

Ezért - meg azért, mert állítólag akkuidőtartamban sokkal jobb - gondoltam úgy, hogy veszélyesen élek: a Xiaomi Mi3w-met CM13 nightlyról átfrissítem nem hivatalos AOSP Nougat-ra.

Állítólag (linkem most nincs, mobilról vagyok) majdnem minden megy rendesen, úgyhogy egy NANDroid backup után neki is láttam.

Mit töltöttem le:
- AOSP ROM
- Kernel
- OpenGAPPS
- SuperSU

Ezek mentek mind a belső SD kártyára.

Bootoljunk recoverybe! Elsőre benéztem, a bootloaderbe léptem be, ahonnan nem tudtam újraindítani/továbblépni, de egy PC-ről kiadott "fastboot reboot" parancs megoldotta.

Recovery elindult. Tiszta lappal szerettem volna indulni, így volt egy factory reset, illetve egy belső tárhely reset (ezzel persze okosan töröltem a telepíteni kívánt zip-eket is. Sebaj, "adb push" megoldja recoveryben is.

Utána, ahogy a nagykönyvben megtalálható: data és cache törlése, meg zip-ek telepítése.

Reboot.

Első benyomás: gyors.
Második: egy előugró ablak, miszerint a CyanogenStats sajnos leállt. Aztán ez végtelenítve. Rosseb.
(Egyrészt: ez mégis mit keres itt, másrészt, mi a hiba?)

Ennél a pontnál mentem el gyakorlatot tartani. Mivel a telefon - amit órának is használok - akadályoztatva volt, úgy gondoltam, a tanterem számítógépét használom óraként. Bekapcsolom: kék háttér, Windows frissítés. Ezúton üzenem Redmondnak: egy órát belegyógyíthatnak a frissítő alkalmazásba ;-).

Intermezzo vége: vissza a szobába, telefon továbbra is az asztalomon, továbbra is dobálja az ablakokat.

Nosza: "adb logcat" segítségével nézzük meg, mi fáj neki.

Unhandled exception, com.cyngn.cmstats. Ejnye-bejnye.

A kivételnek jogosultság-okai voltak.

De engem a mélyebb rész érdekelt. Mit keres az előző ROM-om romja (pun intended) a telefonomon?

"adb shell", su-val rendszergazdi. Nézzük, mik maradtak fenn?

pm list packages -f | grep cyngn

Ki is írt vagy tíz alkalmazást, mind a /system/priv-apps könyvtárban.

Ezek szerintem nem kellenek, backup van, töröljük őket!

pm-mel uninstall nem ment: read only a /system.

mount /system -o remount,rw sajnos nem megy, filesystem in use.

Nézzük recoveryben!

Ott fel sincs mountolva. Sebaj, kézzel. Viszont nincs pm. Sebaj, vesztenivalóm nincs, adott könyvtárakat törlöm kézzel. Néha kell a kockázat, hibáiból tanul az ember, a mérnök játsszon, stb. Emellett korábbi Android portolási tapasztalataim alapján nagy bajt ezzel nem lehet csinálni.

És lőn. Szép tiszta AOSP Nougat az eredmény. Ez a bejegyzés is onnan született.

(Egy délután. Közben órát tartottam, WSUS szervert konfiguráltam, meg a laptopom rendszerét tutujgattam. Gondoltam, idebiggyesztem, csak hogy az arcom is nagy legyen).

Hozzászólások

Nincsenek gondok a CM13-mal? Nekem sok SoD volt, egyszer csak fekete lett a kijelző, és a bekapcsoló gomb hosszan nyomásával kellett újraindítani. Meguntam, és visszatértem MIUIHU-ra, azzal nincsenek ilyen bajaim.

Ja, itt abaLOLe írogatta korábban, hogy aki nem csinált disztót/nem fordított saját kernelt, az nem is ember. Itt hívom fel arra, hogy rakjon össze egy működőképes Android ROM-ot valamire, az macerásabb (=ocsmány, még 2.3-at raktam össze anno Xilinx Zynq-re). (troll off)

Érdekes, hogy a rom nem format /system után flashelte fel a systemet. Vagy ez csak a factory image esetén van így?

"Bootoljunk recoverybe! Elsőre benéztem, a bootloaderbe léptem be, ahonnan nem tudtam újraindítani/továbblépni, de egy PC-ről kiadott "fastboot reboot" parancs megoldotta."
Tartsd nyomva ~30sec-ig a bekapcs gombot és kikapcsol vagy rebootol.

1|root@cancro:/ # mount -o rw,remount /system
mount -o rw,remount /system
root@cancro:/ # mount | grep system
mount | grep system
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 rw,seclabel,relatime,discard,data=ordered 0 0
/dev/block/loop0 /system/xbin/su ext4 rw,seclabel,noatime,data=ordered 0 0
root@cancro:/ # mount -o ro,remount /system
mount -o ro,remount /system
root@cancro:/ # mount | grep system
mount | grep system
/dev/block/platform/msm_sdcc.1/by-name/system /system ext4 ro,seclabel,relatime,discard,data=ordered 0 0
/dev/block/loop0 /system/xbin/su ext4 rw,seclabel,noatime,data=ordered 0 0
root@cancro:/ #

Mindezektől eltekintve a MIUI nem tetszik?

--
TH

Nekem nem engedte a remountot, azért csináltam ilyen nyakatekerten (van neked busybox felrakva?). Semmi bajom a MIUI-val, lesz Mi3W-re Nougat?

Annak idején azért vettem ezt a telefont, mert biztosítottnak láttam a jövőjét frissítések szempontjából. CM van rá, folyamatosan frissül, lesz rá CM14 is.