Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

rackphone

Rackphone transforma teléfonos Android retirados en servidores monitoreados usando LineageOS y Magisk. Proporciona telemetría vía Prometheus, protección de batería y relay de SMS/llamadas mediante una CLI Python que gestiona módulos Magisk sin intervención manual del usuario.

Ficha actualizada 27 sept 2026, 1:00 · upstream 27 sept 2026, 0:49 · release 0.2.0

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es rackphone

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Rackphone convierte dispositivos móviles obsoletos en nodos de infraestructura pasiva conectados por USB a un host. La arquitectura se basa en LineageOS 23.1 y Magisk v30.7, donde módulos específicos (telemetría, batería, acompañante) ejecutan funciones críticas sin depender de la pantalla o interacción humana. El diseño asume que el teléfono vive en un rack con la pantalla apagada, eliminando cualquier requisito de toque o notificación visual para el usuario final.

La gestión se realiza mediante una CLI en Python (FastAPI/uv) que configura módulos Magisk desde el host sin necesidad de root permanente en el cliente, aunque sí requiere permisos de superusuario para las operaciones críticas. Los datos se exponen a Prometheus y Grafana, mientras que un gateway maneja la autenticación TLS y el relay de mensajes, asegurando que solo el host autorizado pueda interactuar con el dispositivo.

El sistema valida estrictamente los parámetros antes de aplicarlos, rechazando configuraciones fuera de rango para evitar fallos en producción. Incluye una suite de pruebas exhaustiva (878 checks) que cubre lógica de shell, Python y la aplicación móvil, garantizando que lo que se prueba es exactamente lo que se despliega en el sistema de archivos del módulo Magisk.

CASOS DE USO
  • Monitorización de telemetría de hardware (temperatura, carga) para servidores headless.
  • Protección de batería mediante ventanas de carga configurables para extender vida útil.
  • Relay seguro de SMS y llamadas entrantes gestionado por el host sin intervención manual.
  • Control remoto de sesión de pantalla vía scrcpy autenticado con TLS.
  • Uso como nodo de almacenamiento o proxy en entornos de edge computing.
PUNTOS DESTACADOS
  • Arquitectura sin operador: Funciona completamente automático sin necesidad de tocar la pantalla ni recibir notificaciones visuales.
  • Modularidad Magisk: Plugins independientes que se pueden activar/desactivar vía CLI sin reinstalar el sistema.
  • Validación estricta: La CLI rechaza configuraciones inválidas antes de escribir en el dispositivo, previniendo errores en producción.
  • Telemetría limpia: Los valores no disponibles (Integer.MAX_VALUE) se descartan automáticamente para evitar picos falsos en dashboards.
  • Autenticación robusta: El gateway utiliza TLS y tokens scoped para proteger la comunicación entre host y teléfono.
PRECAUCIONES
  • Dependencia de USB/ADB: Requiere conexión física constante al host, no es una solución nativa en la nube sin cable.
  • Necesidad de Root/Magisk: El dispositivo debe tener bootloader desbloqueado y Magisk instalado previamente.
  • Sin Docker en el teléfono: No utiliza contenedores en el lado del dispositivo, solo en el host para gestionar ADB.
  • Configuración manual inicial: Requiere instalación de módulos Magisk y configuración de permisos de superusuario una vez.
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU2 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Listo para automatizar

Instalar LineageOS 23.1 y Magisk v30.7 con bootloader desbloqueado. Ejecutar uv run --project cli rackphone install --reboot para configurar módulos. Asegurar que el host tenga un servidor ADB accesible. Configurar autenticación TLS en el gateway antes de exponer servicios a Prometheus o clientes externos.

✓Dockerfile
✓Compose
✓One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
FastAPIPython
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
5037
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.