Tether: iMessage, SMS, etc. on Linux

zackbartel.com

280 points by zackb 6 days ago


pzmarzly - 7 hours ago

> Personally, I think putting an interoperability protocol implementation behind a copyleft license is a little unfortunate!

Huh, haven't thought of it. Just relicensed ancs4linux to MIT.

voakbasda - 7 hours ago

Mega-kudos to the author for chipping away at the wall around Apple’s garden.

I have had a iPhone for 15 years, and I have only ever been able to back it up with iTunes on windows (as I will never buy a Mac).

Apple’s refusal to provide interoperability borders on criminal. I wish there was a better option.

ThinkBeat - 5 hours ago

This is all made possible by broker app on the iPhone / (or other device) to send data back and forward. When I first read the headline I thought it would integrate directly into the Apple ecosystem without needing middlemen which would have been crazy impressive since I believe it is or very near entirely impossible.

blinkingled - 4 hours ago

As a KDE Connect user for a few years I know it doesn't always work without reconnecting especially with sleep cycles on the phone and the laptop but it does everything on Android at least - clipboard sync, notifications, sms, calls, remote control and media playback control. Must be iOS restrictions that made the author go through the admirable effort.

IOW Linux ecosystem has better vertical integration without any direct ties with Android :)

harryposner - 4 hours ago

The linked blueferry doc is excellent. Back in 2020, inspired by a comment on HN, I looked into writing a proxy to send and receive iMessages on Linux through an iPhone connected with Bluetooth Message Access Profile (MAP). I was able to send and receive messages, but I ran into the problem mentioned in the doc in the "Group metadata side channel" section: the bMessages in the inbox included the message originator, but didn't include the recipients, even though the MAP standard says that it "shall" be included (see page 22). I didn't know about ANCS, so it didn't occur to me to use that channel, and without any way to tell what context a message was sent in, I couldn't do threading, so I decided it wasn't worth pursuing.

The group messages were the biggest problem, and that's what made me give up, but there were some other issues:

- Shared links showed up as "Website: Short description (example.com)" and didn't include the URL

- Images weren't shown at all

I might take a look and see how blueferry handled those limitations.

[blueferry doc] https://github.com/erikwb/blueferry/blob/main/PROTOCOL.md

[inspiration] https://news.ycombinator.com/item?id=23411520#23413394

[Bluetooth MAP standard] https://www.bluetooth.com/specifications/specs/message-acces...

amluto - 2 hours ago

What’s the security story behind the iMessage integration? Why is iOS willing to send iMessage data over Bluetooth to a device that hasn’t convinced Apple that it’s a validly authenticated device signed in as the same user?

pkulak - 2 hours ago

Sorry if this is obvious, but does it use the same thing OpenBubbles does? What's nice about that is that it just hooks directly into Apple's servers, so doesn't require a connection to your phone or anything.

VladVladikoff - 3 hours ago

Whoa this is so much better than having to send it via a BlueBubbles bridge, if this actually works I’m donating! Awesome project!

hollow-moe - 4 hours ago

Very nice, I'll say Continuity can absolutely be implemented fully on Linux though ! I think the thing we'd need very first is an actual communication "backbone" that would span bluetooth,wifi-direct and even mesh networks like Tailscale or smth. Continuity is partly based on AWDL, Apple proprietary implementation of Wifi-Direct to allow high speed local inter device communication and allow things like Sidecar with an iPad. Then we could implement protocols over that backbone to implement actual useful applications.

cpressland - 3 hours ago

For me this is the last piece of the puzzle keeping me on macOS. I’ll give it a proper test later and if it works as described I’ll be ordering a Framework 13 Pro.

dadoum - 4 hours ago

Oh, so it requires an app, which isn't even available on older iOS versions… that's such a shame, I wanted to try it out on my iOS 17.0 iPhone. (and I thought it was just using the official Apple ways used for macs, so that's a small disappointment)

SoftTalker - 6 hours ago

Wasn't there another iMessage clone for Linux/Android a few years back and they got a C&D from Apple? Or maybe Apple just blocked their service?

lxe - 5 hours ago

Oh, fantastic, thank you. If this allows me to drop files onto an iPhone without me having to open an app, that would solve a lot of my issues. I use localsend right now and although I really love it, it still requires me to always keep the app open on the phone.

mcswell - 3 hours ago

Dependencies: ...wayland-client...

Nuts, I'm on xfce, and don't intend to switch over until it's necessary.

Why is Wayland necessary for this?

jonathanwallace - 5 hours ago

This is incredibly timely as I moved my first choice personal computer to full time linux this week (and am a long time iPhone user who loves the autofill as well). I'll be happily contributing when I find an itch that needs to be scratched.

rafram - 3 hours ago

Does clipboard sync work when the iOS app is in the background?

Pretty cool stuff either way!

aeon_ai - an hour ago

Doesn't Tether lack end-to-end encryption, making it less secure for private communications?

teo_zero - 5 hours ago

This is for iPhones only. Do I assume correctly that the issue is solved for Android, instead?

kvemkon - 6 hours ago

Is there an easy way to share iOS clipboard to Linux directly using local WiFi without going through any cloud?

Edit: clarification in my reply later in this thread: https://news.ycombinator.com/item?id=49492003

BatchJob - 4 hours ago

You cant really complain about the ecosystem if you insist on using an iPhone. What you think is interop is viewed by Apple as hostile and if they could find a way to sue you for it they would.

porridgeraisin - 6 hours ago

I use whatsapp primarily, so no tethering needed, but SMS of course for one-time passwords and the like. I didn't want to open my phone for that. So I had a coding agent write an android background app for me that listens for SMS and forwards it to a discord server, and side loaded it. So now I get a discord notif on my laptop with the OTP.

desireco42 - 5 hours ago

I have Google Fi, we always had messages.google.com to even get calls, which I never did. Convenient especially because I write longer messages.

Never felt superiour over others for it.

select1 - 6 hours ago

[dead]

2Gkashmiri - 7 hours ago

I don't know.

What's a feature not in KDE connect that the writer wanted and it didn't have?

They could always submit a pr.

Beeper exists you know....

I have a question. It's fine to build for your own self but is it okay to release something in public when the environment is a moving target and you are just a one-man team keeping it afloat?

Wouldn't it be better to go behind established FOSS products and not reinvent the wheel when you don't have to?

I understand no one can tell you how to or why to do certain things but there comes a time, when youw want to help, not build the next temple os and instead help manjaro or whatever is cool these days?