Admiral Patrick

I’m surprisingly level-headed for being a walking knot of anxiety.

Ask me anything.

Special skills include: Knowing all the “na na na nah nah nah na” parts of the Three’s Company theme.

I also develop Tesseract UI for Lemmy/Sublinks

Avatar by @SatyrSack@feddit.org

  • 82 Posts
  • 1.56K Comments
Joined 3 years ago
cake
Cake day: June 6th, 2023

help-circle



  • Basically the only thing you want to present with a challenge is the paths/virtual hosts for the web frontends.

    Anything /api/v3/ is client-to-server API (i.e. how your client talk to your instance) and needs to be obstruction-free. Otherwise, clients/apps won’t be able to use the API. Same for /pictrs since that proxies through Lemmy and is a de-facto API endpoint (even though it’s a separate component).

    Federation traffic also needs to be exempt, but it’s not based on routes but by the HTTP Accept request header and request method.

    Looking at the Nginx proxy config, there’s this mapping which tells Nginx how to route inbound requests:

    nginx_internal.conf: https://raw.githubusercontent.com/LemmyNet/lemmy-ansible/main/templates/nginx_internal.conf

        map "$request_method:$http_accept" $proxpass {
            # If no explicit matches exists below, send traffic to lemmy-ui
            default "http://lemmy-ui:1234/";
    
            # GET/HEAD requests that accepts ActivityPub or Linked Data JSON should go to lemmy.
            #
            # These requests are used by Mastodon and other fediverse instances to look up profile information,
            # discover site information and so on.
            "~^(?:GET|HEAD):.*?application\/(?:activity|ld)\+json" "http://lemmy:8536/";
    
            # All non-GET/HEAD requests should go to lemmy
            #
            # Rather than calling out POST, PUT, DELETE, PATCH, CONNECT and all the verbs manually
            # we simply negate the GET|HEAD pattern from above and accept all possibly $http_accept values
            "~^(?!(GET|HEAD)).*:" "http://lemmy:8536/";
    

  • It kinda can but not as easily.

    Back when I just downloaded everything under the sun on Napster/Limewire, I’d make highly curated CDs of known-hits as well as ones where I sprinkle in some random songs that were in my downloads that I’d never heard before. Not exactly the same, but I’ve definitely listened to a CD I made and been like “what’s that song?! I love it!”.

    Plus, for road trips, everyone would usually burn a CD or two of their own to swap in (a precursor to “pass the aux cord”) so there was some novelty/variety.






  • Granted, I don’t think the instance level URL filters were meant to be used for the domains of other instances like I was doing here. They’re more for blocking spam domains, etc.

    e.g. I also have those spam sites you see in c/News every so often in that block list (e.g. dvdfab [dot] cn, digital-escape-tools [dot] phi [dot] vercel [dot] app, etc) , so I never see/report them because they’re rejected immediately.

    During one of the many, many spam storms here, it was desired by admins for those filters to stop anything that matched them from federating-in instead of just changing the text to removed on the frontend. So it is a good feature to have. Just maybe applied too widely.

    Though I think if a user edited their own description to include a widely-blocked URL (no URLs are blocked by default), they’d just be soft-banning themselves from everywhere that has that domain blocked.

    If a malicious community mod edited their communities’ descriptions to a include a widely-blocked URL, then yeah, that could cut off new posts coming in to any instance that has that domain blocked (old posts and the community itself would still be available).

    All of those would require instances to have certain URLs blocked. The list of blocked URLs for an instance is publicly available from the info in getSite API call, so it wouldn’t be hard to game if someone really wanted to. Fortunately, most people are too busy gaming the “delete account” feature right now 🙄.


  • Admiral Patrick@dubvee.orgtoFediverse@lemmy.worldGhost of Lemm.ee?
    link
    fedilink
    English
    arrow-up
    69
    ·
    edit-2
    3 days ago

    The person who cross-posted it was probably definitely from your local instance.

    You only ever interact with your local instance’s copy of any community, even remote ones. If the community is to a remote instance that is either offline or since de-federated, there’s nothing that prohibits you from interacting with it*. Because lemm.ee is no longer there to federate out the post/comments to any of the community’s subscribers, only people local to your instance will see it.

    *Admins can remove the community and, prior to it going offline, mods can lock it. But if an instance just disappears, you can still locally interact with any of its communities on your instance; the content just won’t federate outside your instance.





  • I wouldn’t recommend it to anyone in real life. There are parts that are just way too jarring.

    Ugh, this. And I hate that it’s like that.

    Like, I used to have my instance open to whoever to sign up. My guiding principle was to have a place that wasn’t overrun with [parts that are just way too jarring]. Holy shit was that an impossible goal to do alone so I shuttered it up and now it’s just a private instance / testbed for Tesseract.

    My friends knew I was active on Reddit, and that was fine. But I wouldn’t tell them I spend any amount of time here because what they would see going to almost any random instance will probably definitely not look good on me by association despite that I’m nowhere near that.

    So if anyone shares this desire, I am open to un-mothballing my instance, rebranding, and taking on new admins and re-opening to users who also want a place like that.


  • I haven’t been to Odysee for a good while, but is it still Rumble-lite?

    I only learned of Odysee because I saw a video linked to it here and went directly to the video. When I saw it had embed code, I added support in Tesseract UI so the videos would play from the post. Then I went to the main site and saw the front page full of rightwing nutjob rants and vaccine skepticism and was like “nope”. Had I saw that beforehand, I wouldn’t have added embed support, but the work was already done so I left it in. That’s basically why I refuse to add embed support for Rumble.

    Wondering if ownership/leadership/policies have changed since about 2 years ago when I wrote the embed components for it and last interacted with it.