Este tutorial es Universal para todos los modelos que CyanogenMod de soporte en 4.3 CM.10.2.

NO ASEGURO QUE FUNCIONE EN TODOS, SOLO HE PODIDO PROBAR CON EL Galaxy Nexus, Nexus 4 y Galaxy S2. POR LO QUE PODRÍA SER QUE EN ALGÚN TERMINAL SE TUVIERA QUE HACER ALGÚN PASO MAS.

Atención a esto:

En este tutorial, el "modelo" viene a ser el nombre de tu modelo de terminal.
Por ejemplo: modelo=maguro / modelo=mako / modelo=i9300 y un largo etc.

Y en el caso de la "marca" viene a ser la marca de tu terminal.
Por ejemplo: marca=lge / marca=samsung y un largo etc.

Para saber el nombre de tu dispositivo, puedes echar un ojo aquí:

Devices - CyanogenMod

ES NECESARIO:

-Sistema operativo Linux 64bits (debería funcionar con cualquier distro)

-Probado en Ubuntu 12.04 (64 bits)

-Hardware decente(minimo un doble núcleo con 4GB de RAM)

-Espacio en disco de unos 150GB (mejor que sea superior)

-ADB y Fastboot (Instalación en el segundo post)

Paquetes requeridos:
(Son universales, valen para casi cualquier tutorial de compilado)

-Simplemente copia y pega esto en una ventana de terminal y le das al enter. (instala los siguientes paquetes, uno detrás de otro):

Código:
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.8-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev openjdk-6-jre openjdk-6-jdk pngcrush schedtool libxml2 libxml2-utils xsltproc
Código:
sudo apt-get install g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline-gplv2-dev gcc-multilib
Para usuarios de Linux Mint:
Código:
sudo apt-get install ia32-libs
Problemas con el java?
(solo si lo anterior te tira error con el java)

 
Código:
sudo add-apt-repository ppa:webupd8team/java
Código:
sudo apt-get update
Código:
sudo apt-get install oracle-java6-installer
Código:
sudo update-java-alternatives -s java-6-oracle
Código:
sudo apt-get install oracle-java6-set-default


Obtención del código Fuente

Copy/paste:

Crear directorio para el repositorio binario:

Código:
mkdir ~/bin
Código:
PATH=~/bin:$PATH
Añadir el repositorio binario:

Código:
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
Dar permisos al repositorio binario:

Código:
chmod a+x ~/bin/repo
Crear el directorio para el código CM:

Código:
mkdir ~/source-cm-10.2
Entrar en el directorio del código:

Código:
cd ~/source-cm-10.2
Inicializar el repositorio de CM y descargar el manifiest:

Código:
repo init -u git://github.com/CyanogenMod/android.git -b cm-10.2
Sync el código fuente de CM:

Código:
cd ~/source-cm-10.2
Código:
repo sync
Este paso va a tardar horas, por lo que tranquilo, en caso de que de algún error, vuelve al poner el último comando.*

Vamos a añadir los prebuilds como el terminal emulator:

Código:
cd ~/source-cm-10.2/vendor/cm
Código:
./get-prebuilts
Ahora vamos a realizar la descarga del código y kernel del dispositivo que nos interesa:

Aquí nos creará los xml con los enlaces a los repos que vamos a querer compilar, para poder mantener actualizado para futuras compilaciones.

Código:
source build/envsetup.sh
Aquí es donde tenéis que poner el nombre de vuestro dispositivo:
Código:
breakfast modelo
Empezará a descargar el código y a sincronizar, espera a que acabe y procede.

Extraer archivos propietarios:

Conecta el móvil al usb encendido con la depuración activada.
(Este paso lo he probado con la rom oficial con root, asegúrate que si te pide aceptar la huella digital que lleva 4.3 lo aceptes, ya que si no, dará error.)

Ahora mete en el terminal lo siguiente:

Aquí es donde tenéis que cambiar el marca y modelo por el de vuestro dispositivo:
Código:
cd ~/source-cm-10.2/device/marca/modelo
Ahora ejecutas:

Código:
./extract-files.sh
Mira que no tire errores, si los tira, habrá que ver el por que.

Iniciar la construcción:

Código:
cd ~/source-cm-10.2
Aquí es donde tenéis cambiar el modelo por el nombre de vuestro dispositivo:
Código:
. build/envsetup.sh && brunch modelo
Cuando acabe la rom la encontrarás en:

Carpeta Personal/source-cm-10.2/out/target/product/modelo/

Para la recopilación es tan fácil como:

Código:
cd ~/source-cm-10.2
Código:
make clobber
Código:
repo sync
Aquí es donde tenéis cambiar el modelo por el nombre de vuestro dispositivo:
Código:
. build/envsetup.sh && brunch modelo
Este paso es totalmente necesario para poder descargar los cambios desde la última sincronización, y poder compilar de nuevo con los cambios nuevos.

Temas Similares en HTCSpain:
  • Crea tus propias compilaciones Slim en 4.3 (Todos los modelos) - [PureMod]
  • [ROM] CyanogenMod 7 SGS - [Juanbi]
  • Con tu iphone diseña tus propias zapatillas NIKE - [tonyysupony]