Open Source

Tether: iMessage, SMS y Apple Continuity en Linux — sin necesidad de Mac

El Tether de Zack Bartel trae Apple Continuity a Linux+iPhone: iMessage y SMS por Bluetooth, notificaciones, sincronización de contactos, transferencia de archivos, sincronización de portapapeles y autocompletado de OTP — con seguridad mTLS y cero relay de Mac. Explota el agujero de interoperabilidad de smartwatches de la UE (iOS 26.5 expone MAP/ANCS por Bluetooth estándar) suplantando su Class-of-Device Bluetooth como coche. Llegó a HN con 450 puntos. Análisis completo: cómo funciona, el ecosistema (BlueFerry, iphonebridge, OpenBubbles), el debate GPL-vs-MIT que hizo relicenciar ancs4linux, y la realidad del Bluetooth en Linux en 2026.

Tether: iMessage, SMS y Apple Continuity en Linux — sin necesidad de Mac

Conclusiones clave

  • El Tether de Zack Bartel trae Apple Continuity a Linux+iPhone sin relay de Mac ni VM: iMessage/SMS por Bluetooth (MAP + ANCS), notificaciones del sistema, sincronización de contactos, transferencia de archivos, sincronización de portapapeles y autocompletado de OTP en el navegador — asegurado con mTLS (X.509 RSA) de extremo a extremo. Llegó a #1 en HN con 450 puntos y 178 comentarios.
  • Cómo funciona: iOS 26.5 expone metadatos completos de iMessage/RCS/notificaciones por perfiles Bluetooth estándar porque las reglas de interoperabilidad de smartwatches de la UE forzaron la mano de Apple. El controlador Bluetooth de Tether suplanta su Class-of-Device como sistema de entretenimiento de coche, así el iPhone habilita felizmente el toggle 'Show Message Notifications' y el acceso MAP. Apple no puede bloquear esto sin romper millones de smartwatches y coches.
  • El threading de mensajes de grupo se reconstruye cruzando dos canales: los mensajes MAP (que no listan los destinatarios del grupo) se deduplican contra los metadatos ANCS BLE (que llevan los nombres de grupo) — un truco de side-channel descubierto por la comunidad de ingeniería inversa.
  • El debate GPL-vs-MIT se volvió real: Tether es una implementación clean-room en C++ (MIT) porque los bridges de ingeniería inversa existentes eran GPL. Zack argumentó que el copyleft en protocolos de interoperabilidad es 'un poco desafortunado' — y el creador de ancs4linux, Paweł Zmarzły, leyó el post, estuvo de acuerdo y relicenció su proyecto a MIT en el acto. El campo copyleft de HN (defensores de AGPLv3) contraatacó con fuerza.
  • El Bluetooth en Linux en 2026 sigue siendo 'un completo desastre': el espejo de notificaciones ANCS requiere un bond BLE seguro — los chipsets Intel AX lo manejan perfectamente, pero Realtek y los dongles USB genéricos fallan por completo (las claves de pairing legacy bloquean la derivación de claves cross-transport). Necesitas BlueZ 5.86+ con API bearer experimental, políticas systemd personalizadas y un Class-of-Device suplantado.

Respuestas clave

¿Qué es Tether?

Un bridge open source (MIT) de Zack Bartel que trae funciones estilo Apple Continuity a usuarios Linux+iPhone: envío y recepción de iMessage/SMS por Bluetooth, espejo de notificaciones del sistema, sincronización de contactos, transferencia de archivos por WiFi, sincronización de portapapeles y autocompletado de OTP en el navegador. Sin relay de Mac, sin VM, sin servicio en la nube. La comunicación se asegura con TLS de autenticación mutua (mTLS) con certificados X.509 RSA.

¿Cómo funciona iMessage en Linux sin Mac?

iOS 26.5 expone iMessage, RCS y metadatos de notificaciones por perfiles Bluetooth estándar (MAP, PBAP, ANCS) — un efecto secundario de las reglas de interoperabilidad de smartwatches de la UE que forzaron a Apple a abrir estos protocolos. El lado Linux de Tether suplanta su Class-of-Device Bluetooth para parecer un sistema de entretenimiento de coche, lo que hace que el iPhone habilite el toggle 'Show Message Notifications' y el acceso MAP. Los mensajes se extraen vía MAP (OBEX), los contactos vía PBAP y las notificaciones vía ANCS sobre BLE.

¿Puede Apple bloquear Tether?

Casi seguro que no — y esa es la parte elegante. Tether actúa como receptor local de smartwatch/vehículo usando perfiles Bluetooth estándar. Bloquearlo rompería la integración Bluetooth de millones de smartwatches (Garmin etc.) y coches en todo el mundo, algo que Apple no puede permitirse bajo la presión de interoperabilidad de la UE. Los riesgos principales son técnicos (peculiaridades Bluetooth específicas de hardware), no takedowns legales.

¿Cómo se compara Tether con KDE Connect?

KDE Connect es la solución premier para Android+Linux pero está muy restringido en iOS: el sandbox de Apple bloquea el espejo de notificaciones, la obtención de contactos y la gestión de SMS/iMessage, y el roadmap oficial lista la integración de iMessage en iOS como 'Won't Implement.' Tether llena exactamente ese hueco para usuarios de iPhone. En Android, deberías seguir usando KDE Connect.

¿Cuáles son las alternativas para iMessage sin Mac?

En Linux+iPhone: BlueFerry (GPL, Python/QML, CLI/TUI, historial cifrado con keyring), iphonebridge (GPL, añade llamadas hands-free vía HFP/oFono/PipeWire) y ancs4linux (solo notificaciones BLE). En Android: OpenBubbles (completamente serverless — emula un Mac en el dispositivo, soporta FaceTime, alojado a $16.99/mes), BlueBubbles (servidor Mac siempre encendido + pushes Firebase) y AirMessage (socket directo a tu Mac, setup de 15-20 min).

Tether: iMessage, SMS y Apple Continuity en Linux — sin necesidad de Mac

Durante años, lo único que mantenía a los usuarios de Linux atados a un MacBook no era el software — eran las burbujas azules.

Zack Bartel se mudó a Linux a tiempo completo y descubrió que no echaba de menos casi nada de macOS. Casi. Lo único que seguía deseando era Continuity de Apple: iMessage y SMS desde el ordenador, compartir archivos, sincronización de portapapeles, notificaciones — y especialmente ese momento mágico en que un código OTP de Mail o Messages se autocompleta en el formulario de login que estás esperando.

Así que construyó Tether — un bridge open source, licencia MIT, que trae Continuity a Linux+iPhone sin relay de Mac. Llegó a HN con 450 puntos y 178 comentarios y fue reconocido al instante como la pieza que faltaba del lock-in de Apple.

Lo que hace Tether

FunciónTransporteDetalles
iMessage / SMSBluetooth (MAP)Enviar y recibir por Message Access Profile estándar
NotificacionesBluetooth (ANCS)Espejo completo de notificaciones del sistema por BLE
Sincronización de contactosBluetooth (PBAP)Agenda extraída del iPhone
Transferencia de archivosWiFi (mTLS)Directa, cifrada de extremo a extremo
Sincronización de portapapelesWiFi (mTLS)Copiar/pegar entre iPhone y Linux (Wayland)
Autocompletado OTPWiFi + extensionesExtensión de mail → extensión de navegador → autocompletado

Toda la red se asegura con TLS de autenticación mutua (mTLS) con certificados X.509 RSA — ambos lados deben autenticarse antes de que nada se comunique. La capa de mensajería Bluetooth viaja sobre cifrado Bluetooth estándar. La seguridad fue ciudadana de primera clase desde el día uno, con barridos regulares de bugs/seguridad desde entonces.

El truco: el agujero de los smartwatches de la UE

¿Cómo funciona iMessage en Linux sin Mac, sin jailbreak ni bendición de Apple? La respuesta es una de las historias de seguridad más elegantes de 2026:

iOS 26.5 expone metadatos completos de iMessage, RCS y notificaciones por perfiles Bluetooth estándar — no por accidente, sino porque las reglas de interoperabilidad de smartwatches de la UE forzaron a Apple a abrirlos para que relojes de terceros (Garmin, etc.) pudieran mostrar notificaciones y manejar respuestas básicas.

El controlador Bluetooth de Tether hace entonces algo deliciosamente descarado: suplanta su Class-of-Device Bluetooth para parecer un sistema de entretenimiento de coche. El iPhone, creyendo que está conectado a un salpicadero de vehículo, habilita felizmente el toggle “Show Message Notifications” y concede acceso MAP.

Y Apple no puede cerrar el agujero sin romper la integración Bluetooth de millones de smartwatches y coches en todo el mundo — algo que los reguladores de la UE nunca permitirían. El veredicto de la comunidad en HN: tan seguro como se pone.

La ingeniería tras la magia

  • MAP (Message Access Profile) extrae mensajes del inbox por Bluetooth Classic (OBEX), recibe notificaciones de textos entrantes vía push MAP MNS, y envía mensajes salientes con MAP PushMessage
  • PBAP (Phone Book Access Profile) resuelve números/emails crudos en nombres de contacto
  • ANCS (Apple Notification Center Service) monitoriza todas las notificaciones del sistema por un enlace BLE GATT

El threading de mensajes de grupo fue la parte difícil: los mensajes MAP históricamente no listan los destinatarios del grupo, rompiendo el threading estándar. La solución es un truco de side-channel — las notificaciones ANCS llevan el nombre del grupo y metadatos por BLE, así que el daemon deduplica y cruza ambos canales para reconstruir la estructura del grupo.

El proyecto también incluye un sistema OTP construido con extensiones de navegador y mail (Zen Browser/Betterbird), y un vault TOTP planificado.

El drama GPL vs MIT que cambió un proyecto

Tether es una implementación clean-room en C++ porque los bridges de ingeniería inversa existentes (BlueFerry, iphonebridge) son GPL — y Zack quería mantener Tether en MIT:

“Personalmente, creo que poner una implementación de protocolo de interoperabilidad tras una licencia copyleft es un poco desafortunado. Preferiría ver algo así usable por cualquiera.”

El post tuvo un efecto real e inmediato: Paweł Zmarzły, creador de ancs4linux (sobre el que se construye el código de notificaciones de Tether), leyó el artículo y respondió en HN: “Huh, no lo había pensado. Acabo de relicenciar ancs4linux a MIT.”

El campo copyleft contraatacó con fuerza — los defensores de AGPLv3 argumentaron que las licencias permisivas dejan que las corporaciones exploten el trabajo voluntario. Es una división filosófica genuinamente sin resolver, y este hilo dio a ambos lados un caso concreto.

El ecosistema: quién debería usar qué

HerramientaLicenciaMejor para
TetherMITUsuarios Wayland que quieren la suite Continuity completa (file drop, portapapeles, OTP) + mensajería
BlueFerryGPL-2.0+Power users de terminal que quieren CLI/TUI con historial cifrado con keyring
iphonebridgeGPL-2.0+Usuarios que necesitan llamadas hands-free (HFP vía oFono/PipeWire)
ancs4linuxMIT (¡ahora!)Espejo puro de notificaciones por BLE
KDE ConnectGPLAndroid+Linux (soporte iOS oficialmente ‘Won’t Implement’)
OpenBubblesiMessage/FaceTime serverless en Android (emula un Mac en el dispositivo)
BlueBubbles / AirMessageAndroid + servidor Mac siempre encendido para paridad completa de iMessage

El chequeo de realidad: Bluetooth en Linux, 2026

El veredicto del propio Zack: “un completo desastre.”

  • El mensajería MAP estándar funciona en la mayoría de controladores, pero el espejo de notificaciones ANCS requiere un bond BLE seguro — y el soporte de hardware es una lotería
  • Los chipsets Intel AX-series manejan la negociación de claves perfectamente
  • Realtek y los dongles USB genéricos fallan por completo — su firmware negocia claves de pairing legacy que bloquean la derivación de claves cross-transport que iOS requiere
  • Necesitas BlueZ 5.86+ con el API bearer experimental, políticas systemd manuales para usuarios no-root, y la suplantación de Class-of-Device

Los primeros adoptantes en HN reportaron fricción de instalación en Fedora 44, Ubuntu 24.04 y Hyprland, además de docs de pairing desactualizadas. Es un proyecto para los técnicamente dispuestos — al menos por ahora.

La conclusión

Tether es lo más cercano a un reemplazo completo de Apple Continuity en Linux — y su existencia demuestra un punto mayor: el jardín amurallado de Apple tiene grietas, y las reglas de interoperabilidad de la UE las están ensanchando. Las burbujas azules por fin flotan en Linux.

Si estás en Linux con un iPhone, pruébalo. Solo el autocompletado de OTP vale la pena. 🔵💬