Tether принёс iMessage, SMS и синхронизацию с iPhone на Linux

Автор личного блога zackbartel.com перешёл на Linux на постоянной основе и обнаружил, что почти не скучает по macOS, кроме одной вещи: того, что Apple называет Continuity (единая экосистема Apple, которая связывает iPhone и компьютер, iMessage, SMS, уведомления, синхронизация буфера обмена и файлов, автоподстановка одноразовых кодов подтверждения из Mail и Messages). Так появился Tether, инструмент с открытым исходным кодом по лицензии MIT, который постепенно воссоздаёт эти функции для связки Linux и iPhone.

Перед тем как начать, автор рассмотрел альтернативы: KDE Connect существует и хорошо работает с Android, но, по словам автора, не решал именно ту задачу, ради которой затевался Tether, и по дорожной карте проекта не собирался; прогон трафика через прокси на Mac (даже поверх Tailscale) автор пробовал сам и назвал этот опыт неприятным, а не решением. Разработка Tether шла по шагам. Первой была синхронизация буфера обмена, она была нужна для автоподстановки одноразовых кодов и оказалась самой простой в реализации. Предвидя сложности с App Store, автор сначала выпустил iOS-приложение только с синхронизацией буфера обмена, а на стороне Linux в тот момент был лишь базовый демон под названием tetherd. Следующим шагом стала передача файлов, эта часть, по словам автора, далась быстро и легко.

Для автоподстановки одноразовых кодов автор выбрал путь расширений браузера и почтового клиента: в дело идут Zen Browser (форк Firefox) и Betterbird (форк Thunderbird), которые хорошо поддерживают WebExtensions, под них автор написал два расширения: почтовое находит код в письме и передаёт его браузерному, а то подставляет код в поле входа по мере поступления. Схема работает хорошо, но поддержка узкая: пользователи других почтовых клиентов пока остаются без этой функции. Что касается безопасности, сеть между iOS и Linux защищена по протоколу mTLS с самого начала работы над проектом, и оба устройства должны заранее подтвердить друг друга, прежде чем смогут обмениваться данными; кроме того, автор регулярно проводит раунды проверок на баги и уязвимости, которые называет «Opus», а затем «Fable», что именно это за инструменты или методика, в тексте не поясняется.

До этого момента, по словам автора, прямого интерфейса к iMessage и SMS для Linux не существовало вовсе. Ситуация изменилась, когда автор нашёл проекты ancs4linux и BlueFerry, а также протокольную документацию, написанную erikwb, именно она наконец дала достаточно сведений, чтобы понять, как работает этот механизм Apple. Здесь возникла лицензионная сложность: ancs4linux и BlueFerry распространяются по лицензии GPL, а Tether, по MIT и останется таким, поэтому автор написал собственную независимую реализацию на C++ по методу «чистой комнаты» (clean-room), не заимствуя код GPL-проектов. Автор считает неудачным решением прятать реализацию протокола межплатформенного взаимодействия за копилефт-лицензией и хотел бы, чтобы подобные вещи были доступны для использования независимо от лицензии применяющего их проекта, вплоть до идеи вынести это в отдельную общую библиотеку с рабочим названием libtether.

Даже разобравшись с протоколом, автор столкнулся с тем, что сама bluetooth-интеграция потребовала долгой возни: сбои без внятных объяснений, механизм, автоматически разрывающий соединение, и множество вручную отслеживаемых частных случаев, компенсирующих недостатки bluetooth. По формулировке автора, в 2026 году это по-прежнему полный бардак. В итоге Tether теперь поддерживает iMessage, SMS, уведомления и синхронизацию контактов на Linux, в дополнение к ранее реализованным передаче файлов, синхронизации буфера обмена и автоподстановке одноразовых кодов. Автор называет проект результатом решения собственной проблемы, но хочет, чтобы Tether был полезен всем, и открыт для любых форм участия, исправлений, запросов функций, переводов и документации.

Ключевые факты

  • Инди-разработчик выпустил Tether, инструмент с открытым исходным кодом (MIT), который переносит на Linux функции Apple Continuity: iMessage, SMS, уведомления и синхронизацию контактов, в дополнение к ранее реализованным передаче файлов, синхронизации буфера обмена и автоподстановке одноразовых кодов.
  • iMessage и SMS реализованы благодаря протокольной документации erikwb и опыту проектов ancs4linux и BlueFerry; поскольку они распространяются по GPL, а Tether, по MIT, автор написал независимую реализацию на C++ по методу «чистой комнаты».
  • Сеть между iPhone и Linux защищена по протоколу mTLS с самого начала, устройства должны подтвердить связь перед обменом данными; автор также регулярно проводит проверки безопасности под условными названиями «Opus» и «Fable».
  • Автоподстановка одноразовых кодов работает через связку расширений для Zen Browser и Betterbird и переносит код из письма в поле входа автоматически, но только для этой пары приложений, для других браузеров и почтовых клиентов поддержки пока нет.
  • По словам автора, состояние bluetooth-интеграции на Linux в 2026 году остаётся «полным бардаком»: сбои без понятных причин, механизм, разрывающий соединение, и множество вручную обработанных частных случаев.

Почему это важно

Apple не даёт пользователям Linux официального способа получить свои функции Continuity, синхронизацию буфера обмена и файлов, iMessage, SMS, уведомления и автоподстановку одноразовых кодов с iPhone. Единственная близкая альтернатива, KDE Connect, ориентирована на Android и, по словам автора Tether, не решает именно эту задачу и не планирует решать её в будущем; прогон трафика через прокси на Mac автор сам пробовал и назвал это не решением, а неприятным обходом. Tether закрывает именно этот пробел, причём главная часть, доступ к iMessage и SMS, стала возможна благодаря документации erikwb и опыту проектов ancs4linux и BlueFerry, а для этой части автор написал собственную независимую реализацию на C++, чтобы не связывать MIT-лицензированный Tether с GPL-кодом.

Кому это важно

В первую очередь, пользователям Linux, у которых на руках iPhone: именно для них Tether закрывает разрыв, который раньше требовал либо Mac под рукой, либо неудобного прокси через него. Также это интересно тем, кто уже пользуется KDE Connect на Android и хотел бы похожего уровня интеграции для iPhone. Отдельная аудитория, разработчики, работающие с протоколами Apple: erikwb, ancs4linux и BlueFerry уже накопили знания о протоколе, а автор Tether прямо предлагает вынести реализацию в отдельную библиотеку (рабочее название, libtether), чтобы её могли использовать проекты с любой лицензией.

Как это применить

Судя по описанию автора, для работы Tether нужна связка iOS-приложения и Linux-демона tetherd; на сегодня инструмент умеет синхронизировать буфер обмена и контакты, передавать файлы, принимать iMessage, SMS и уведомления с iPhone, а также автоматически подставлять одноразовые коды подтверждения. Последняя функция требует конкретной связки приложений, браузера Zen Browser (форк Firefox) и почтового клиента Betterbird (форк Thunderbird), в которые автор добавил свои расширения: почтовое находит код в письме и передаёт его браузерному, которое подставляет код в поле входа. Для других браузеров и почтовых клиентов такой автоподстановки пока нет. В тексте не указано, где именно распространяются код и приложение и на каких дистрибутивах Linux или версиях iOS Tether тестировался.

Можно ли доверять

Автор указывает на конкретные меры безопасности: сеть между iOS и Linux использует протокол mTLS с самого начала работы над проектом, а устройства должны заранее подтвердить друг друга, прежде чем смогут обмениваться данными. Дополнительно автор описывает регулярные раунды проверок на баги и уязвимости, в тексте они названы «Opus», а затем «Fable», без пояснения, что это за инструменты или методика. Код распространяется по лицензии MIT, то есть открыт для проверки; часть про iMessage и SMS написана заново, по методу «чистой комнаты», а не скопирована из GPL-проектов ancs4linux и BlueFerry. При этом в источнике нет ни данных о числе пользователей или установок, ни имени автора, ни сведений о том, где именно распространяется код, судить о масштабе использования и независимой проверке проекта по этому материалу нельзя.

Риски и подводные камни

Сам автор говорит, что полностью воссоздать Continuity на Linux невозможно, Tether закрывает лишь то, что технически осуществимо. Автоподстановка одноразовых кодов работает только со связкой Zen Browser и Betterbird; пользователи других браузеров и почтовых клиентов этой функции пока лишены. Реализация iMessage и SMS построена на документации erikwb и опыте проектов ancs4linux и BlueFerry, сама Apple нигде не упоминается как источник или партнёр. Bluetooth-часть автор прямо называет проблемной: сбои без понятных причин, механизм, разрывающий соединение, и множество вручную обработанных частных случаев, по словам автора, состояние bluetooth-стека в 2026 году остаётся «полным бардаком». В тексте нет данных о числе пользователей, статистике установок или тестировании на конкретных дистрибутивах и версиях iOS, оценить масштаб и стабильность работы Tether в разных конфигурациях по этому материалу нельзя.

«Я не получаю ничего от того, что люди пользуются этим инструментом, кроме удовлетворения от осознания, что созданное мной полезно.»

— автор Tether