Cocina tu propia ROMTutoriales

Cómo cocinar nuestra propia ROM para Android: La cocina

La Cocina

Ahora sí, ha llegado el momento de trastear con la ROM. En este tutorial explicaré qué hace cada opción de nuestra cocina, crearemos nuestra carpeta de trabajo y extraeremos todos los datos de nuestra ROM, además añadiremos las personalizaciones del operador/fabricante, en este caso Samsung, para poder modificar más aspectos de Android muy facilmente.

Antes de continuar, me gustaría advertiros de que hay que tener cuidado de qué aspectos modificamos ya que nuestro terminal puede dañarse irreparablemente, por este motivo no me hago responsable del daño que pueda sufrir algún dispositivo por seguir este tutorial. Advertidos estáis.

Accediendo a la cocina

Para acceder a la cocina tendremos que hacerlo a través de Cygwin, así que lo primero que debemos hacer es abrirlo y ejecutar:

cd Kitchen

Y a continuación:

./menu

Ojo, es sensible a mayúsculas y minúsculas, así que no es lo mismo: Kitchen, que kiTchen, que kitcheN.

Ventana de Cygwin

Ventana de Cygwin

Una vez ejecutado el segundo comando accederemos a la cocina. El menú es muy sencillo y si sabéis algo de inglés podréis moveros por él sin problema.

Menú principal

Menú principal

A continuación os explicaré qué hace cada opción:

  1. Crea el espacio de trabajo y desempaqueta la ROM. Sólo se puede cocinar una ROM, así que si queremos hacer varias a la vez tendremos que tener una cocina por cada una.
  2. Rootea.
  3. Añade BusyBox. No es más que un conjunto de herramientas habituales en UNIX y que no están en Android.
  4. Elimina el sonido al encender el móvil.
  5. Alinea todos los paquetes .apk para optimizar el uso de la RAM. Esta opción no la utilizaremos porque lo haremos al construir la ROM.
  6. Establece si la ROM realizará los wipes, es mejor que esa operación la hagan los usuarios para no borrar datos sin necesidad.
  7. Cambiar el nombre de compilación. Nosotros editaremos directamente el archivo build.prop.
  8. Muestra toda la información de la ROM, nos será de utilidad para saber qué hemos hecho y qué queda.

0. Advanced Options:

ADVANCED OPTIONS

ADVANCED OPTIONS

11. “Deodexa” los paquetes. Las ROMs oficiales incorporan los paquetes divididos en un archivo .apk y otro .odex. Con esto se acelera el arranque del dispositivo la primera vez que se inicia. Sin embargo, cuando lo que se pretende es modificarlos, es un problema porque no podemos acceder al contenido por estar dividido. Esta opción los vuelve a unificar. La parte negativa es que la primera vez que se inicie la ROM tardará un poco, el resto de veces iniciará rápido.

12. Desempaqueta/empaqueta el kernel, esta opción es mejor no tocarla si no sabemos qué estamos haciendo.

13. Añade el soporte para el directorio /data/app. Las aplicaciones que integremos en la carpeta /system/app no pueden estar firmadas, por este motivo, si queremos añadir más aplicaciones lo habitual es que estén firmadas, así que no funcionarán. La solución es añadir este directorio y meter aquí dichas apps.

14. Esta opción añade soporte para el directorio /etc/init.d, su utilizad es ejecutar todos los scripts que se encuentren en él en cada inicio del móvil.

15. Desempaqueta el archivo data.img

16. Firma un apk o un zip.

17. Convierte el script de instalación del formato update-script a updater-script. Se hace automáticamente al construir la ROM, así que no es necesario que lo hagamos.

18. Plugins de la cocina.

 Carpeta de trabajo

Como vimos anteriormente, para crear el directorio de trabajo tenemos que elegir la opción 1 en el menú principal.

Working Folder

Working Folder

Nos pregunta que comprobemos que efectivamente hemos movido el archivo de la ROM a la carpeta “original_update”. Además, presionando la letra “S” podemos ver los formatos admitidos. Como ya hemos hecho todo, damos a ENTER para continuar.

Ha encontrado nuestra base

Ha encontrado nuestra base

Presionamos ENTER

Nombre del directorio de trabajo

Nombre del directorio de trabajo

Nos muestra el nombre que va a asignar al directorio de trabajo. Dado que sólo podemos tener uno no es necesario cambiarle el nombre, así que presionamos ENTER. Ahora empezará a extraer todos los archivos.

Ejecutar como administrador

Ejecutar como administrador

Es posible que nos avise de que la aplicación encargada de extraer los archivos se deba ejecutar como administrador. Ni caso, pulsamos OK.

Ext2explore

Ext2explore

Vamos a “File -> Open image” y abrimos el fichero:

 C:/cygwin/home/[TU_USUARIO/Kitchen/WORKING_050413_025505/system/ext4_system.img

En la columna de la izquierda, seleccionamos el dispositivo que ha salido, pulsamos sobre él con el botón derecho del ratón y a continuación seleccionamos “Save

Botón secundario del ratón -> Save

Botón secundario del ratón -> Save

Y lo guardamos en:

 C:/cygwin/home/[TU_USUARIO]/Kitchen/WORKING_050413_025505/system

Cuando acabe, lo cerramos y pulsamos ENTER.

Customer Software Customization (CSC)

Customer Software Customization (CSC)

Nos pregunta si queremos descomprimir también las aplicaciones que ha insertado el fabricante/operador. Es interesante agregarlas, aunque después eliminemos la mayoría, pero algunas configuraciones no vendrán bien. Pulsamos ENTER.

CSC

CSC

En esta ocasión tendremos que hacer más cosas. Lo primero es abrir Ext2explore manualmente, para ello abrimos su ejecutable, que se encuentra en:

C:/cygwin/home/[TU_USUARIO]/Kitchen/tools/ext2read_windows/ext2explore.exe

Repetimos la operación de antes, pero en esta ocasión buscamos el archivo ext4_cache.img:

C:/cygwin/home/[TU_USUARIO]/Kitchen/WORKING_050413_025505/system

En esta ocasión, al pulsar en “Save” elegimos que lo guarde en el escritorio. Una vez guardado podemos cerrar Ext2explore. En el escriotiro veremos que se ha creado una carpeta llamada “recovery”. Dentro habrá un archivo comprimido llamado sec.csc.zip. Descomprimimos el archivo y obtendremos dos carpetas:

  • META-INF
  • system

Copiamos la carpeta system en:

C:/cygwin/home/[TU_USUARIO]/Kitchen/WORKING_050413_025505

Nos aparecerá un mensaje diciendo que si queremos combinar los archivos, aceptamos. Volvemos a la ventana de Cygwin y pulsamos ENTER.

Show info

Show info

Pulsamos ENTER para que nos muestre toda la información de la ROM.

Información

Información

Como era de esperar, la ROM que hemos usado no tiene soporte para la mayoría de cosas, ya que se trata una ROM Stock, así que volviendo al menú principal y entrando en cada uno de los apartados que expliqué anteriormente añadiremos soporte para todo, de modo que al acabar ponga YES en la mayoría de filas.

Actualización:

He subido un screencast (el primero que hago, así que no seáis muy duros… jeje) de cómo se hacen algunos pasos intermedios, de todas formas si tenéis alguna duda tan sólo tenéis que dejarme un comentario y os echo un cable 😉

Pulsa aquí para ver el índice del tutorial
Etiquetado con: ,
Publicado en: Android, Tutoriales
192 comentarios sobre “Cómo cocinar nuestra propia ROM para Android: La cocina
  1. Dani dice:

    De acuerdo, muchas gracias Joshelu. Seguiré probando e intentándolo.
    Buen trabajo con el tuto y gracias x responder tan rápido.
    Un saludo.

  2. pantabuho dice:

    Al extraer los archives del UPDATE.APP (rom b173 oficial del huawei g510-0200) no me saca la carpeta /system en el directorio de trabajo ni , por lo tanto, el arhivo C:/cygwin/home/[TU_USUARIO/Kitchen/WORKING_xxxxx_xxxxxx/system/ext4_system.img. Lo que sí me aperece son multitud de dicheros de nombre unkwnown_file.xx en la carpeta /output.
    He seguido los pasos y no sé donde fallo.

  3. fzeta dice:

    Interesante tutorial y muchas gracias por compartirlo enhorabuena todo muy bien explicado.
    Tengo una duda, verás, en el apartado 11 del kitchen me sale error al intentar deodexad el /system/framework
    De todos los archivo me queda el framework2.odex por deodexad me sale esté error.

    NOW AT FILE 1 OF 1 IN system/framework: framework2.odex
    Disassembling framework2.odex …
    java -Xmx512m -jar baksmali.jar -a 17 -d ../framework -x framework2.odex

    Error occured while disassembling class Lcom.android.internal.telephony.msim.MSimCDMAPhone; – skipping class
    java.lang.RuntimeException: regCount does not match the number of arguments of the method
    at org.jf.dexlib.Code.Format.Instruction35c.checkItem(Instruction35c.java:160)
    at org.jf.dexlib.Code.Format.Instruction35c.(Instruction35c.java:69)
    at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInvokeVirtualQuick(MethodAnalyzer.java:3681)
    at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:1106)
    at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:213)
    at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMethodItems(MethodDefinition.java:389)
    at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefinition.java:311)
    at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:132)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition.java:338)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeDirectMethods(ClassDefinition.java:294)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:116)
    at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)
    at org.jf.baksmali.main.main(main.java:308)
    Error while disassembling method Lcom/android/internal/telephony/msim/MSimCdmaDataConnectionTracker;->getUiccCardApplication()Lcom/android/internal/telephony/uicc/IccRecords;. Continuing.
    org.jf.dexlib.Code.Analysis.ValidationException: Could not resolve the field in class Ljava/lang/String; at offset 36
    at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeIputIgetQuick(MethodAnalyzer.java:3590)
    at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:1104)
    at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:213)
    at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMethodItems(MethodDefinition.java:389)
    at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefinition.java:311)
    at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:132)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition.java:338)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeVirtualMethods(ClassDefinition.java:310)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:117)
    at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)
    at org.jf.baksmali.main.main(main.java:308)
    opcode: iget-quick
    CodeAddress: 10
    Method: Lcom/android/internal/telephony/msim/MSimCdmaDataConnectionTracker;->getUiccCardApplication()Lcom/android/internal/telephony/uicc/IccRecords;

    Error while disassembling method Lcom/android/internal/telephony/msim/MSimCdmaDataConnectionTracker;->update()V. Continuing.
    org.jf.dexlib.Code.Analysis.ValidationException: Could not resolve the method in class Lcom/android/internal/telephony/msim/MSimCDMAPhone; at index 317
    at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInvokeVirtualQuick(MethodAnalyzer.java:3655)
    at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyzeInstruction(MethodAnalyzer.java:1106)
    at org.jf.dexlib.Code.Analysis.MethodAnalyzer.analyze(MethodAnalyzer.java:213)
    at org.jf.baksmali.Adaptors.MethodDefinition.addAnalyzedInstructionMethodItems(MethodDefinition.java:389)
    at org.jf.baksmali.Adaptors.MethodDefinition.getMethodItems(MethodDefinition.java:311)
    at org.jf.baksmali.Adaptors.MethodDefinition.writeTo(MethodDefinition.java:132)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeMethods(ClassDefinition.java:338)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeVirtualMethods(ClassDefinition.java:310)
    at org.jf.baksmali.Adaptors.ClassDefinition.writeTo(ClassDefinition.java:117)
    at org.jf.baksmali.baksmali.disassembleDexFile(baksmali.java:186)
    at org.jf.baksmali.main.main(main.java:308)
    opcode: invoke-virtual-quick
    CodeAddress: 42
    Method: Lcom/android/internal/telephony/msim/MSimCdmaDataConnectionTracker;->update()V

    ERROR: Aborting framework2.odex

    Finished system/framework

    WARNING: Could not deodex the following (you can try to deodex these files again):
    framework2.odex

    A summary of the deodexing has been logged in deodex_111913_220505.log

    0 *.odex files remain in system/app
    1 *.odex files remain in system/framework

    Press Enter to continue

    ¿En fin, te salio algo parecido?
    ¿hicisteis algo al respecto?
    ¿pasaría algo sí mando borro ese archivo y paso de el?

    En tu última captura muestras:
    /system/framework is deodexed :no

    pero en el vídeo muestras que lo tienes :YES

    En fin supongo que sabrás a lo que me refiero, Te agradecería un empujoncito ;-)http://goo.gl/U4crZk

    y de nuevo muchas gracias por todo. Por cierto mi terminal es un i9305
    (y)

  4. fzeta dice:

    vale, pues ya está. Solucionado!
    java -Xmx512m -jar baksmali.jar -a 16 -d ../framework -x framework2.odex

    por defecto la versión era 17 me daba error así que la eh cambiado a 16 y a rulado de categoría.
    Lo curioso es porqué las otras apk sí que rularon con la versión 17.
    En fin…. problema resuelto 🙂

  5. Joshelu dice:

    @fzeta, me alegro de que hayas encontrado la solución por ti mismo 😉 . Es un detalle que no comento en el vídeo, pero sí en los comentarios.

  6. Mike dice:

    Me sale esto al seleccionar Add nano text editos + sysro/sysrw qe debo hacer

    > LEGACY OPTIONS

    21 – Check update-script for errors
    22 – Add wireless tethering
    23 – Add task killer tweak for speed (stock ROM only)
    24 – Add Nano text editor + sysro/sysrw
    25 – Add Bash (command shell)
    26 – Add Apps2SD
    27 – Add custom boot animation functionality
    28 – Porting tools (experimental)

    99 – Build ROM from working folder
    0 – BACK TO MAIN MENU

    Enter option: 24

    —————————————————————-

    Nano is a text editor that can be run from the ADB shell on your
    computer or from a terminal emulator (e.g. ConnectBot) on your
    Android device. To run it from a shell, type: nano

    The scripts ‘sysrw’ and ‘sysro’ will also be included to make it
    easier to mount the /system folder (as read-write or read-only)
    for file editing purposes as root.

    —————————————————————-

    Proceed with install (y/n)? (default: y): y

    Found ./system/xbin/su

    Found /system/xbin

    Working folder already has /system/xbin/busybox

    Found ./system/xbin/sysrw
    Found ./system/xbin/sysro

    update-script already has sysro/sysrw content

    Working folder found

    Kernel found at offset 2048 in boot.img
    Making folder BOOT-EXTRACTED …

    Extracting kernel …
    Extracting ramdisk …

    Setting TERMINFO in init.rc …
    Error: Could not update init.rc!

    Press Enter to continue

  7. Joshelu dice:

    @Mike, prueba a hacer el proceso de nuevo. Si falla puede que sea porque la cocina no es totalmente compatible.

  8. Torruda dice:

    Buenas campeon,
    Al extraer los archivos la capeta WORKING_… me la deja vacia. a que puede ser???

    Muchas gracias de antemano

  9. braian bravo dice:

    Muy buen tuto.
    Una pregunta, yo tengo una ROM stock de una tablet woo, edición del diario de la república. Y cuando la descomprimo meda un archivo en formato img, igualmente lo copié en la carpeta original update y el cywin no lo reconoce, la pregunta obvia es ¿ que problema tengo?
    Desde ya gracias

  10. Joshelu dice:

    ¿cygwin no lo reconoce? creo que te refieres a la cocina. Comprueba que es compatible con tu dispositivo

  11. Christian dice:

    Hola, que buen tutorial es que has montado… Gracias por enseñarnos.
    Necesito ayuda en algo, no logro acceder al ./menu, resulta que mi nombre de usuario contiene espacios “por ejemplo” y me dice que no puedo ingresar por eso. Ya lo cambie en la configuración de la cuenta de windows a “porejemplo” y “por_ejemplo” pero el cygwin lo sigue creando como “por ejemplo” .
    Alguna ayuda al respecto, espero no incomodar

  12. Christian dice:

    Listo encontré la solución… Traducción por cortesía de Google

    Desde el símbolo del sistema, vaya a la carpeta que contiene la cocina:
    por ejemplo si su cocina está en su carpeta de usuario como
    c: \ cygwin \ home \ johnsmith \ Kitchen, entonces usted debería escribir: cd Kitchen
    por ejemplo Si su cocina es más bien un nivel más alto como c: \ cygwin \ home \ Kitchen, entonces usted tendría que
    escribir: cd .. / Kitchen

  13. Joshelu dice:

    @Torruda, seguro que te dio un error…

  14. Christian dice:

    Hola, perdón por la molestia, a la hora de ir a la opcion 11 – v al seleccionar 16 ó 17 me da error

    Android 4.2-4.2.2 = API Level 17
    Android 4.1-4.1.1 = API Level 16
    Android 4.0.3-4.0.4 = API Level 15
    Android 4.0-4.0.2 = API Level 14
    Android 3.2 = API Level 13
    Android 3.1.x = API Level 12
    Android 3.0.x = API Level 11
    Android 2.3.3+ = API Level 10

    NOTE: The above is not the full list.

    The complete set of mappings is found at:
    http://developer.android.com/guide/appendix/api-levels.html

    Please enter new level number, or 0 to cancel (currently: UNKNOWN): 17
    scripts/get_api_level: línea 18: more: no se encontró la orden

    In api_level.txt, the API level is now set to: UNKNOWN

    Warning: Name is not the same as specified

    Press Enter to continue
    Alguna idea de como adicionar API level 18?
    Muchas gracias

  15. fzeta dice:

    Saludos @Christian, sí versión de Android que estás trabajando es 4.3, te sirve la opción 17. Te lo digo por experiencia propia.
    https://www.youtube.com/watch?v=j3CHdQM7yeU&feature=youtube_gdata_player

    Suerte! Y muchas gracias a @Joshelu por el empujón. Me refiero a esté tutorial. 😉

  16. Christian dice:

    Hola @fzeta gracias por responder… trate con la opción 17 y 16 y no hay forma, me da error
    Es Android 4.3 del Samsung galaxy S4 I9500

  17. fzeta dice:

    umm.. puede que estes usando una versión antigua de KITCHEN https://github.com/dsixda/Android-Kitchen/tags.

    La versión que piloto yo es la 0.224 y hasta ahora no he tenido ningún problema y eh deodexado Stock del i9100, 19300 y i9305…

    Suerte!
    gratitud a @Joshelu

  18. Christian dice:

    Gracias @fzeta
    Pues decidí hacerlo en ubuntu y ningún problema, pero tengo una duda, no se donde me guarda el sec.csc.zip. me dio la opción de copiarlo en mi Working folder, pero no lo encuentro 🙁

  19. torruda dice:

    cuando deodex las aplicaciones mes la deodex todas menos 13 que me dice que no puede las que no pude son las siguientes: accueatherfidget.odex analg cockunique.odex dsmlawmo.odex digitalclock.odex factorytest_janice:eur.ope.odex jobmanager.odex mtpamplication.odex deccalculator2.odex sec dowloadproviderui.odex secwallpaperchooser.odex simplealarmclock.odex kieswifi.odex lcdtest_janice_eur._open.odex como pudeo solucionarlo??? Muchas gracias a todos

  20. Fran dice:

    Hola Joshelu tengo una duda,estoy cocinando una rom para mi note 3 y al finalizar todo el proceso de esta pagina en vez de ponerme modem.bin found me pone radio.img found y me pone NO,cuando en las anteriores de la misma version (4.3 jelly beam) pero del note 2 me ponia moden.bin yes.

  21. Joshelu dice:

    Hola Fran, quizás en el firmware del note 3 se denomine “radio” al “modem”, pero no te preocupes, es lo mismo. Asegúrate de que el archivo radio.img está en la ROM, si no está, cógelo de la base y ponlo junto al kernel.

    Saludos

  22. JoseKass dice:

    Hola una pregunta. al momento de ya mostra la informacion de trabajo. SOlo muestra

    Android OS Version
    Device
    Model
    CSC Version
    modem.bin found

    Lo demas estan en NO.

    Busybox es necesario instalarlo? Yo simplemente quiero una ROM Stock sin root y solo cocino para eliminar aplicaciones y querer actualizar las de google actualizadas.

    Que debo hacer

  23. federico dice:

    Hola Jose, antes que nada felicitarte por este exelente trabajo que te estas mandando! Tengo un problemita, estoy tratando de seguir los pasos y cuando extrae los archivos me sale este error que no me deja continuar:

    Creating working folder WORKING_012314_185335 …

    Extracting ROM from ZIP file …

    Error: No system folder found!

    Press Enter to continue

    Espero tu pronta respuesta. Gracias 😀

  24. Joshelu dice:

    @JoseKass, solo es necesario lo que tú creas que lo es. Por lo que comentas solo quieres litear la ROM y actualizar algún que otro APK, pues ve directo al tuto de litear. No instales el resto de extras. 😉

    @federico, Muchas gracias 😀 Comprueba que dentro del archivo .zip están los archivos de la ROM que busca la cocina porque parece que no están. Quizás haya dentro una carpeta o algo y por eso no los detecta.

    Saludos

  25. Oro Solido dice:

    Hola Joshelu, en verdad es apasionante entrar en este asunto de las cocinas-android y te ruego aceptes mi agradecimiento por tan completo Tuto, no deja ninguna duda. En verdad lo aprecio.

    He intentado cocinar rom’s para H7189 feiteng y Star B6000 y el proceso casi se completa, excepto que cuandon realizo la comprobación al final (antes de construir el zip), la opción 8 del menu me indica que falta el archivo “radio.img”, mismo que no encuentro en la carpeta system/etc/firmware, alli solo está el archivo “modem.img”

    Me sucede con las dos rom’s, ya sea usando la base “stock” o un respaldo realizado via CWMrecovery.

    Serías tan amable de indicarme la solución para este detalle? Te anticipo las gracias.

    Saludos con mi agradecimiento para ti y para todos los foreros.

  26. Joshelu dice:

    @Oro Solido, quizás sea un problema de compatibilidad con la cocina ya que el archivo radio.img que te pide tiene toda la pinta de ser el modem.img que tienes. Mira en la documentación de la cocina a ver si tu dispositivo figura entre los compatibles. Si no figura puedes añadir la compatibilidad tú mismo, un lector ya escribió un comentario diciendo que él lo hizo y fue sencillo…

    Saludos.

  27. oro solido dice:

    Vale amigo Josehelu, ya habia mirado en las paginas de la cocina (Copié los archivos en documentos de texto y los imprimi) De todas maneras lo hare de nuevo, buscando especificamente la referencia mencionada.

    Por cierto, estoy trabajando con bases stock y los archivos q

  28. oro solido dice:

    Vale amigo Josehelu, ya habia mirado en las paginas de la cocina (Copié los archivos en documentos de texto y los imprimi) De todas maneras lo hare de nuevo, buscando especificamente la referencia mencionada.

    Por cierto, estoy trabajando con bases stock y los archivos que tienen no coinciden con los que citas en el tuto. Al intentarlo con el backup, tampoco encuentro los archivos que indicas. Te listaré cuales tiene la base stock y el backup:

    BASE STOCK:
    system.img
    userdata.img
    cache.img
    recovery.img
    boot.img
    y los archivos para particionar BER1/2

    BACKUP via CWM:
    system.ext4.tar.a
    data.ext.4.a
    recovery.img
    boot.img
    cache.ext.4.tar

    Si tienes un poco de tiempo disponibe, te ruego me orientes al respecto, pues ya he tomado como un reto personal, “sacar este buey de la barranca”.

    Saludos y gracias.

  29. Andro dice:

    Hola. Primero, decir que es un tutorial muy completo, y aparentemente útil. 🙂
    El problema viene en el primer paso… Cuando pongo ./menu me sale lo siguiente:

    -bash: ./menu: no such file or directory
    Si me pueden ayudar o decir qué estoy haciendo mal, se lo agradecería.

  30. Joshelu dice:

    @Andro, asegúrate de que has descomprimido la cocina correctamente ya que parece que no está donde tiene que estar…

  31. Andro dice:

    Gracias Joshelu, ese era el problema. 🙂
    Por cierto discúlpeme, pero ahora tengo otro problema (Supongo que como la mayoría de novatos voy tropezando por el camino jeje)

    Pongo el system img y el boot img que extraje de mi Rom… Y no me lo reconoce como rom. Me dice lo siguiente:

    Copying boot.img …
    Copying system.img …

    Adding an update-script …

    NON-YAFFS/NON-TAR FILE FORMAT DETECTED IN ROM

    Unpack the system.img
    ———————–

    Enter a choice below to unpack your image file, assuming it
    uses an EXT filesystem. You might find that one option works
    better than the other.

    e.g. EXT3: Older devices such as HTC Desire HD
    EXT4: Newer devices such as HTC Desire S

    1 – Run Explore2fs (Best choice for EXT3)
    2 – Run Ext2Explore (EXT3/EXT4)
    3 – I’m finished unpacking / Abort

    NOTE: If any of the tools listed above have problems with
    extraction, then try the other option(s) listed.

    -Vamos que me quedo ahí estancado y no me sale lo del pingüino ese.
    Cuando le doy a la opción 1, me abre lo del pingüino, sigo los pasos que dice… y me sale un mensaje de error que dice así:-

    Error: Could not find valid Superblock.

    ¿Qué estoy haciendo mal? ¿Cómo lo soluciono?

    Y una última pregunta (de momento)… ¿Este método vale para cualquier rom de cualquier teléfono o es para alguno específico?

    Gracias de antemano. Saludos

  32. Andro dice:

    ¿O puede que esté extrayendo mal mi rom?

  33. TKafucito dice:

    Tengo el JDK y el Java y sale esto

    Welcome to dsixda’s Android Kitchen

    Please wait …

    Error: The application ‘java’ is not installed – the kitchen
    will not function properly without it. Ensure you did
    not miss a step during installation! Refer to the
    Android Kitchen FAQ at xda-developers.com for further
    assistance.

    ** PLEASE READ THE FAQ BEFORE ASKING QUESTIONS!! **

  34. Juan Carlos dice:

    Compañero, al guardar el archivo ext4_cache en el escritorio no me crea ninguna carpeta. He probado poniendo ese mismo nombre y el de ‘recovery’, pero nada, no se crea ninguna carpeta.
    Saludos y excelente tutorial

  35. Joshelu dice:

    @TKafucito, prueba a establecer la variable de entorno de java, quizás por ahí lo detecte…
    @Juan Carlos, El proceso varía de una marca a otra… comprueba que esté bien bajado, de ser así entonces intenta seguir adelante. En mi caso ese archivo es prescindible porque solo contiene la personalización del operador.

  36. Ezequiel dice:

    ¿Para que sirve la opcion 28 (Portings tools)?

  37. Victor dice:

    A mi a la hora de extraer me da error “no /system/framework folder found!” como puedo arrelgar esto?

  38. Joshelu dice:

    @Victor, dice que la carpeta /system/framework no está, verifica que cuando extraíste la rom no dió ningún error.

  39. Victor dice:

    No me dio error, me aparecio la rom y el archivo extra, pero dices que lo puedo borrar, despues puse la rom en la carpeta “original_update” pero no entiendo que hacer para solucionarlo

  40. Joshelu dice:

    @Victor, hummm ¿también tienes un SIII?

  41. Victor dice:

    Se me olvido mencionar, antes de que me aparezca el error me dice una nota que dice “Qt: Untested Windows version 6.2 detected!” utilizo windows 8, sera que no es compatible?

  42. Victor dice:

    No tengo S3 tengo una galaxy tab 3 de 7

  43. Miguel Angel dice:

    Hey! Gracias por tu guía, pero no puedo encontrar el ROM de mi Huawei Ascend G510-0241
    Por ahí descargué el kernel del G510-0200 y veo otro link para la ROM del G510-0200, no sé si esa servirá, ¿sirve?
    Hay otra modificada del mismo celular pero android 4.2, el original es 4.1, y la modificada tiene mil cosas y lo quiero “virgen” :'(

    http://consumer.huawei.com/en/support/downloads/detail/index.htm?id=20627

    Ese es el link del que hablo, la ROM del G510-0200, ¿sirve un recovery del mismo? porque ese sí lo tengo.

    ¡Gracias! 😀

  44. Tanoca dice:

    Compañero, al guardar el archivo ext4_cache en el escritorio no me crea ninguna carpeta. He probado poniendo ese mismo nombre y el de ‘recovery’, pero nada, no se crea ninguna carpeta. ya nose que hacer cuando puedas contestarme me quedao ai estancao por cierto mi terminal es un Samsung galaxy s +

  45. mauricio dice:

    ayuda

    hice todo el proceso hasta crear el zip luego lo instale en el celu hasta ahora ningun problema pero al navegar por la rom el terminal emulator no funciona osea la puedo abrir pero al escribir se desvanesen las letras sin poder darle ningun comando
    mi celu lg p350 en rom original le puse system.img y boot.img

  46. Bastian dice:

    Hola Joleshu
    Muchas gracias por tu excelente aporte, pero por favor te pido que me ayudes con esto…
    Cuando voy a crear el directorio(opcion uno) me lanza el sgte error
    Extracting ROM from TAR file …
    Error: No image files indentified in TAR archive!

  47. Fran dice:

    Hola, tengo WIndows 8 y al llegar al punto de descomprimir el archivo img con la utilidad “Explore2fs” me dice: Error could not find valid Superblock; y con la “Ext2Explore” ni siquiera me aparece el archivo en ninguna de las dos columnas. Por cierto, antes de que se abra el programa, en el terminal me aparece el mensaje “Qt: Untested Windows version 6.2 detected!”. ¿Puede ser que no sea compatible la Cocina con WIndows 8?

  48. Joshelu dice:

    Eso parece Fran, dice que no ha sido probada en tu versión de Windows pero por lo que comentas parece que no… vas a tener que tirar de una máquina virtual.

  49. Fran dice:

    Probé a ejecutarla en modo de compatibilidad con Windows 7 y XP, pero ni con esas. Probé también a descomprimirla con WinRAR y me dice que el archivo está corrupto, pero en realidad lo tengo instalado y va de maravilla.

  50. Bryan dice:

    Bro Ayudame Me Kede En El Inicio Cuando Yo Le Doy
    cd kitchen/
    -bash: cd: kitchen/: No such file or directory

    & Lo Mismo Con
    ./menu

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

Sígueme en Twitter