matrix-org / matrix.to

A simple stateless privacy-protecting URL redirecting service for Matrix
http://matrix.to
Apache License 2.0
961 stars 207 forks source link

Beeper as an app option #350

Open elsiehupp opened 2 months ago

elsiehupp commented 2 months ago

I use Beeper on a variety of platforms. Beeper's apps are mostly (all?) forks of the Element reference implementations, so they should support most of the same functionality.

I'm not sure what would be involved in adding Beeper as an option here, even if it's "below the fold" (as an "experimental" app).

Does Beeper need to register an URL handler with the system, or something? According to a comment on Reddit the URL handler for Beeper is riot://, but taking an element:// link from matrix.to and replacing the element:// with riot:// doesn't work in Safari or Firefox on macOS.

(To be fair, matrix.to doesn't seem to want to open Element Desktop from Firefox for macOS, either, and instead prompts me to download Element Desktop or open the link in Element Web. The element:// link does work properly in Safari, though.)

I can open a support ticket with Beeper, as well, and I will share a link to this issue with them.

t3chguy commented 2 months ago

Not speaking as a representative of the project as I have no idea on the actual politics but Beeper already tries to hijack the element uri handler and it isn't an open source app so not sure how positive it is for the ecosystem to promote

image

elsiehupp commented 2 months ago

URI handlers seem to be implemented on a browser level or an operating system level. That is, URI handlers are kind of like file-type associations. For instance, mailto: and tel: are usually configurable. I'm pretty sure you should be able to configure your browser to open Element instead of Beeper if you have Element installed.

(I'm not sure why you're getting a URI-handler prompt in your browser when I am not. I tested in Firefox and Safari but not any Chromium derivatives, so that might be the difference there.)

As for the difference between idk a matrix: URI handler and an element: URI handler, and why Beeper might try to use the latter, the various Beeper clients are hard forks of the (MIT-licensed) Element reference implementations, so they may simply have not thought to change that.

And as for Beeper not being FOSS… that's a separate philosophical question, but the Matrix Foundation has chosen to use permissive licenses rather than copyleft licenses for its reference implementations, so non-FOSS hard forks of the reference implementations are at the very least consistent with the Matrix Foundation's chosen licensing strategy. 🤷🏻‍♀️

This Issue is partially a placeholder for eliciting a response from Beeper's development staff and asking them to make URI handlers work properly and reliably in the first place.

So if you'd like to see some action on this front you could file a bug report using Beeper's in-app reporting system and include a link to this GitHub issue nagging them to act on it. 😉