15 KiB
AXPR23: AXP Resurrection Pro para el Pixel 4a
LineageOS 23.2 · Android 16 · sunfish · adaptación comunitaria · EOL
AXP Resurrection Pro (AXPR) es una adaptación de AXP.OS Pro para el Google Pixel 4a. La idea no era crear otra ROM genérica basada en LineageOS, sino recuperar la experiencia de AXP sobre una base Android más reciente, manteniendo el soporte de hardware de LineageOS y añadiendo hardening propio.
AXPR23 fue la adaptación para LineageOS 23.2 / Android 16. Su última build
es 23.2-20261025-PRO-sunfish. La línea está cerrada porque LineageOS dejó de
publicar Android 16 para sunfish; la siguiente generación del proyecto es
AXPR24, sobre LineageOS 24 / Android 17.
La forma más clara de entender la ROM es separar sus cuatro procedencias:
- la base y el soporte de dispositivo de LineageOS;
- la experiencia de producto recuperada de AXP.OS / EXTENDROM;
- las ideas y parches de hardening procedentes de GrapheneOS / Android Hardening;
- el trabajo propio de AXPR para integrar y adaptar todo lo anterior a Android 16 y al Pixel 4a.
1. La base: qué aporta LineageOS
AXPR23 conserva LineageOS como base real del sistema, no como una colección de drivers reutilizados:
- LineageOS 23.2 y Android 16;
- árbol de dispositivo y soporte de hardware del Pixel 4a;
- vendor y firmware de
sunfish; - kernel Qualcomm
msm-4.14; - Launcher3, Dialer y componentes centrales del sistema;
- integración de radio, IMS, Wi‑Fi, cámara, eSIM y recovery;
- las protecciones de Android y LineageOS ya presentes en la base, como CFI, Shadow Call Stack, KASLR y PAN.
Por eso AXPR sigue comportándose como una ROM LineageOS en lo esencial. Lo que cambia es la capa de producto, aplicaciones, ajustes y hardening que se coloca encima.
2. Lo que recuperamos de AXP.OS y EXTENDROM
AXP/EXTENDROM aporta la referencia funcional de la ROM: qué aplicaciones deben estar integradas, cómo debe comportarse el preroot, qué controles de privacidad son útiles y qué partes de la experiencia merecía la pena conservar.
Servicios y aplicaciones
AXPR23 integra el stack que en AXP hacía posible utilizar el teléfono sin depender de una instalación completa de Google:
- microG Services / GmsCore;
- GSF Proxy para aplicaciones que esperan Google Services Framework;
- Phonesky, cliente Play parcheado y firmado para el proyecto;
- las bibliotecas nativas de GmsCore necesarias para aplicaciones como Maps;
- Aurora Store;
- Droidify;
- Fossify Gallery en lugar de Gallery2/Glimpse;
- Jelly, el navegador ligero de LineageOS;
- OpenEUICC como gestor privilegiado de eSIM.
La ROM mantiene Launcher3 y las aplicaciones centrales de LineageOS. No intenta convertir el teléfono en una interfaz completamente distinta: recupera la selección de AXP donde aporta una diferencia práctica.
Preroot y producto
El modelo de root sigue el de AXP/EXTENDROM:
- Magisk se integra durante la construcción del
boot.img; - el manager se activa después de instalar la ROM;
- el usuario decide qué módulos y configuración quiere añadir;
- la ROM no fuerza una colección de modificaciones adicionales.
También se recuperan elementos de producto de AXP: identidad AXP Resurrection
Pro, pantalla de bienvenida, animación de arranque, nombre de paquete de
release y firma del sistema con las claves release-keys del proyecto.
Ajustes y controles de privacidad
Estos cambios son funciones del sistema, no simples APKs añadidos:
| Función | Qué recupera de AXP |
|---|---|
| Private DNS | Lista amplia de proveedores conocidos, sin servidores propios de AXP |
| Comprobación de conectividad | Proveedor seleccionable o comprobación desactivada |
| SUPL y asistencia de ubicación | Controles para limitar asistencia adicional de localización |
| Signature spoofing | Opción restringida para microG y aplicaciones compatibles, desactivada por defecto |
| Grabación de llamadas | Desbloqueo de la ruta de Dialer donde el dispositivo y la región lo permiten |
| Desactivar aplicaciones | Acción clásica para aplicaciones instaladas por el usuario |
| Reinicio automático | Reinicio por inactividad desde los ajustes de seguridad |
| Temporizadores Wi‑Fi/Bluetooth | Desconexión automática tras el tiempo configurado |
| Quick Settings sensibles | Algunos controles requieren desbloquear el teléfono |
| Capturas de pantalla | Opción global para ventanas que usan FLAG_SECURE, desactivada por defecto |
La meta de estos ajustes es devolver control al usuario sin imponer una política única. La mayoría se mantienen desactivados o conservadores por defecto.
Debloat selectivo
AXPR no utiliza una eliminación ciega de todo lo que parezca de Google. La limpieza se adaptó a Android 16 y se hizo por grupos:
- se retiraron las aplicaciones Google de eUICC/LPA y se integró OpenEUICC;
- se redujeron componentes de carrier, RCS y entitlement que no son necesarios para el modelo microG;
- se retiraron herramientas de mantenimiento que no forman parte del producto
final, como
bash,htop,nano,unraryaddon.d/50-lineage.sh; - se redujo la superficie de diagnóstico sin eliminar los servicios necesarios para radio, IMS, ubicación y conectividad;
- no se distribuyen
ssh,sshd,scp,sftp,rsyncniprocmemcomo herramientas de administración del teléfono.
Se conservaron deliberadamente los componentes Pixel, Qualcomm, IMS y eSIM que el funcionamiento diario necesita.
3. Lo que viene de GrapheneOS y Android Hardening
GrapheneOS y Android Hardening son referencias técnicas para determinadas
protecciones. AXPR no es GrapheneOS, no usa su plataforma completa y no copia
un kernel moderno de forma literal. Los parches se adaptaron al kernel no-GKI
4.14 de sunfish.
Kernel
Sobre el kernel de LineageOS se aplicó un conjunto Stage 1 de aproximadamente 30 parches, con medidas como:
- FORTIFY intra-object y comprobaciones de tamaño;
- inicialización de memoria al reservar y liberar;
- endurecimiento y aleatorización de las listas libres de SLAB;
- datos
ro_after_init; - sanitización de rutas sensibles;
- restricciones de
dmesg; - protección y control de determinadas rutas USB;
- ajustes de integridad y reducción de superficie de depuración.
La configuración final conserva CFI y Shadow Call Stack junto con el hardening que ya aportaba Android/LineageOS.
Backports CVE
El inventario de la build final contiene 449 identificadores CVE y parches acompañantes. Son backports seleccionados de distintas generaciones del kernel, con problemas de memoria, drivers, USB, Bluetooth, red, filesystem y subsystems Qualcomm.
Algunos ejemplos del inventario son:
CVE-2015-7837, CVE-2017-18232, CVE-2020-0255, CVE-2021-28039,
CVE-2022-21546 y CVE-2022-48674, además de una serie amplia de correcciones
de 2023–2025.
No se aplicó un megapatch opaco: las series se comprobaron contra el offset
real del árbol 4.14.357-openela y se conservaron listas de atribución. El
inventario completo está en kernel-cve-backport-list.txt dentro de la
documentación del proyecto.
Allocator y userspace
La integración de hardened_malloc sigue la línea de trabajo de GrapheneOS y DivestOS, adaptada a la memoria virtual del Pixel 4a:
hardened_mallocen la libc de 64 bits;- Scudo para procesos de 32 bits;
- excepciones específicas para cámara y SurfaceFlinger, para no romper funciones básicas del dispositivo;
- SELinux en enforcing;
- cifrado de datos estándar de Android.
La protección se aplicó de forma compatible con el hardware. No se importaron dependencias de MTE ni requisitos propios de dispositivos más modernos.
4. Trabajo propio de AXPR
La parte más importante del proyecto fue hacer que esas piezas funcionaran juntas en una base distinta. Ese trabajo es el que convierte el conjunto en una adaptación de AXP y no en una lista de parches:
Portar AXP a Android 16
- localizar los equivalentes de Android 16 para ajustes y servicios que AXP implementaba sobre una generación anterior;
- adaptar los cambios de Settings, SystemUI, SystemServer, Dialer y framework;
- conservar la compatibilidad con el vendor y el kernel
sunfish; - revalidar microG, Phonesky, eSIM, radio y las aplicaciones integradas;
- combinar el debloat con los servicios que Android 16 aún necesita.
Construir el WebView del proyecto
AXPR integra el AOSmium del proyecto mediante la cadena Vanadium → Mulch → AOSmium. Hubo que adaptar el build de Chromium/WebView, generar una versión compatible con las dos ABIs necesarias y conectar el proveedor mediante el overlay estático de LineageOS. El resultado final selecciona AOSmium, pero mantiene el mecanismo Android para instalar y elegir otros proveedores.
Integración y compatibilidad
También son trabajo propio de AXPR:
- seleccionar qué partes de AXP seguían teniendo sentido en Android 16;
- adaptar los offsets y excepciones de los backports al kernel real;
- integrar allocator, Magisk, aplicaciones, permisos y overlays en un único producto;
- mantener la firma, el empaquetado y el flujo de recovery de AXP;
- probar el resultado en el Pixel 4a y corregir incompatibilidades concretas, en lugar de importar configuraciones completas de otra ROM.
5. Matriz de procedencia y diferencias
La siguiente tabla resume qué aporta cada proyecto y qué trabajo se hizo en AXPR. “GrapheneOS / AH” indica una referencia técnica o una familia de parches; no significa que AXPR incorpore GrapheneOS completo.
| Componente | LineageOS aporta | AXP / EXTENDROM aporta | GrapheneOS / AH aporta | Trabajo AXPR en la build final |
|---|---|---|---|---|
| Base y hardware | Android 16, device tree, vendor, radio y recovery | — | — | Portar la experiencia AXP a sunfish sin cambiar la base de dispositivo |
| Servicios Google | Base sin microG ni Play | Modelo microG + GSF Proxy + Phonesky | — | Adaptar permisos, JNI, privilegios y empaquetado a Android 16 |
| Aplicaciones | Launcher3, Dialer y apps centrales | Aurora, Droidify, Fossify y OpenEUICC | — | Seleccionar versiones, ubicaciones y permisos compatibles |
| WebView | Framework y selección de proveedores | Necesidad de conservar el WebView del producto | Chromium/Vanadium como referencia técnica | Construir e integrar AOSmium mediante Vanadium → Mulch → AOSmium |
| Root | No incluido | Preroot de EXTENDROM | — | Integrar Magisk en boot.img sin convertirlo en una app de sistema obligatoria |
| Privacidad y UX | Ajustes estándar | DNS, conectividad, llamadas, spoofing, timeouts y controles AXP | Ideas puntuales de SystemUI | Reubicar y adaptar los controles a Settings/SystemUI Android 16 |
| Debloat | Paquetes de la base | Objetivo de reducir superficie | — | Cuatro oleadas selectivas sin romper radio, IMS, eSIM ni Qualcomm |
| Kernel | msm-4.14 y hardening Android existente |
Orden y selección de parches del track AXP | Stage 1, FORTIFY, slab, sanitización y alloc hardening | Adaptar aproximadamente 30 parches al árbol real de sunfish |
| CVE | Parches upstream disponibles | Política de backports | Fuentes y referencias de hardening | Integrar y verificar 449 identificadores en series aplicables |
| Allocator | Bionic y Scudo de Android | Objetivo de allocator reforzado | hardened_malloc y modelo de excepciones |
Adaptar hardened_malloc a 64 bits, Scudo a 32 bits y VA39 |
| SELinux y cifrado | Base Android/LineageOS | Requisitos de producto | Referencia de endurecimiento | Mantener SELinux enforcing y cifrado de datos |
| Identidad y release | Formato de build LineageOS | Forma de empaquetado AXP Pro | — | Branding, release-keys, ZIP completo y flujo recovery/sideload |
En forma de comparación rápida:
| Área | LineageOS 23.2 limpio | AXPR23 |
|---|---|---|
| Servicios Google | No incluidos | microG, GSF Proxy y Phonesky |
| Aplicaciones | Conjunto estándar de LineageOS | Aurora, Droidify, Fossify, Jelly y OpenEUICC |
| WebView | Proveedor de LineageOS | AOSmium del proyecto como proveedor seleccionado |
| Root | No incluido | Magisk preroot en boot.img |
| Ajustes | Opciones estándar | Controles de DNS, conectividad, ubicación, llamadas y privacidad de AXP |
| Debloat | Paquetes estándar de la base | Limpieza selectiva adaptada a microG y sunfish |
| Kernel | msm-4.14 de LineageOS |
Stage 1, FORTIFY, backports CVE y configuración reforzada |
| Allocator | Bionic estándar | hardened_malloc para 64 bits y Scudo para 32 bits |
| Identidad | Build LineageOS habitual | Producto PRO firmado con release-keys |
| Actualizaciones | Nightlies de LineageOS | ZIP completo por recovery/sideload |
AXPR mantiene la base de dispositivo de LineageOS y mejora sus capas de producto, privacidad y hardening. No es una copia literal de GrapheneOS ni una continuación oficial de AXP.OS: es una adaptación bastante directa de AXP.OS Pro, con las mejoras y correcciones necesarias para Android 16.
6. Estado de AXPR23 y última build
AXPR23 está EOL / archivada. LineageOS dejó de publicar nuevas builds de
Android 16 para sunfish al comenzar la línea Android 17. No habrá nuevas
features ni nuevas builds AXPR23; se conserva como referencia y rollback.
- Build:
AXP-Resurection-Pro-23.2-20261025-sunfish.zip - Base: LineageOS 23.2 / Android 16
- SHA-256:
9d205fd3cc945438dfff3a23b129bf88516c7654f5922bc2ee4d478f9485eef0 - Siguiente línea: AXPR24 sobre LineageOS 24 / Android 17
AXPR24 no es una actualización automática de AXPR23. Es una nueva adaptación que debe volver a validar aplicaciones, WebView, allocator, kernel y packaging contra Android 17.
Descarga
La última build publicada es un ZIP completo para el Google Pixel 4a
(sunfish), firmado con las claves de release del proyecto:
Descargar AXPR23 — AXP.OS sobre LineageOS 23 para Pixel 4a
El botón usa Download Monitor y conserva el contador dinámico de descargas.
- Build:
AXP-Resurection-Pro-23.2-20261025-sunfish.zip - Tamaño: 1.397.472.560 bytes (1,30 GiB)
- MD5:
23378f132ac8b1f53606183451715a9c - SHA-256:
9d205fd3cc945438dfff3a23b129bf88516c7654f5922bc2ee4d478f9485eef0 - Instalación: ZIP completo mediante recovery/sideload. Haz una copia de seguridad antes de instalarlo.
Créditos
AXPR23 se apoya en el trabajo de AXP.OS / EXTENDROM, LineageOS,
microG, GrapheneOS / Android Hardening, Vanadium / Mulch / AOSmium,
Magisk, OpenEUICC y los proyectos de las aplicaciones integradas. Es una
adaptación comunitaria independiente para sunfish.