Quick question - is there a way to format a link to a lemmy post so it opens through your home instance if you click it?
I notice often people might cross post something and say (for instance) cross posted from https://lemmy.ca/post/1916492 (random example which is the link that I just followed)
Is there any way to format a link like that so your home instance will just open it up so you're still logged in and can interact with it?
The link I followed goes to the Canadian lemmy server but it's actually looking at a post from beehaw.org, so it's extra useless ๐
Eg, if we could use the !technology@beehaw.org part with an ID? something like 6769052!technology@beehaw.org and our home instance could parse it to a link, with some tools to make it easy to add?
ok sounds like it's not a feature - the link format i suggested includes both the instance ID and the instance url, so it would be possible for your home server to use that to preprocess to a useable link. I wonder if there's a suggestions box ๐
I just got a PR merged today that might help with this. I'll start experimenting with it more over the next week or so.
Basic theory is that I can detect at least lemmy posts in the comment bodies and then rewrite those to your local instance. Primarily question is going to be performance, as remote network calls will be necessary.
oh that's awesome! yeah i can see it being an issue especially if that post isn't already federated. would be a great quality of life improvement though.
Ya if it's not federated already, I'm thinking the link will just remain as-is? Then comes the question of what happens after federation is complete? Ideally I'm thinking to do these rewrites as the comment containing the link gets federated so it only happens once, but that prevents updates... If I do it during someone looking at the post, then that becomes a lot of network traffic...
Still a lot to plan out initially and then propose to the devs for feedback... So it'll be awhile still.
Ya if itโs not federated already, Iโm thinking the link will just remain as-is?
yeah that seems entirely reasonable. it'll still be a big improvement in most cases. also even if it only happens as it federates initially it'll probably still catch many cases. is it possible to do a follow-up check only for links that weren't updated the first time? if you could store a cool-off and maximum number of tries that would probably keep it light and as functional as possible.
when serving posts with un-processed links that haven't been updated, and it hasn't been checked in the last 3 hours, re-check for a federated article and update. do this for up to 24 hours after the comment is posted, after that just give up? that gives it a few opportunities but doesn't continue to waste resources if it's unlikely the link will be resolved.
I'm not sure if it's easy to add columns to track those attempts though.
Yeah, I was disappointed that federation didnโt automatically log you in everywhere like Google across its services, or that you cannot just โlog in with [your home instance]โ like OAuth.
(See my other comment for pondering how this could work)
I even tried using my feddit.de credentials (with @feddit.de appended, of course) on another instance, assuming the website code would notice the @ and pass them on to feddit.de instead. @ChaoticNeutralCzech@beehaw.org
I got very confused and tried clicking all kinds of stuff, ending up with a dozen accounts across the Fediverse. I am not the only one who did, apparently.
Whatโs this postโs link for beehaw.org? I cannot see it at https://beehaw.org/c/fediverse@lemmy.world although some other posts are visible. I thought that I would see an โError: defereratedโ message if that was the case.
Hi there! Looks like you linked to a Lemmy community using a URL instead of its name, which doesn't work well for people on different instances. Try fixing it like this: !fediverse@lemmy.world
"Defederation" means that new posts aren't accepted from instance A to instance B; it doesn't (currently) generate an error if you try to access a community c@A on instance B.