After almost a year of hard work implementing ActivityPub support on Lemmy, it is finally done! Anything that works here on dev.lemmy.ml, also works over federation between different instances (with one notable exception, community mods have to be on the same instance as the community for now).

Before we consider federation ready for production, some more testing is needed. And that’s where you come in: go to our test instances enterprise.lemmy.ml, ds9.lemmy.ml and voyager.lemmy.ml, and try things like:

If you notice any bugs, please report them on Github, as comments on this post, or in our Dev Chat on Matrix. Please keep in mind that our code of conduct also applies to the test instances.

The more you test, the sooner we will feel confident to enable federation on dev.lemmy.ml. Happy testing!

@nutomic
admin
creator
814d

We have released a new lemmy version (v0.8.7), which fixes all the federation issues reported so far. The test instances are already updated, so give it another try :)

@gregf
1021d

Congratulations to the dev team! You guys rock. I love the names of the test instances too. :)

@nutomic
admin
creator
520d

Thanks :)

I went and created an account on the Enterprise (I also created accounts on the other two instances later to test out the interactions). I then subscribed to !main@enterprise.lemmy.ml and !main@voyager.lemmy.ml. On my account page, it shows both communities as just “main”:

This is somewhat confusing by itself, but there is another problem: both of the links point to !main@enterprise.lemmy.ml, instead of one to Enterprise and one to Voyager.

Another small issue (or is it intentional?): Suppose that I’m a Voyager user viewing the !main@enterprise.lemmy.ml community. I click on “Create a Post”. I would expect that if I don’t select a different community, it’ll post the post to !main@enterprise.lemmy.ml. But actually, the just “main” community is selected, which means the post will go to !main@voyager.lemmy.ml if I don’t select anything else. (If I select “enterprise.lemmy.ml/main” from the community list, it posts there just fine, but it’s confusing and slightly inconvenient to have to select it instead of it being already selected.)

Interactions between Enterprise and DS9 are somewhat odd, but I assume it’s supposed to be that way? (DS9 lists Enterprise as “linked instance”, but Enterprise doesn’t list DS9 as “linked instance”. Voyager lists both as “linked instance”.) I’ll tell you what I saw anyway:

  • DS9 user can send a message to Enterprise user, i. e. “Message sent” appears to the sender, suggesting that everything went fine — but the Enterprise user won’t receive any message. (In my opinion, it would be better in such cases to have some error message to the sender so that they don’t think their message has been received.) Messaging between Enterprise user and Voyager user, as well as between DS9 user and Voyager user, works just fine.
  • DS9 user can vote and comment on Enterprise user’s post, as well as post posts, on Voyager instance. But Enterprise user won’t see these comments, votes and posts. Voyager user will see them.
  • !main@enterprise.lemmy.ml community looks different when viewed from each of the three instances. Compare (all three pictures sorted by New): from Enterprise (it’s quite odd that the Pingu picture is shown there, because I actually posted it to !main@voyager.lemmy.ml), from Voyager, and from DS9 (“Can see this?” post was made by DS9 user, but it isn’t shown to the Voyager user, and the other two posts also are completely different…).
@nutomic
admin
creator
317d

Thanks, I opened some issues for these problems: https://github.com/LemmyNet/lemmy-ui/issues

The last problem with federation between DS9 and Enterprise is because Enterprise has DS9 on the blocklist, so they cant federate. I think the problem here is that they used to federate before we enabled the blocklist, so you can still see some communities or posts from DS9 on Enterprise.

https://github.com/LemmyNet/lemmy/issues/1269

Dessalines
mod
admin
217d

Thanks for these, I’m getting to work on some of them now.

@lps
821d

Is there any way that one day Lemmy could work with Yunohost? It would likely be the fastest way to get more servers up and running for non-technical users. It makes setting up services almost a point and click affair once the initial Yunohost server is installed.

https://yunohost.org/#/apps

@nutomic
admin
creator
421d

No idea, best ask them. We are busy with development and dont have the time to package Lemmy for all kinds of distros.

@RawHawk
519d

Now that federation is done. Is the development of interacting with other federated instances like mastodon and peertube is also done or theres some more work there .

@nutomic
admin
creator
819d

No, this is only federation between Lemmy instances. Federation with other software is a lot more difficult, and will take quite some time.

@halo
220d

How are instance backups affected by federation? I assume no difference, but I just want to be sure.

@nutomic
admin
creator
320d

Correct, no difference at all.

Future Me
221d

Go to our test instances enterprise.lemmy.ml, ds9.lemmy.ml and voyager.lemmy.ml, and try things like: - post, comment and vote

Tbh, I don’t even understand how it’s supposed to work. If I open enterprise.lemmy.ml, it (unsurprisingly) doesn’t accept my login data from lemmy.ml. How can I post, comment, and vote?

@nutomic
admin
creator
621d

You need to make a new account on there (each instance is completely independent as far as logins are concerned).

Future Me
321d

So why not test federation on lemmy.ml, with the account I already have? I guess federation features are only activated on enterprise.lemmy.ml, ds9.lemmy.ml and voyager.lemmy.ml so far? That wasn’t clear to me.

@nutomic
admin
creator
520d

Yes, we want to test the federation more, cause if something goes wrong, we can easily wipe the data on those test instances and start from zero. Once we enable federation here, there’s no going back.

@pingveno
321d

Hmmm, so how does that work with federating with instances with different moderation policies, especially around banning? I’m thinking about setting up an instance to have a home for Reddit’s /r/moderatepolitics in the Fediverse. We would presumably want to federate with lemmy.ml, but it’s unclear to me whether we would get a chilly reception given the more lefty inclination of the Lemmy community.

@nutomic
admin
creator
421d

We havent discussed that so far, but I see lemmy.ml federating with any instance that follows our code of conduct (or something to the same effect). Also, the mod tools in Lemmy are really primitive so far, and for the beginning we are only going to federate with a small number of manually approved instances. Once mod tools get better, we can think about opening it up more.

ufra
220d

this is interesting and I guess a basic tenet of federation is that a pornvids instance could federate with capitalismforever and neither have any connection to lemmy.ml. Will that work?

@nutomic
admin
creator
321d

Or wait, you mean they are completely independent? Of course that works, lemmy.ml isnt referenced anywhere in the federation code. So you can make arbitrary networks between instances.

ufra
221d

cool yes, i guess activity pub is the only dependency. very nice.

@nutomic
admin
creator
321d

Activitypub is a protocol, think of it like HTTP between servers. And then forgot that comparison, because Activitypub runs on top of HTTP and is completely different.

ufra
221d

Nice. I wonder how difficult it would be to create a digitalocean type droplet to spin up a new instance in one click.

@nutomic
admin
creator
720d

I have no idea about digitalocean, but in fact we are thinking about offering managed Lemmy instances ourselves in the future.

ufra
320d

that’s great… I remember a user who wanted to host their classes on an instance but maybe didn’t want to do devops, might be a good case

Dessalines
mod
admin
217d

My https://fanonwave.ml test instance is digitalocean, I just used the ansible deploy install and it worked great.

ufra
117d

Thanks, I will try that or linode a little later.
what size droplet did you use?

Dessalines
mod
admin
217d

The smallest, I think 500 MB. Lemmy’s super light on resources.

@nutomic
admin
creator
121d

You mean A - B - C with no connection between A and C? I think it should work fine in theory, but no clue how it would go in praxis. Definitely needs testing.

ufra
021d

deleted by creator

@Echedenyan
220d

Were nomadic profiles (Hubzilla style) thought for a near future?

@nutomic
admin
creator
320d

No we havent thought about that, but feel free to open an issue.

A noob question: how can I subscribe to a remote community? Tried to type something like !testcom@ds9.lemmy.ml in the search on enterprise.lemmy.ml, but the search found nothing.

Dessalines
mod
admin
220d

Enterprise has ds9 blocked, to test that out. DS9 is wide open, and voyager has them both in allowlist.

Works now! Found a bug - seems my display name isn’t federated, it shows just @pioneer@voyager.lemmy.ml.

Dessalines
mod
admin
217d

Hrm… I coulda swore we had that worked out. It might need to wait a day, and then you make another comment to do a user re-fetch, we don’t push user details unfortunately.

@nutomic
admin
creator
117d

Where exactly?

@nutomic
admin
creator
417d

Did you change your displayname after that post was federated? In that case its expected, because Lemmy only refetches user profiles every 24 hours at most.

Yes, exactly. Ok great, so I’ll check in 24 hours then, thanks.

@nutomic
admin
creator
317d

It is only refetched if some federated action is happening after that interval, so you will have to do something like vote, or create/update a post or comment to trigger the refetch.

Checked and it works now. Thanks guys!

Another bug - when clicking on the full nickname @pioneer@voyager.lemmy.ml here - https://ds9.lemmy.ml/user/44, it redirects me to the incorrect address https://ds9.lemmy.ml/user/https://voyager.lemmy.ml/u/pioneer.

Dessalines
mod
admin
217d

I just fixed this now.

Works now, thanks!

Dessalines
mod
admin
217d

I’ll add this as a bug too.

Dessalines
mod
admin
110d

deleted by creator

Lemmy Announcements


Feel free to announce new communities here.

Other than that, this is reserved for admin use only.

  • 0 Users Online
  • 6043 Subscribers
  • 287 Posts
  • 1896 Comments
  • Meta
  • Modlog