Este foro usa cookies
Este foro hace uso de cookies para almacenar su información de inicio de sesión si está registrado, y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Por favor, confirme si acepta o rechaza el establecimiento de estas cookies.

Se almacenará una cookie en su navegador, independientemente de su elección, para evitar que le vuelvan a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
TUTORIAL Crea tu custom ROM para G935F (S7 edge)
#1
Thumbs Up 
- ROM BASE G935F -


[hide]
Pues eso, voy a dejar una CUSTOM ROM base en este caso G935FXXU2ERH6.
La idea es, que cada uno use la base para uso propio, en principio esto esta destinado a un usuario a bajo nivel. (pero la puede usar cualquiera)


Los pasos o pautas serán las siguientes:

1 - ROM base
2 - CSC PHE
3 - Liteo.
4 - Editar update-script para la instalación.
5 - Editar build.prop
6 - Root
7 - Incluir Morokernel en la ROM
Pues al grano ..


Primero lo que necesitamos.

- ROM   Link
- CSC PHE   Link
- Morokernel v4.6  (archivos necesarios)  Link
- Winrar o 7-zip
- Notepad++


ROM
- Una vez descargada la ROM BASE, creamos una carpeta (Mi ROM) y dentro pegamos el zip de la ROM.
Seleccionamos el zip con el botón derecho del ratón y extraemos con el nombre del zip.

Mostrar Contenido

- Tendremos una nueva carpeta con el nombre del zip.
Ahora editamos esa carpeta, nombrándola como seria el nombre del futuro zip

Mostrar Contenido

- Entramos en la carpeta y veremos la estructura del zip.

Mostrar Contenido


CSC

- Ahora añadiremos el CSC (código de país-operadora móvil) ya que esta CUSTOM ROM no lleva, para que cada uno le ponga el que use, yo uso PHE.

- Descargamos el CSC_PHE.zip y lo abrimos con winrar ( en mi caso).
- Abrimos la carpeta donde tenemos nuestra CUSTOM ROM, y utilizaremos una de estas 2 opciones.

1ª - Esta es mas sencilla, abrimos la carpeta de la ROM y el zip del CSC_PHE. Solo tenemos que arrastrar el interior de la carpeta PHE a system de la raiz de la ROM, y ya estaría ..

Mostrar Contenido

-Nos aseguramos que todos los archivos del CSC están en system.

Mostrar Contenido

- Con esto ya tendríamos la CUSTOM ROM operativa, ( solo tenemos que seleccionar los archivos de la raiz META-INF, system, boot.img y comprimir en zip).


2ª - Esta opción requiere editar el update-script, pero sera la que use en el tuto, ya que la 1ª opción es mas sencilla y la opción 2, tiene mas juego.
Arrastramos la carpeta PHE a la raiz de la ROM, junto a las carpetas META-INF y system.

Mostrar Contenido

-Quedando así la raíz de la ROM

Mostrar Contenido

- Ahora nos faltaría editar el update-script, que lo dejaremos para mas adelante.
Pero seguimos dejándola mas a nuestro gusto y necesidad.


LITEO

- Esta parte es muy personal, ya que cada uno usa diferentes aplicaciones.
Dejo un liteo pequeño para ver como es esto de litear.


- ELIMINAR KNOX.
Mostrar Contenido

- ELIMINAR APPs.
Mostrar Contenido

Con esto ya tenemos nuestro pequeño liteo ( luego ya cada uno hace el que corresponda)



- Llego la hora de editar el update-script, pero solo para tener la carpeta PHE funcional en la opción 2 del CSC.
Nos vamos a (META-INF/com/google/android/) y veremos el archivo que tenemos que editar. (update-script)
Ahora lo pulsamos con el botón derecho del ratón y lo abrimos con Notepad++

Mostrar Contenido

- Veremos que en la linea 19, extraemos system para la instalación de la ROM
Pues lo que haremos sera meter otra linea debajo, para extraer también la carpeta PHE.

Mostrar Contenido

- Esta es la linea (de esta forma le decimos que extraiga todo el interior de la carpeta PHE a system)
Código:
package_extract_dir("PHE", "/system");

-Quedando de esta manera.

Mostrar Contenido

Y con esto terminamos nuestra ROM, ahora seleccionamos los archivos de la raíz que conforman el zip y comprimimos. (en este caso me gusta hacerlo con 7-zip)
Veremos que se crea el nombre del zip, igual al nombre de la carpeta que se ubica la ROM. (me gusta hacerlo así, jeje)

Mostrar Contenido
[/hide]

- Como vemos no lleva root la ROM, lo dejaremos para mas adelante.
Espero que lo usen y les sirva de ayuda, para empezar en este mundillo. Gracias.
[-] Recuento: 13 usuarios dicen Me Gusta a fivanbe por este post:
  • Grouxho (11-20-2018), monisa64 (10-14-2018), (09-24-2018), Peugeot73 (09-10-2018), roberzgz (09-10-2018), MAX60 (09-10-2018), necrosauron (09-09-2018), Zerhiote (09-09-2018), elos (09-09-2018), maquilon (09-09-2018), josechufa (09-09-2018), GVM (09-09-2018), The_Raven (09-08-2018)
Responder
#2
BUILD.PROP

[hide]
- Aquí veremos que editar para darle un toque especial a nuestra ROM, primero localizamos el archivo build.prop.

Entramos en la carpeta de nuestra ROM y nos vamos a system, casi al final de los archivos tenemos el build.prop

Mostrar Contenido

- Edito el build.prop, con las mínimas modificaciones. Busca ####
Mostrar Contenido
Mostrar Contenido

- Ya queda menos para tener nuestra ROM, chula, jaja
[/hide]
[-] Recuento: 4 usuarios dicen Me Gusta a fivanbe por este post:
  • necrosauron (09-22-2018), rocadura (09-13-2018), monisa64 (09-11-2018), Zerhiote (09-11-2018)
Responder
#3
UPDATE-SCRIPT

[hide]
- El archivo update-script es el que maneja la forma de instalación de la ROM, en el veremos que hace al instalar.

Mostrar Contenido

- Lo editamos para darle un toque personal y vamos viendo en que se compone .. buscamos los ####

Código:
ifelse(is_mounted("/system"), unmount("/system"));    #### Si esta ya montado system, lo desmontamos.
show_progress(1.000000, 0);    #### Nos indica en forma de barra de progreso, la instalación
ui_print(" ");    #### ui_print, solo lo que nosotros queramos mostrar en pantalla.
ui_print(" ");
ui_print("CUSTOM ROM BASE G935F Installer");
ui_print("fivanbe");
ui_print(" ");
ui_print(" ");    #### Esto es una linea en blanco
ui_print(" ");
ui_print(" ");
ui_print("Formatting system ...");
ui_print(" ");
format("ext4", "EMMC", "/dev/block/platform/155a0000.ufs/by-name/SYSTEM", "0", "/system");    #### Formateamos system, para dejarlo bien limpio
set_progress(0.100000);    #### Nos indica en forma de barra de progreso, la instalación
mount("ext4", "EMMC", "/dev/block/platform/155a0000.ufs/by-name/SYSTEM", "/system");    #### y ahora montamos system para su instalación
set_progress(0.200000);
ui_print("Extracting system...");
ui_print(" ");
package_extract_dir("system", "/system");    #### extraemos system del zip y lo instalamos en el terminal
package_extract_dir("PHE", "/system");    #### Lo mismo que system, pero con el PHE (opción 2 del CSC)
set_progress(0.500000);
ui_print("Creating symlinks...");
ui_print(" ");    #### A partir de aquí creamos los symlinks y permisos de los archivos (lo recorte para que no ocupe mucho)
symlink("./soundfx/libLifevibes_lvverx.so", "/system/vendor/lib/libLifevibes_lvverx.so");
symlink("./soundfx/libLifevibes_lvvetx.so", "/system/vendor/lib/libLifevibes_lvvetx.so");
symlink("/system/lib/libasf_fileshare.so", "/system/app/AllshareFileShare/lib/arm/libasf_fileshare.so");
symlink("/system/lib/libasf_fileshareserver.so", "/system/app/AllshareFileShare/lib/arm/libasf_fileshareserver.so");
symlink("/system/lib/libasf_mediashare.so", "/system/app/AllshareMediaShare/lib/arm/libasf_mediashare.so");
.......
symlink("toybox_vendor", "/system/vendor/bin/xxd");
symlink("toybox_vendor", "/system/vendor/bin/yes");
set_progress(0.600000);
ui_print("Setting Permissions...");
ui_print(" ");
set_metadata_recursive("/system", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/bin", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
..............
set_metadata("/system/xbin/jack_simple_client", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/xbin/jack_transport", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_progress(0.700000);
ui_print(" ");
ui_print("Extracting boot image...");
package_extract_file("boot.img", "/dev/block/platform/155a0000.ufs/by-name/BOOT");    #### Instalamos nuestro kernel.
set_progress(0.800000);
ui_print(" ");
set_progress(0.900000);
ui_print(" ");
set_progress(1.000000);
ui_print("CUSTOM ROM BASE G935F Installed");

- Ahora lo podemos adornar, para que no quede tan soso..jeje
Código:
ifelse(is_mounted("/system"), unmount("/system"));
show_progress(1.000000, 0);
ui_print(" ");
ui_print("###################################");
ui_print("# CUSTOM ROM BASE G935F Installer");
ui_print("# fivanbe");
ui_print("###################################");
ui_print(" ");
ui_print(" ");
ui_print("###################################");
ui_print("# Formatting system ...");
ui_print("###################################");
format("ext4", "EMMC", "/dev/block/platform/155a0000.ufs/by-name/SYSTEM", "0", "/system");
set_progress(0.100000);
mount("ext4", "EMMC", "/dev/block/platform/155a0000.ufs/by-name/SYSTEM", "/system");
set_progress(0.200000);
ui_print(" ");
ui_print("###################################");
ui_print("# Extracting system...");
ui_print("###################################");
package_extract_dir("system", "/system");
package_extract_dir("PHE", "/system");
set_progress(0.500000);
ui_print(" ");
ui_print("###################################");
ui_print("# Creating symlinks...");
ui_print("###################################");
symlink("./soundfx/libLifevibes_lvverx.so", "/system/vendor/lib/libLifevibes_lvverx.so");
symlink("./soundfx/libLifevibes_lvvetx.so", "/system/vendor/lib/libLifevibes_lvvetx.so");
symlink("/system/lib/libasf_fileshare.so", "/system/app/AllshareFileShare/lib/arm/libasf_fileshare.so");
symlink("/system/lib/libasf_fileshareserver.so", "/system/app/AllshareFileShare/lib/arm/libasf_fileshareserver.so");
symlink("/system/lib/libasf_mediashare.so", "/system/app/AllshareMediaShare/lib/arm/libasf_mediashare.so");
...................
symlink("toybox_vendor", "/system/vendor/bin/xxd");
symlink("toybox_vendor", "/system/vendor/bin/yes");
set_progress(0.600000);
ui_print(" ");
ui_print("###################################");
ui_print("# Setting Permissions ..");
ui_print("###################################");
set_metadata_recursive("/system", "uid", 0, "gid", 0, "dmode", 0755, "fmode", 0644, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata("/system/bin", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_metadata_recursive("/system/bin", "uid", 0, "gid", 2000, "dmode", 0755, "fmode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
..........
set_metadata("/system/xbin/jack_transport", "uid", 0, "gid", 2000, "mode", 0755, "capabilities", 0x0, "selabel", "u:object_r:system_file:s0");
set_progress(0.700000);
ui_print(" ");
ui_print("###################################");
ui_print("# Extracting boot image...");
ui_print("###################################");
package_extract_file("boot.img", "/dev/block/platform/155a0000.ufs/by-name/BOOT");
set_progress(0.800000);
ui_print(" ");
set_progress(0.900000);
ui_print(" ");
set_progress(1.000000);
ui_print("###################################");
ui_print("# CUSTOM ROM BASE G935F Installed");
ui_print("###################################");

- Ya tenemos nuestro update-script molón, jeje

Mostrar Contenido

[/hide]
[-] Recuento: 4 usuarios dicen Me Gusta a fivanbe por este post:
  • (10-10-2018), necrosauron (09-22-2018), diegolas (09-12-2018), Zerhiote (09-11-2018)
Responder
#4
ROOT

[hide]
- Ya estamos en el ROOT, el metodo que vamos a usar es Magisk, que a día de hoy es lo mas actual y con desarrollo de futuro. Incluso tenemos la opción de instalar módulos (al estilo xposed)

Lo primero descargamos Magisk

Magisk v17.1 - Descarga directa oficial.

- Una vez descargado, creamos una carpeta Root en nuestra raíz de la ROM y dentro de esa otra como magisk y alojamos el zip de Magisk v17.1.

Mostrar Contenido

- Renombrar el Magisk-v17.1.zip a magisk.zip (todo minusculas), para así tenerlo mas fácil a la hora de actualizarlo ..

Mostrar Contenido

- Ahora nos vamos a nuestro update-script (META-INF/com/google/android) y añadimos estas lineas, para que pueda instalar el ROOT en nuestra ROM.

- Las añadimos despues que instala el kernel. buscar ####

Código:
ui_print("###################################");
ui_print("# Extracting boot image...");
ui_print("###################################");
package_extract_file("boot.img", "/dev/block/platform/155a0000.ufs/by-name/BOOT");
set_progress(0.800000);
ui_print(" ");
#### AÑADIR AQUI ####
set_progress(0.900000);

- Y lo que tenemos que añadir.

Código:
ui_print("###################################");
ui_print("# Install ROOT Magisk");
ui_print("###################################");
package_extract_dir("Root/magisk", "/tmp/magisk");
run_program("/sbin/busybox", "unzip", "/tmp/magisk/magisk.zip", "META-INF/com/google/android/update-binary", "-d", "/tmp/magisk");
run_program("/sbin/busybox", "sh", "/tmp/magisk/META-INF/com/google/android/update-binary", "dummy", "1", "/tmp/magisk/magisk.zip");

- Nos tiene que quedar así.

Código:
ui_print("###################################");
ui_print("# Extracting boot image...");
ui_print("###################################");
package_extract_file("boot.img", "/dev/block/platform/155a0000.ufs/by-name/BOOT");
set_progress(0.800000);
ui_print(" ");
ui_print("###################################");
ui_print("# Install ROOT Magisk");
ui_print("###################################");
package_extract_dir("Root/magisk", "/tmp/magisk");
run_program("/sbin/busybox", "unzip", "/tmp/magisk/magisk.zip", "META-INF/com/google/android/update-binary", "-d", "/tmp/magisk");
run_program("/sbin/busybox", "sh", "/tmp/magisk/META-INF/com/google/android/update-binary", "dummy", "1", "/tmp/magisk/magisk.zip");
set_progress(0.900000);

- Ahora seleccionamos toda nuestra raiz y comprimimos en zip. Pues ya tenemos nuestra ROM con root incorporado.

Mostrar Contenido


A flashear!!!


[/hide]
[-] Recuento: 3 usuarios dicen Me Gusta a fivanbe por este post:
  • necrosauron (09-22-2018), (09-11-2018), Zerhiote (09-11-2018)
Responder
#5
INCLUIR MOROKERNEL A LA ROM
[hide]
- Aquí veremos como cambiar el kernel stock, por el Morokernel.

Una vez descargados los archivos del primer post abrimos el zip y arrastramos el boot.img y la carpeta system a la raiz de nuestra CUSTOM ROM, nos pedirá confirmación para sobrescribir el boot.img y las 2 libs. (vendor/lib/libsecure_storage.so) y
(vendor/lib64/libsecure_storage.so)

[Imagen: FWXxM3Q.jpg]

- Comprimimos y al vicio ..

[/hide]
[-] Recuento: 3 usuarios dicen Me Gusta a fivanbe por este post:
  • diegolas (09-12-2018), elos (09-11-2018), Zerhiote (09-11-2018)
Responder
#6
Miiioo... bueno kuando la subas... jajaja... gracias crack...

Enviado desde mi SM-G935F mediante Tapatalk
[-] Recuento: 3 usuarios dicen Me Gusta a The_Raven por este post:
  • elos (09-09-2018), GVM (09-09-2018), fivanbe (09-08-2018)
Responder
#7
Si señor, aportazo crack ?
[Imagen: qeHcSFg.png]

[-] Recuento: 3 usuarios dicen Me Gusta a GVM por este post:
  • josechufa (09-09-2018), elos (09-09-2018), fivanbe (09-09-2018)
Responder
#8
Venga daleeeeee!!!!
[-] Recuento: 3 usuarios dicen Me Gusta a maquilon por este post:
  • elos (09-09-2018), fivanbe (09-09-2018), ildecris (09-09-2018)
Responder
#9
Muy bueno Che,así no te dan la brasa,que crack,jijiji.

Enviado desde mi SM-G965F mediante Tapatalk
[Imagen: B2o0IT6.png]
[-] Recuento: 2 usuarios dicen Me Gusta a josechufa por este post:
  • elos (09-09-2018), fivanbe (09-09-2018)
Responder
#10
Buenas, gracias por el aportazo.. eres un crack.
[-] Recuento: 3 usuarios dicen Me Gusta a jiterron por este post:
  • josechufa (09-09-2018), elos (09-09-2018), fivanbe (09-09-2018)
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)