Ebben a cikkben a CM forrásból ROM-má való összeállításának alap lépéseit fogom bemutatni.
Portolásról nem fogok írni, csak forrásból való fordításról lesz szó.
Angol tudással rendelkezőknek a következő komplex leírást javaslom: cyanogen/Development
Figyelem!
Nem vállalok felelősséget ha ezek alapján elrontod, téglásítod a telefonod. Ha dühöngő sárkánnyá változik és leégeti a szomszédságot, esetleg ha nem működik az ébresztő és ezért kirúgnak.
Ez egy általános leírás a készülékek nagy részére igazak lesznek a következő lépések.
Először is szükségünk van egy Linux disztribúcióra.
Elméletben a Live CD is megteszi de én nem javaslom.
Ezen felül szükségünk van még sok feles tárhelyre. Nagyjából 50 GB-t fogunk használni.
A művelet a gazda gép teljesítményétől függően több órát is igénybe vehet.
Mivel kezdőknek íródik a cikk így a legközismertebb LINUX disztribúciót veszem alapul.
Tehát szükségünk van egy Ubuntu-ra.
Szükségünk lesz egy adminisztrátor jogokkal rendelkező Terminálra és a szükséges csomagokra valamint egy Java-ra.
Jelenleg a 8-as Java van használatban így azzal dolgozok, elméletileg Java 6 fölött bármi jó.
1 - Terminál nyitása (Ubuntu gyors gomb: CTRL+ALT+T)
2 - $SU (Ezzel admin jogot szerez a Terminál)
3 - Bekéri a Super User-hez tartozó jelszavunkat.
4 - A Java telepítése a következőként néz ki:
add-apt-repository ppa:webupd8team/java
apt-get update
apt-get install oracle-java8-installer
apt-get install oracle-java8-set-default
5 - Szükséges csomagok telepítése:
apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev libncurses5-dev x11proto-core-dev \
libx11-dev libreadline6-dev libgl1-mesa-dev tofrodos python-markdown \
libxml2-utils xsltproc pngcrush gcc-multilib lib32z1 schedtool
6 - Google Repo beszerzése, futtatási jog megadása:
mkdir ~/bin
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
7 - Itt ajánlott egy reboot.
8 - Vissza a terminálba!
9 - Ideje beállítani a CM repo-t.
CM 12.1-el ez így néz ki:
mkdir -p ~/CM12.1/android/system
cd ~/CM12.1/android/system
PATH=~/bin:$PATH
repo init -u git://github.com/CyanogenMod/android.git -b cm-12.1
Az aktuális megtalálható a github/CyanogenMod/android oldalon.
10 - $repo sync
- Ez hosszú lesz.
11 - Szükségünk van a prebuildre is.
cd ~/CM12.1/android/system/vendor/cm/
./get-prebuilts
cd ..
Eddig a pontig csak favágás. Mostantól mindenki a saját készülékéhez készíti:
Szükségünk van az adott készülék kódnevére. Legegyszerűbben a Cyanogen oldalán találjuk ezt meg.
Néhány példa:
OnePlus One - bacon
Nexus 4 - mako
Nexus 5 - hammerhead
Nexus 6 - shamu
12 - Amennyiben nincs a CM device tree-ben a készülékünk a következő parancsokra hiba fog érkezni és kézzel github-on kell megkeresni azokat. Ellenkező esetben a következő parancsokkal elindítjuk az utolsó folyamatot.
.build/envsetup.sh
breakfast KÓDNÉV
brunch KÓDNÉV -jX
Az X a CPU magok számát jelöli.
A kódnév pedig a saját készülék egyedi kódneve.
Néhány óra elteltével megtaláljuk a flashelhető ZIP file-t a /CM12.1/out/target/product/KÓDNÉV mappában.
Köszönöm, hogy benéztél, remélem tudtam segíteni!
Hasznos linkek:
github - CyanogenMod/android
How To Port CyanogenMod Android To Your Own Device
Cyanogen/Devices
-s3nsitivity