For example in the screenshot (twitch clip), if you want to share on reddit you click the reddit button, but what button are devs supposed to put to share in the fediverse? Do they pick an instance of their choice?! Is this a weakness of a federated platform or what?
If it were me, when you click the “share to Lemmy” button, I’ll just show a drop down list of most popular instances, followed with a “Custom…” item at the bottom where people can type their instance’s domain name.
What you’ll likely see is the button links to a centralized service that sends you to the Lemmy instance you are logged into
So the button would never link directly to any Lemmy instance but some central server that sends you to your own instance.
Who would run that server? Probably the same guys who develop these button integrations.
Or it could just require you to set up your login on your instance in the settings and then work as a regular share button
Do they pick an instance of their choice?
Ultimately, some user account has to create a post to share something. Each account is tied to an instance, so: Yes.
Through federation, the post is visible to other users on other instances.
Not sure if you remember an extension called Tumblr Post, you’d log in and then you could share to Tumblr. I’m guessing that’s the only real way short of registering a protocol.
Probably uses the Lemmy API to detect which instance you’re logged into or you log in directly when prompted.
But the API is instance specific.
The only ways I see this working is one of:
- You’d have to type in your instance name upon tapping the button
- You could have a settings page that lets you set your instance name and then twitch (or whatever service you’re using would store that along side your other user data)
- It just assumes one of the most popular instances.
But without some central registry there’s no way to know what is your home instance.
Edit: something like what Android does for Activities could work as well. But not sure how to handle that on a PC. … In Android they could just start a generic Intent to view Lemmy and it could then launch whichever app you have installed to handle that intent.