Hexbear enjoyer, absentee mastodon landlord, jack of all trades

Talk to me about astronomy, photography, electronics, ham radio, programming, the means of production, and how we might expropriate them.

He/Him

  • 1 Post
  • 4 Comments
Joined 4 years ago
cake
Cake day: May 12th, 2020

help-circle
  • It’s been a while since I used Arch, but it was smooth sailing while I did. In general, gaming means Steam, and Steam ships with its own runtime so it is not really impacted by whatever library versions are packaged by the distro. Gaming is a very common use case. You’d have to pick a pretty obscure one to find something where it isn’t tested and somewhat streamlined.


  • I thought communities synced over instances so if an instance goes down, communities are still accessible. Is this not true?

    This is not true. ActivityPub (the protocol Lemmy instances use to speak with one-another) does not intend to be a redundant, distributed datastore. There are a few reasons for this. One is practical. It needs to be affordable to start a new instance. If the requirements for starting a new instance entail mirroring significant parts of the fediverse (a network of over 2 million users and 22,000 instances) it would be impossible for anybody to do it unless they were Google/Facebook.

    Another has to do with trust. A community has a home. That home is chosen (ideally) because the admins can be trusted. That instance is the universal source of truth for that community. If communities didn’t live on a specific instance, they would be vulnerable to various forms of hijacking. The home instance has the final say on who has permission to comment, and who has permission to perform moderator actions. None of these actions could be trusted if they weren’t cleared by the home instance first. Third party servers perform basic validataion against the currently known ban list / mod list / etc, but this could easily be spoofed by malicious instances.

    When an instance goes down, it is kind of similar to a netsplit on IRC. A queue of outgoing messages build up on your instance, which can be seen on your instance. Queues of messages queue up on other instances, which can be seen on other instances, but they won’t be synchronized until the destination instance returns (this depends specifically on which inbox the messages are directed towards - I’m not particularly familliar with the specific implementation in Lemmy).

    Finally (though not really), ActivityPub isn’t designed to be a broadcasting protocol. In the case of Lemmy, and other Reddit-like clones, it effectively acts as such, but it is intended only to send messages to the places they belong. If you post a message and the subscribers to that message only exist on 3 servers, that message ONLY gets sent to those three servers, even though there are thousands of servers in the network (at least, this is how it is supposed to work in theory).

    I might have some details wrong here. I’m more familiar with how Mastodon works (and how it fails) at this point after troubleshooting various problems on my instance.



  • On Discord, you cannot host your own server, and you cannot use any third party clients (without the threat of being banned).

    You can host your own Matrix server, either on physical hardware, or a generic virtual machine you can rent from any number of ISPs. There are over a dozen compatible third-party clients (though many lack full feature coverage).

    In summary, Discord is strictly a service. Matrix is a tool you can apply however you see fit.