Open Source

Tether: iMessage, SMS, and Apple Continuity on Linux — No Mac Required

Zack Bartel's Tether brings Apple Continuity to Linux+iPhone: iMessage and SMS over Bluetooth, notifications, contact sync, file transfer, clipboard sync, and OTP autofill — with mTLS security and zero Mac relay. It exploits the EU smartwatch interoperability loophole (iOS 26.5 exposes MAP/ANCS over standard Bluetooth) by spoofing its Bluetooth Class-of-Device as a car. Hit HN with 450 points. Full analysis: how it works, the ecosystem (BlueFerry, iphonebridge, OpenBubbles), the GPL-vs-MIT debate that made ancs4linux relicense, and Bluetooth-on-Linux reality in 2026.

Tether: iMessage, SMS, and Apple Continuity on Linux — No Mac Required

Key takeaways

  • Tether by Zack Bartel brings Apple Continuity to Linux+iPhone without any Mac relay or VM: iMessage/SMS over Bluetooth (MAP + ANCS), system notifications, contact sync, file transfer, clipboard sync, and OTP autofill in the browser — secured with mTLS (X.509 RSA) end-to-end. It hit #1 on HN with 450 points and 178 comments.
  • How it works: iOS 26.5 exposes full iMessage/RCS/notification metadata over standard Bluetooth profiles because EU smartwatch interoperability rules forced Apple's hand. Tether's Linux Bluetooth controller spoofs its Class-of-Device as a car entertainment system, so the iPhone happily enables the 'Show Message Notifications' toggle and MAP access. Apple can't block this without breaking millions of smartwatches and cars.
  • Group message threading is reconstructed by cross-referencing two channels: MAP messages (which fail to list group recipients) are deduplicated against ANCS BLE metadata (which carries group names) — a side-channel trick the reverse-engineering community discovered.
  • The GPL-vs-MIT debate turned real: Tether is a clean-room C++ implementation (MIT) because existing reverse-engineered bridges were GPL. Zack argued copyleft on interoperability protocols is 'unfortunate' — and ancs4linux creator Paweł Zmarzły read the post, agreed, and relicensed his project to MIT on the spot. The HN copyleft camp (AGPLv3 advocates) pushed back hard.
  • Bluetooth on Linux in 2026 is still 'a complete shit show': ANCS notification mirroring requires a secure BLE bond — Intel AX chipsets handle it flawlessly, but Realtek and generic USB dongles fail entirely (legacy pairing keys block cross-transport key derivation). You need BlueZ 5.86+ with experimental bearer API, custom systemd policies, and a spoofed Class-of-Device.

Key answers

What is Tether?

An open-source (MIT) bridge by Zack Bartel that brings Apple Continuity-style features to Linux+iPhone users: iMessage and SMS send/receive over Bluetooth, system notification mirroring, contact sync, WiFi file transfer, clipboard sync, and OTP autofill in the browser. No Mac relay, no VM, no cloud service. Communication is secured with mutually-authenticated TLS (mTLS) with X.509 RSA certificates.

How does iMessage work on Linux without a Mac?

iOS 26.5 exposes iMessage, RCS, and notification metadata over standard Bluetooth profiles (MAP, PBAP, ANCS) — a side effect of EU smartwatch interoperability rules that forced Apple to open these protocols. Tether's Linux side spoofs its Bluetooth Class-of-Device to look like a car entertainment system, which makes the iPhone enable the 'Show Message Notifications' toggle and MAP access. Messages are pulled via MAP (OBEX), contacts via PBAP, and notifications via ANCS over BLE.

Is Apple able to block Tether?

Almost certainly not — and that's the elegant part. Tether acts as a local Bluetooth smartwatch/vehicle receiver using standard profiles. Blocking it would break Bluetooth integration for millions of smartwatches (Garmin etc.) and cars worldwide, which Apple can't afford under EU interoperability pressure. The main risks are technical (hardware-specific Bluetooth quirks), not legal takedowns.

How does Tether compare to KDE Connect?

KDE Connect is the premier solution for Android+Linux but is heavily restricted on iOS: Apple's sandbox blocks notification mirroring, contact fetch, and SMS/iMessage management, and the official roadmap lists iOS iMessage integration as 'Won't Implement.' Tether fills exactly that gap for iPhone users. On Android, you should still use KDE Connect.

What are the alternatives for iMessage without a Mac?

On Linux+iPhone: BlueFerry (GPL, Python/QML, CLI/TUI, keyring-encrypted history), iphonebridge (GPL, adds hands-free phone calls via HFP/oFono/PipeWire), and ancs4linux (BLE notifications only). On Android: OpenBubbles (completely serverless — emulates a Mac on-device, supports FaceTime, hosted at $16.99/mo), BlueBubbles (always-on Mac server + Firebase pushes), and AirMessage (direct socket to your Mac, 15-20 min setup).

Tether: iMessage, SMS, and Apple Continuity on Linux — No Mac Required

For years, the one thing keeping Linux users tied to a MacBook wasn’t the software — it was the blue bubbles.

Zack Bartel moved to Linux full-time and found he missed almost nothing from macOS. Almost. The one thing he kept wishing for was Apple’s Continuity: iMessage and SMS from the computer, file sharing, clipboard sync, notifications — and especially that magic moment when an OTP code from Mail or Messages autofills into the login form you’re waiting on.

So he built Tether — an open-source, MIT-licensed bridge that brings Continuity to Linux+iPhone, no Mac relay required. It hit HN with 450 points and 178 comments and was instantly recognized as the missing piece of Apple lock-in.

What Tether does

FeatureTransportDetails
iMessage / SMSBluetooth (MAP)Send and receive over standard Message Access Profile
NotificationsBluetooth (ANCS)Full system notification mirroring over BLE
Contact syncBluetooth (PBAP)Phonebook pulled from iPhone
File transferWiFi (mTLS)Direct, end-to-end encrypted
Clipboard syncWiFi (mTLS)Copy/paste between iPhone and Linux (Wayland)
OTP autofillWiFi + extensionsMail extension → browser extension → autofill

All networking is secured with mutually-authenticated TLS (mTLS) using X.509 RSA certificates — both sides must authenticate before anything communicates. The Bluetooth messaging layer rides on standard Bluetooth encryption. Security was a first-class citizen from day one, with regular bug/security sweeps since.

The trick: the EU smartwatch loophole

How does iMessage work on Linux without a Mac, a jailbreak, or Apple’s blessing? The answer is one of the most elegant security stories of 2026:

iOS 26.5 exposes full iMessage, RCS, and notification metadata over standard Bluetooth profiles — not by accident, but because EU smartwatch interoperability rules forced Apple to open them so third-party watches (Garmin, etc.) could show notifications and handle basic replies.

Tether’s Linux Bluetooth controller then does something delightfully cheeky: it spoofs its Bluetooth Class-of-Device to look like a car entertainment system. The iPhone, believing it’s connected to a vehicle dashboard, happily enables the “Show Message Notifications” toggle and grants MAP access.

And Apple can’t close the loophole without breaking Bluetooth integration for millions of smartwatches and cars worldwide — which EU regulators would never allow. The community’s verdict on HN: this is as safe as it gets.

The engineering behind the magic

  • MAP (Message Access Profile) pulls inbox messages over Bluetooth Classic (OBEX), receives incoming-text notifications via MAP MNS push, and sends outgoing messages with MAP PushMessage
  • PBAP (Phone Book Access Profile) resolves raw numbers/emails into contact names
  • ANCS (Apple Notification Center Service) monitors all system notifications over a BLE GATT link

Group message threading was the hard part: MAP messages historically fail to list group recipients, breaking standard threading. The fix is a side-channel trick — ANCS notifications carry the group name and metadata over BLE, so the daemon deduplicates and cross-references both channels to reconstruct group structure.

The project also shipped with an OTP system built on browser and mail extensions (Zen Browser/Betterbird), and a planned TOTP vault.

The GPL vs MIT drama that changed a project

Tether is a clean-room C++ implementation because the existing reverse-engineered bridges (BlueFerry, iphonebridge) are GPL — and Zack wanted Tether to stay MIT:

“Personally, I think putting an interoperability protocol implementation behind a copyleft license is a little unfortunate! I’d rather see something like this usable by anyone.”

The post had a real, immediate effect: Paweł Zmarzły, creator of ancs4linux (which Tether’s notification code builds on), read the article and replied on HN: “Huh, haven’t thought of it. Just relicensed ancs4linux to MIT.”

The copyleft camp pushed back hard — AGPLv3 advocates argued that permissive licenses let corporations exploit volunteer labor. It’s a genuinely unresolved philosophical split, and this thread gave both sides a concrete case.

The ecosystem: who should use what

ToolLicenseBest for
TetherMITWayland users wanting the full Continuity suite (file drop, clipboard, OTP) + messaging
BlueFerryGPL-2.0+Terminal power users wanting CLI/TUI with keyring-encrypted history
iphonebridgeGPL-2.0+Users who must have hands-free phone calls (HFP via oFono/PipeWire)
ancs4linuxMIT (now!)Pure notification mirroring over BLE
KDE ConnectGPLAndroid+Linux (iOS support officially ‘Won’t Implement’)
OpenBubblesServerless iMessage/FaceTime on Android (emulates a Mac on-device)
BlueBubbles / AirMessageAndroid + always-on Mac server for full iMessage parity

The reality check: Bluetooth on Linux, 2026

Zack’s own verdict: “a complete shit show.”

  • Standard MAP messaging works on most controllers, but ANCS notification mirroring requires a secure BLE bond — and hardware support is a lottery
  • Intel AX-series chipsets handle the key negotiation flawlessly
  • Realtek chipsets and generic USB dongles fail entirely — their firmware negotiates legacy pairing keys that block the cross-transport key derivation iOS requires
  • You need BlueZ 5.86+ with the experimental bearer API, manual systemd policies for non-root users, and the Class-of-Device spoof

Early adopters on HN reported installation friction on Fedora 44, Ubuntu 24.04, and Hyprland, plus outdated pairing docs. It’s a project for the technically willing — at least for now.

The bottom line

Tether is the closest thing yet to a complete Apple Continuity replacement on Linux — and its existence proves a larger point: Apple’s walled garden has cracks, and EU interoperability rules are widening them. The blue bubbles finally float on Linux.

If you’re on Linux with an iPhone, give it a try. The OTP autofill alone is worth it. 🔵💬