DevOps as a profession and software development for fun. Admin of lemmy.nrd.li and akkoma.nrd.li.

Filibuster vigilantly.

  • 1 Post
  • 43 Comments
Joined 1 year ago
cake
Cake day: June 10th, 2023

help-circle

  • Honestly it depends on what your experience level with running software is and what you want out of it. For me things have been rather smooth sailing as I already host a number of things for myself (so know all about domains, DNS, servers, reverse proxies, docker, etc.) and I am the only one actively using my instance right now so (local or admin-level) moderation isn’t really an issue either.






  • Nope, not from a DNS level. All the posts you are reading are cached by whatever instance your account is on. Basically the only thing served from the remote instance is full-size media uploaded to that instance. Even thumbnails are served from whatever instance you use. Mastodon/Akkoma/etc can be set up to even proxy full-size media for users, which is a feature I imagine will eventually make its way into Lemmy. Your best bet at the moment would be to find an instance that defederates those you don’t want to see (or run your own and do so yourself). I know “blocking” an instance is an often-requested feature, so that may end up a feature in Lemmy itself at some point.










  • First, it’s worth noting that ActivityPub is built on ActivityStreams which is in turn built on ActivityVocabulary. It is necessary to read all of these to have a full understanding of what the stuff in AP actually means. It is also worth reading up on LDN and JSON-LD as those are also used in the spec.

    I think you are right in AP being a bit more oriented toward social media in the vein of twitter or facebook and less like reddit, but really a lot of it comes down to how an AP implementing server interprets the objects it receives. I’m not sure if anywhere near this level of customization would be possible if everything spoke pure AP (which does have a client-server interface, not just a server-server federation interface) rather than your clients interacting with bespoke “lemmy” or “mastodon” or whatever APIs.

    As far as lemmy goes I think they may have extended the objects a little, as there is a lemmy NS included in results, which is what most implementations including big ones like Mastodon do to introduce new fields (such as content warnings in the case of Mastodon) to things like a Note. Lemmy adds info like postingRestrictedToMods, matrixUserId, and moderators.

    As far as objects:

    • A community is a Group.
    • A post is a Page with an audience of the community and an attributedTo of your user (to the community and special public endpoint).
    • A comment is a Note that is inReplyTo its parent (post or comment), to the special public endpoint and CCing the author of the parent and the community.

    As far as actions, I am less sure because it is less easy to inspect without reading the lemmy code or setting up something to get federated to, but AFAICT:

    • Upvotes and downvotes are Like and Dislike
    • Create is used when you as a user want to make a post in a community
    • Announce is used when a post actually gets made in a community
    • I think Announce is used for other things and might explain some of how comments work as well, as a post seems to live on the community instance but a comment seems to live on your instance.


  • Every time you visit any website someone will know your IP address. Unless very specific measues are taken that “someone” will be whoever operates that website.

    Lemmy has features (I think they are optional) that will tell you that you viewed a post and how many new comments a post has from the last time you viewed it, that necessarily requires tracking. I cannot say whether turning this feature off disables the tracking or just doesn’t show you that information without digging into the code, this is only local to your instance.

    There is also likely to be some level of logging at the server and any reverse proxy layers that could, with effort, be used to figure out what you looked at with reasonable accuracy. Again, this is only on your instance. Some instances may not create/store logs, but it is usually important to do so to troubleshoot if things go wrong, especially with as immature a software project Lemmy is.

    Any time you visit a website you are putting a large amount of trust in the site operator, your ISP, your DNS provider, etc. if state actors are in your threat model.


  • I understand that urge, and in my ideal world it would a whole new option of “Suggested” feed rather than a replacement for “All”, like how that other site has a /all but defaults to a more curated selection of content that has broad appeal (and IIRC even some things are excluded from /all over there). For now I’d just take being able to filter the “All” view of the most objectionable stuff that I only want to allow users of my instance to explicitly opt into by seeking out those sorts of places.

    Also, unless your instance is purposely seeking out and subscribing to every community in every instance the moment they are created “All” is never going to actually be all posts from everywhere… I imagine larger instances may approach that, but I am certain there is a ton missing from smaller instances like my own.