Una ROM GSI es una imagen del sistema operativo Android genérica como su propio nombre indica Generic System Image. Este tipo de imágenes de sistema la podemos instalar en un gran número de dispositivos de distintas marcas.
Están basadas en AOSP, por lo que vamos a encontrar lo más parecido a «Android Puro», es decir sin capas de personalización ni añadidos.
Para poder instalarla es fundamental que el teléfono sea compatible con Project Treble. Treble fue lanzado por Google en el año 2017 y cada vez más marcas de teléfonos dan soporte a este proyecto.
Es importante señalar que para realizar la instalación debemos estar familiarizados con este tipo de procesos pues es probable que el teléfono no funcione correctamente y despues de un tiempo volvamos a la versión de Android que teníamos previamente.
Como Instalar una ROM GSI sin usar un PC
Este tipo de ROM sólo se pueden instalar en móviles con el Bootloader desbloqueado, el proceso para desbloquear el bootloader en un Xiaomi lo explique aquí.
Como saber si mi móvil es compatible con Treble
La mayoría de teléfonos actuales desde el año 2017 son compatibles con el proyecto Treble, no obstante hay varias formas de averiguarlo.
- Instalando la aplicación Info del dispositivo podremos saber si es compatible entrando en el apartado «Sistema».
- Otra forma sería usando una ventana de comandos CMD, tecleamos adb shell y luego getprop ro.treble.enabled. Si te aparece true es compatible con Treble. Antes de conectar via USB a un PC debemos activar en el teléfono la Depuración USB dentro de las opciones de desarrollo.
Como saber si nuestro Android permite instalar versiones GSI más recientes que el sistema Android Oficial
Ya sabemos si nuestro teléfono es o no compatible pero en el caso que lo sea es probable que sólo podamos instalar una ROM Treble de la misma versión de Android ya instalada. Es decir si teníamos Android 11 es probable que no podamos pasar a una ROM GSI Android 12.
Para saber si nuestro smartphone es compatible con versiones Treble mas actualizadas que la versión de Android que tenemos instalada debemos teclear el siguiente comando
adb shell cat /system/etc/ld.config.version_API.txt | grep -A 20 "[vendor]"
En el anterior comando cambiamos donde pone version_API por el número de API de nuestro sistema operativo.
Ejemplos; si es Android 9 ponemos el número 28, Android 10 > 29 , Android 11 > 30 , Android 12 > 31.

Al pulsar Intro nos aparecerá muchos datos sobre la rom instalada y lo importante en este caso es que debe aparecer namespace.default.isolated = true . Si aparece el resultado true podremos instalar una ROM GSI con una versión de Android más actualizada.
Particiones dinámicas y particiones System
El proceso para instalar una ROM GSI es diferente dependiendo de si el teléfono tiene particiones dinámicas o por el contrario no las tiene.

Para saber si un teléfono tiene particiones dinámicas instalamos la aplicación Información del dispositivo. Dentro de la categoría sistema nos dirá que tipo de particiones tiene nuestro Android.
Tengo un móvil compatible con Treble, donde consigo una ROM GSI
Cabe destacar que al instalar este tipo de ROM el teléfono pierde toda la información que tuviera como fotos, vídeos,aplicaciones etc. Por lo que recomiendo crear una copia de seguridad de todos nuestros datos.
Hechas las comprobaciones si nuestro móvil es apto para instalar una imagen GSI de Android.
- Desde aquí puedes descargar una ROM GSI de Google.
- En cambio si prefieres una ROM GSI personalizada ve a este enlace donde puedes encontrar algunas ROM genéricas GSI del grupo de desarrolladores NIPPON.
- También necesitarás el archivo vbmeta.img que lo puedes descargar desde el repositorio de Google.

La mayoría de teléfonos en los últimos años tienen la arquitectura ARM64. Si quieres las apps de Google como Play Store elige la versión GMS, Google Mobile Services.
Descargamos el archivo .zip y lo descomprimimos,debemos tener un archivo en formato .img.
Tipos de ROM GSI
Existen varios tipos de ROM GSI, dependiendo de la arquitectura del sistema que tenemos instalado debemos optar por uno u otro tipo ROM GSI. La inmensa mayoría de teléfonos actuales son compatibles con las ROM GSI ARM64, de hecho este tipo de ROMs son las que te vas a encontrar a la hora de buscar una ROM GSI.
Luego tenemos la ROM «a/b» o «a», para saber si tu teléfono es compatible con las «a/b» debe poner SYSTEM as ROOT como soportado. En la aplicación Información del dispositivo o en Treble Info puedes consultar esta información.
De lo contrario, si pone SYSTEM as ROOT como no soportado deberás buscar una ROM GSI que ponga «a» en las iniciales del archivo.

Para instalar una ROM GSI hay varios procedimientos dependiendo del teléfono si tiene particiones dinámicas o no las tiene. En este enlace puedes ver los comandos que debemos introducir para instalar una ROM GSI.



cuando escribo el comando adb shell cat /system/etc/ld.config.30.txt | grep -A 20 «[vendor]»
me dice que «grep» no es un comando valido. Que puedo hacer?
alguien que pueda ayudar? cuando escribo el comando «adb shell cat /system/etc/ld.config.30.txt | grep -A 20 “[vendor]”» me dice que «grep» no se reconoce como un comando valido. que puede estar pasando? vi que a muchos les pasa lo mismo
alguien que pueda ayudar? cuando escribo el comando «adb shell cat /system/etc/ld.config.30.txt | grep -A 20 “[vendor]”» me dice que «grep» no se reconoce como un comando valido. Que puede estar pasando? vi que a muchos les pasa lo mismo, alguien que pueda responder por favor?
por que cuando coloco «adb shell cat /system/etc/ld.config.version_API.txt | grep -A 20 «[vendor]» «me sale «grep: el término ‘grep’ no se reconoce como nombre de un cmdlet, función, archivo de script o programa ejecutable.
Verifique la ortografía del nombre, o si se incluyó una ruta, verifique que la ruta sea correcta y vuelva a intentarlo.»??? hay alguna solucion, o el comando esta mal escrito?