- App de código abierto que ofrece un entorno Linux y funciones de terminal en Android, ampliable mediante la instalación de distintos paquetes
- Complementa sus funciones mediante varias apps de plugins como Termux:API, Boot, Float, Styling, Tasker, Widget
- Se puede instalar desde F-Droid, GitHub, Google Play (experimental), y como cada fuente usa una clave de firma distinta, no se pueden mezclar
- En Android 12 o superior puede haber inestabilidad causada por restricciones de procesos, y se incluyen enlaces a problemas relacionados y sus soluciones
- También está claramente documentado para desarrolladores y mantenedores, incluyendo la biblioteca compartida (termux-shared), reglas para mensajes de commit y guías para forks
Resumen de Termux
- Termux es una app emuladora de terminal que ofrece un entorno Linux en Android
- La app en sí incluye la interfaz de usuario y la funcionalidad de emulación de terminal
- Los paquetes instalables se gestionan en el repositorio separado termux/termux-packages
- En Android 12 o superior pueden presentarse problemas por el límite de 32 procesos y por la finalización de procesos cuando hay uso excesivo de CPU
- Los problemas relacionados y las soluciones se indican en el issue #2366 de GitHub y en enlaces a la documentación de Android
App de Termux y plugins
- Además de la app principal, admite las siguientes apps de plugins
- Termux:API, Termux:Boot, Termux:Float, Termux:Styling, Termux:Tasker, Termux:Widget
- Todos los plugins usan el mismo sharedUserId(com.termux), por lo que solo pueden instalarse juntos APK firmados con la misma clave
Métodos de instalación
- La versión más reciente es v0.118.3, con soporte completo para Android 7 o superior
- El soporte para Android 5 y 6 terminó en 2020, pero en 2022 volvió a ofrecerse compatibilidad solo para la app desde el código fuente en GitHub
- Si se mezclan instalaciones desde fuentes con claves de firma distintas (como F-Droid y GitHub), se producirán errores
- Para instalar desde otra fuente, es necesario eliminar primero todos los APK existentes de Termux y sus plugins, y luego reinstalar
F-Droid
- El APK puede descargarse directamente desde F-Droid; después de instalar la app, las actualizaciones deben revisarse manualmente
- La compilación de F-Droid no la mantienen los desarrolladores de Termux sino el equipo de F-Droid, y usa una clave de firma distinta
- No se ofrecen APK por arquitectura; solo se distribuye un APK universal único (~180MB)
GitHub
- Los APK se ofrecen a través de GitHub Releases o Build Action
- Para Android 7 o superior se usa
apt-android-7, y para Android 5 y 6 apt-android-5
- Los APK compilados en GitHub están firmados con una clave de prueba (testkey_untrusted.jks), y cualquiera puede compilar con esa misma clave
- Como existe el riesgo de distribución de versiones maliciosas, no se recomienda instalar APK de fuentes distintas al repositorio oficial de GitHub
- El APK universal pesa alrededor de 180MB, y los APK por arquitectura alrededor de 120MB
Google Play (experimental)
- Existe en Google Play una versión adaptada a políticas para Android 11 o superior, pero tiene funciones faltantes y errores
- La versión de Play se está desarrollando en un repositorio separado (termux-play-store)
- No es compatible con la versión de F-Droid debido a la eliminación de sharedUserId, y se recomienda desactivar las actualizaciones automáticas
Eliminación y respaldo
- Al cambiar a otra fuente de instalación o al borrar la app, es necesario eliminar por completo todos los APK de Termux y sus plugins
- Antes de eliminar, se puede respaldar la información siguiendo el procedimiento de Backing up Termux
Comunidad y documentación
- Comunidades principales: Reddit(r/termux), canales de Matrix/Gitter, Twitter(@termuxdevs), correo de soporte (support@termux.dev)
- Documentación oficial:
- Material adicional: FAQ, estructura del sistema de archivos, acceso remoto, acceso al almacenamiento de Android, configuración del terminal, etc.
5 comentarios
Soy de la generación que recién empezó a poder usar smartphones mientras hacía el servicio militar.
Instalé Termux, practiqué desarrollo web y hasta probé escribir intérpretes.
También metí un libro de Rust para estudiar.
Después de mucho tiempo, alejarme de la GUI
y clavarme en un entorno de texto fue muy entretenido.
También aprendí
vimusando Termux.Como en los comentarios de Hacker News,
aún hoy, cuando consigo un dispositivo Android nuevo,
instalo Termux sí o sí.
En lo personal, me resulta muy útil cuando necesito monitorear código estando fuera y entrar por
sshal servidor por un momento.Estoy usando un Pixel, y en las versiones más recientes de Android ahora es posible instalar oficialmente contenedores de Linux desde la configuración de desarrollador (no sé si también se puede en otros teléfonos; supongo que sí).
De por sí ya tenía Termux instalado como una especie de juguete que sacaba de vez en cuando, o si acaso para algo como hacer pruebas de
ping, pero ahora siento que ya ni siquiera voy a necesitarlo para ese tipo de uso.Era una app interesante, así que me da un poco de pena despedirme de ella.
Había dejado CopyParty guardado en mi lista de videos para ver después en YouTube, pero al leer los comentarios de HN me di cuenta de que era de la misma persona o.o
Comentarios en Hacker News
Uno de mis programas favoritos es Copyparty, hecho por la misma persona que puso Termux en el teléfono
El enlace de GitHub está aquí, y también hay un video de YouTube relacionado
Cada vez que consigo un dispositivo Android nuevo, lo primero que instalo es Termux
Conecto un teclado Bluetooth con funda y programo de forma remota desde el sofá con Neovim, manejo mis notas con vimwiki y las sincronizo con GitHub
La mayoría de las herramientas CLI están en el repositorio de Termux y, si no están, las compilo yo mismo con clang, cmake y demás
Gracias a Termux, Android sigue siendo mi sistema principal
Mi caso de uso para Termux es automatizar el respaldo de fotos
Respaldo fotos en un NAS, pero algunas faltaban, así que ejecuto en Termux un script que calcula el checksum MD5 en el NAS y borra en el teléfono los archivos equivalentes
Así puedo recuperar de forma confiable decenas de GB de espacio
El issue relacionado de Nextcloud está aquí
A medida que crece el desarrollo basado en IA, creo que más gente va a usar herramientas como Termux, tmux
Es difícil escribir en el teléfono, pero con teclados como Unexpected Keyboard(enlace) y el modo vim, resulta bastante usable
Yo uso Termux para ejecutar SSH solo cuando lo necesito
Abro Termux, se activa SSH; lo cierro y se detiene. Es suficiente para sincronizar archivos con rsync
Como no necesito tenerlo siempre encendido, no uso apps como LocalSend o SyncThing. En el escritorio simplemente ejecuto un script de sync y le indico la dirección
Hoy en día casi no uso apps así porque ya no hay teléfonos Android con teclado físico
En la época del Motorola Droid armé un entorno muy productivo con Termux y ConnectBot
Ahora hay menos potencial, y la variedad de hardware o la apertura de los bootloaders ya no es lo que era. Termux me hace recordar esa época con nostalgia
En Termux puedes usar tal cual entornos como tmux, fish, git, yazi
También se pueden compilar apps en Rust, y sorprende que las apps TUI respondan a la entrada táctil
Me pregunto si en iOS existe un terminal de este nivel
Dicen que ahora Android tiene un entorno Linux completo, entonces ¿Termux sigue siendo necesario?
He visto muchas discusiones al respecto en r/androidterminal
En cambio, el nuevo terminal Linux corre en una VM aparte, así que usa más espacio de almacenamiento
Para mí, Termux es el mejor emulador de terminal para Android
Organizo notas con fzf, Neovim y Git, y también me conecto en remoto por SSH
Si construyo un CLI o TUI en Go y lo compilo con el NDK, puedo ejecutarlo directamente en Termux
Honestamente me da curiosidad cómo usan un entorno de terminal en una pantalla táctil tan pequeña
:help. Ahora ya me acostumbré por completo