PDA

Ver la Versión Completa : BETA [Tool][python] LG Compressed KDZ Extractor


Marc0sgb
30/07/14, 01:49:48
Esta herramienta creada originalmente para el g2 nos permite desempaquetar los kdz de manera que obtendremos todas las particiones.
El link es este
http://forum.xda-developers.com/showthread.php?t=2483250Todos los meritos van para el autor original de dicho script thecubed, lo unico que hice fue un pequeño fix para que funcione correctamente con los firmwares de nuestro lg g3.
Lo he testeado y hasta lo que he podido probar de momento, he podido sin problemas montar la system.img en linux :ok:. Lo que significa que ya podemos ir haciendo nuestras propias stock roms :aplausos:.
Funciona correctamente en linux con la version Python 2.7.3.

Enlace de descarga
http://sourceforge.net/projects/seandroid/files/lgg3%20d850/Tools/KDZUtils.tar.gz/downloadModo de uso:

Convierte en dz:
python KDZFileTools.py -f file.kdz -x

Comprobamos
ls -la kdzextracted/
-rw------- 1 marc0sgb marc0sgb 1299497087 jul 29 20:33 D85510a_00.dz
-rw------- 1 marc0sgb marc0sgb 1526784 jul 29 20:33 LGUP_8974.dll



Extrae los ficheros:
python DZFileTools.py -f kdzextracted/D85510a_00.dz -x

ls -la dzextracted/

-rw------- 1 marc0sgb marc0sgb 1572864 jul 29 20:37 aboot_167936.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:38 BackupGPT_30776320.bin
-rw------- 1 marc0sgb marc0sgb 13107200 jul 29 20:37 boot_196608.bin
-rw------- 1 marc0sgb marc0sgb 134217728 jul 29 20:38 cust_6193152.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:38 cust_6455296.bin
-rw------- 1 marc0sgb marc0sgb 58720256 jul 29 20:38 cust_6459544.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:37 dbi_165888.bin
-rw------- 1 marc0sgb marc0sgb 14680064 jul 29 20:37 factory_655360.bin
-rw------- 1 marc0sgb marc0sgb 17825792 jul 29 20:37 laf_393216.bin
drwx------ 1 marc0sgb marc0sgb 0 jul 30 00:12 lgkitchen
-rw------- 1 marc0sgb marc0sgb 60293120 jul 29 20:37 modem_32768.bin
-rw------- 1 marc0sgb marc0sgb 5242880 jul 29 20:37 persist_229376.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:37 PrimaryGPT_0.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:37 rct_350224.bin
-rw------- 1 marc0sgb marc0sgb 14155776 jul 29 20:37 recovery_294912.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:37 rpm_172032.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:37 sbl1_163840.bin
-rw------- 1 marc0sgb marc0sgb 132644864 jul 29 20:37 system_1249088.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:37 system_1508424.bin
-rw------- 1 marc0sgb marc0sgb 132120576 jul 29 20:37 system_1512328.bin
-rw------- 1 marc0sgb marc0sgb 132644864 jul 29 20:37 system_1773376.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:37 system_2032712.bin
-rw------- 1 marc0sgb marc0sgb 132120576 jul 29 20:37 system_2036616.bin
-rw------- 1 marc0sgb marc0sgb 132644864 jul 29 20:38 system_2297664.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:38 system_2557000.bin
-rw------- 1 marc0sgb marc0sgb 132120576 jul 29 20:38 system_2560904.bin
-rw------- 1 marc0sgb marc0sgb 132644864 jul 29 20:38 system_2821952.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:38 system_3081288.bin
-rw------- 1 marc0sgb marc0sgb 132120576 jul 29 20:38 system_3085192.bin
-rw------- 1 marc0sgb marc0sgb 132644864 jul 29 20:38 system_3346240.bin
-rw------- 1 marc0sgb marc0sgb 132644864 jul 29 20:38 system_3608384.bin
-rw------- 1 marc0sgb marc0sgb 132644864 jul 29 20:38 system_3870528.bin
-rw------- 1 marc0sgb marc0sgb 103284736 jul 29 20:38 system_4132672.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:38 system_4390912.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:38 system_4653056.bin
-rw------- 1 marc0sgb marc0sgb 524288 jul 29 20:38 system_4915200.bin
-rw------- 1 marc0sgb marc0sgb 134742016 jul 29 20:37 system_720896.bin
-rw------- 1 marc0sgb marc0sgb 133693440 jul 29 20:37 system_984136.bin
-rw------- 1 marc0sgb marc0sgb 2516582400 jul 30 00:10 system.img
-rw------- 1 marc0sgb marc0sgb 4429 jul 30 00:02 SystemMerger.py



Por defecto crea una carpeta dzextracted donde encontraras todos los ficheros del firmware
Si queremos trabajar con la particion system para realizar nuestras propias modificaciones deberemos unir los archivos system_XXXXX para ello usaremos el siguiente script
http://forum.xda-developers.com/showpost.php?p=47762882&postcount=18Lo único que tendremos que hacer sera tener el script en la misma carpeta donde hemos extraido el firmware y ejecutarlo:

python SystemMerger.py

Obtendremos system.img, ya solo tendremos que montarlo como cualquier volumen y podremos hacer nuestras modificaciones sin problemas

mkdir -p /mnt/lgimg && mount system.img /mnt/lgimg

hecthorpe
30/07/14, 06:53:57
Funciona perfecto, muchas gracias!
Una aclaración: en el comando para extraer los archivos del ".dz" te ha faltado añadir al final -x. Quedaría así:
Extrae los ficheros:
python DZFileTools.py -f kdzextracted/D85510g_00.dz -x

Marcosuper7
30/07/14, 10:56:44
Yo hace un tiempo que lo estoy intentado en Windows, pero no lo consigo.

Utilizo Python 2.7.3, o es que solo sirve en ubuntu o linux?.

Marc0sgb
30/07/14, 14:59:00
Se me paso al hacer corta y pega hecthorpe, gracias por el aviso :ok:

@Marcosuper7 el script en principio deberia servir para ambos sistema operativos, pero solo en principio X-D, en windows con las misma version que tu de python no me funciona, solo en linux aun asi habia que hacerle un pequeño fix para que desempaquete los kdz del g3

Sensei Zaldi00
30/07/14, 15:47:53
Una duda que me surge. Se podría flashear la imagen desde fastboot? O habría que empaquetar todo otra vez en y hacerlo kdz para el LG flash tools

Marc0sgb
30/07/14, 16:08:15
En teoria sensei si que deberia poderse, la duda surge en que si tenemos bootloader bloqueado no se si nos lo permitiria, aun no pude hacer esas pruebas, tambien creo que se podrian crear paquetes para recovery facilmente con este tutorial de lg g2
http://www.htcmania.com/showthread.php?t=789380
Con el ademas de flashear, podriamos ya crear nuestras propias stock roms sin problemas.

Pero ahora mismo ando ocupado terminado la otra tool para backups, viendo como desempaquetar el boot.img, para que podamos tener nuestros propios kernels (ya tengo compilado uno a traves de las sources), y algunas cosas mas. Asi que si alguien quiere hacer algunas pruebas que nos postee los resultados por aqui para ir avanzando
Mi idea es que tengamos preparados los fogones en el momento que se consiga abrir el bootloader.

viruslaura
30/07/14, 21:04:38
Una duda que me surge. Se podría flashear la imagen desde fastboot? O habría que empaquetar todo otra vez en y hacerlo kdz para el LG flash tools

Esta es una solucion......

viruslaura
30/07/14, 21:09:31
Yo las desempaqueto en windows...me mola mas y luego las cocino en ubuntu.....tengo las 3 bases hechas...e incluso aroma funciona perfectamente.....necesitamos un recovery custom.....pero mientras tanto.....los mods los hago sin problemas......y algunas cosas mas....pero todo es posible.....hacerlo q se puede

Marcosuper7
30/07/14, 23:29:09
Bueno es también funcional con otros modelos, en este caso es la LG GPad 7".

http://i60.tinypic.com/2r3cy9g.png

Salu2.

Marc0sgb
31/07/14, 01:56:47
Me alegro que al final funcionara todo perfectamente :ok:, desconocia que funcionara para otros modelos puesto que las cabeceras de los kdz deberian ser diferentes en teoria, esta muy bien saberlo.

Marcosuper7
31/07/14, 09:22:20
Me alegro que al final funcionara todo perfectamente :ok:, desconocia que funcionara para otros modelos puesto que las cabeceras de los kdz deberian ser diferentes en teoria, esta muy bien saberlo.

Si lo probé sin cambiar (kdz_header) y al final se lo trago, ;)

Salu2.