• 4 Posts
  • 31 Comments
Joined 1 year ago
cake
Cake day: June 9th, 2023

help-circle
  • Everything Wordpress is heavily infested with that. However you don’t have to let it impact you – it kind of looks to me like they pressure commercial vendors to put their stuff under the GPL if they’re wanting to offer a free version, so there’s a robust ecosystem of actually-FOSS tooling for it. My experience has been that it’s always worked pretty well in practice; you just have to keep your nope-I’m-not-paying-for-your-paid-version goggles firmly affixed. (Also, side note, GPT does an excellent job of writing little functions.php snippets for you to enable particular custom functionality for your Wordpress install when you need it.)


  • Wordpress 1,000% (probably coupled with WooCommerce but there are probably some other options)

    I honestly don’t even know off the top of my head why you would use anything else (aside from some vague elitism connected to the large ecosystem of commercial crap which has tainted by association the open source core of it) – it combines FOSS + easy + powerful + popular. You will have to tiptoe around some amount of crapware in order to keep it pure OSS though.






  • Almost as if the whole endeavor is a ridiculous counterproductive waste of time.

    It would be possible to implement a “slur filter” on the reader’s side, that automatically redacted a configurable list of bad words from any comment on any instance… but I suspect that the percentage of people who would enable it, and the general community feedback on it, wouldn’t be what the person who made the decision wants to hear. Doing it on the sender side provides a convenient pretense of “I’m doing a good thing here” because it prevents that feedback.



  • As much as I love Fetterman, I’m with the Republicans on this one. It’s the same reason you can’t curse in court, you have to stand up at the appropriate times and outwardly agree to show seriousness for the proceedings, etc: We’re here for a super important reason. Whole people’s lives will be changed based on what we do here. Take it seriously or GTFO.

    I get that Fetterman is huge and wearing a nice suit every day would genuinely be a hardship for him, but there has to be some kind of solution that doesn’t step us one step closer to fistfights and drunk congresspeople on the floor. I don’t think MTG should be able to yell and be generally awful, I think Boebert should get in some sort of trouble that a private citizen wouldn’t get in for being publicly a drunken tramp, and I think everyone in congress should still have to wear suits. It’s important, take it seriously.


  • You shouldn’t have to… as I understand it, if it’s showing up on your server, that means your server authenticated it. Given the general flakiness of all this software and Lemmy in particular, I wouldn’t put too much reliability on that, but that’s the theory.

    If you do want to double-check it yourself, I know partially how to do it. You don’t have to get the key from the database; it’s probably simpler and safer to get it from your user’s JSON. Here’s a super-basic script to dump a fediverse endpoint’s contents:

    import requests
    import json
    import sys
    
    def fetch_and_pretty_print(url, headers=None):
        # If headers are not provided, set default to fetch ActivityPub content
        if headers is None:
            headers = {
                'Accept': 'application/activity+json',
                'User-Agent': 'Fediverse dump tool via @mo_ztt@lemmy.world'
            }
        
        try:
            response = requests.get(url, headers=headers)
            response.raise_for_status()  # Raise an exception for HTTP errors
    
            # Try to parse JSON and pretty print it
            parsed_json = response.json()
            print(json.dumps(parsed_json, indent=4, sort_keys=True))
            
        except requests.RequestException as e:
            print(f"Error fetching the URL: {e}")
        except json.JSONDecodeError:
            print("Error decoding JSON.")
    
    if __name__ == '__main__':
        fetch_and_pretty_print(sys.argv[1])
    

    If I want to validate your comment, I would start by getting your public key via your user’s endpoint on your home server. I could save that script up above as fetch, then run python fetch https://lemmy.mindoki.com/u/Loulou, and in among with a bunch of other stuff I would see:

        "publicKey": {
            "id": "https://lemmy.mindoki.com/u/Loulou#main-key",
            "owner": "https://lemmy.mindoki.com/u/Loulou",
            "publicKeyPem": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArRwWZneP9efCrsymHDE2\nsJAHojjxE4A2Q3Hquwt7s/HPTAi3gKP7NKCRSH7XVPtGhieJdtDeoLMkitvZXCUX\nS1pZArTYihuLeOwbB+JrAHZpWr1sYpazspUPvl3MhDAOOCCAnSeqsMNPNd8QX1Tf\nN/3Bp4PRVmp9E968L61h93L5N3B7VxZ37kbzKFXrhmU6qFQbAoVQvHtojCD6WqR2\nMb84eJy5QBN+0SjvGR8LRE0iJZiwYvVXKNoEyOqr4Fw8YnELi3TYbfxX++0uXw97\ne+/rFgaa/QVCSopUbHkuX/ZfjzCdBAI+aqXsbmYLgdxdRDHur0k53aCh3u0t/IDL\nHQIDAQAB\n-----END PUBLIC KEY-----\n"
        },
    

    I don’t know off the top of my head how you could navigate your way to the fediverse JSON for your comment, or how to verify its signature once you find it (I tried to get the post by dumping your user’s outbox and the lemmy_support community’s outbox, but neither of those worked the way I expected it to), but that all might be a helpful starting point. I know that according to the docs, anything that was created by your user and then federated is supposed to be signed with that key so that other servers can authenticate it.


  • Here’s quite a good overview. The short answer, I think, is that the signature is embedded into the JSON object representing the post / upvote / whatever, which then gets passed around server-to-server (and each server checks the signature against the original server’s TLS certificate). It’s not something you can get your head around just by asking a couple simple questions but it’s a pretty fascinating design when you get your head around it.


  • This commentary is reminiscent of the radical right’s reactions to the Ruby Ridge incident of 1992, an 11-day standoff in Idaho between federal agents and the family of Randy Weaver, a Christian fundamentalist affiliated with the far-right white separatist movement. The standoff resulted in the deaths of Weaver’s wife, son, and a federal marshal.

    Dude… Ruby Ridge was a big deal because the FBI shot Randy Weaver in the back while he was lifting the latch to his shed to see his son’s body, and then kept shooting at him as he and his family was running back to his cabin, hitting and killing his wife while she was holding their baby. It was a huge deal for a lot of people, Randy Weaver was found not guilty of any “siege-related charges” and awarded $3 million in damages, and the DOJ extensively revised their policies as a result.

    Craig Deleeuw threatened to kill the president, and then according to the FBI and I see no reason to doubt them, was pointing his weapon at the FBI when they shot him. Whatever Randy Weaver did to create the Ruby Ridge confrontation, I don’t think it’s fair to compare the reaction to that to the reaction to this.




  • Yah dude. I am a super newcomer to Lemmy, but when I started up it was refreshing that it was cerebral and different and marched to its own beat. I never even really noticed how much image / meme content had taken over reddit, until I saw a place without it. I didn’t agree with the tankies. But, there are tankies! This place is great. It’s different and authentic. I like it. And now, over the last couple of months I’ve been carefully attempting to keep my subscriptions on Lemmy to the factual stuff and eliminate from the feed stuff that’s memes or “Hold my whatever, I’m going in!” just kind of time-wasting.

    And yet, even in the “good” parts I’ve been seeing this takeover of people who are… I don’t even know what they’re doing. I think it’s just sort of this dopamine loop that they want to come on and yammer. I’m sort of assuming that this is maybe a problem only on the big instances, that may be better on Mastadon or on more form-a-community type of instances? Maybe? I hope so.



  • Naturally, the operator called in the operating-system developers. They found the bandit ghost jobs running, and X’ed them… and were once again surprised. When Robin Hood was X’ed, the following sequence of events took place:

      !X id1
    
      id1:   Friar Tuck... I am under attack!  Pray save me!  (Robin Hood)
      id1: Off (aborted)
    
      id2: Fear not, friend Robin!  I shall rout the Sheriff of Nottingham's men!
    
      id3: Thank you, my good fellow! (Robin)
    

    Each ghost-job would detect the fact that the other had been killed, and would start a new copy of the recently-slain program within a few milliseconds. The only way to kill both ghosts was to kill them simultaneously (very difficult) or to deliberately crash the system.

    Finally, the system programmers did the latter… only to find that the bandits appeared once again when the system rebooted!

    -Classic hacker bedtime story



  • The town was infested with some sort of radioactivity from underground that was hurting people. I had to crawl underground, through these super-tight tunnels deep under the earth with things getting more and more evil as I went, until I was able to track the source of the radioactivity to a giant monster that lived back up on the surface (via the tunnels) in an abandoned barn. I had to fight the monster, but I could fly inside the barn. I ripped its head off, but every time I did, it was just like a big rubbery mask and a new head grew back, until I figured out how to do it fast enough that it wouldn’t have time to pop a new head out. When I did that, the real head came out: Tux the Linux Penguin.

    That broke the immersion enough that I woke up, all amped up from adrenaline from fighting the monster.



  • Chicane, Autumn Tactics:

    Hiding summer’s age no more
    No more leaves in summer sky
    Turning dark on empty car lots
    When summer was my only friend

    Bruce Springsteen, The Ghost of Tom Joad:

    He pulls a prayer book out of his sleeping bag
    Preacher lights up a butt and he takes a drag
    Waiting for when the last shall be first and the first shall be last
    In a cardboard box beneath the underpass

    You got a one-way ticket to the promised land
    You got a hole in your belly and a gun in your hand
    Sleeping on a pillow of solid rock
    Bathing in the city aqueduct

    Well the highway is alive tonight
    Where it’s headed, everybody knows
    I’m sitting down here in the campfire light
    Waiting on the ghost of Tom Joad

    Jefferson Airplane, Young Girl Sunday Blues:

    One side of me is filled with brightness
    No matter what I might say
    The days I made with waterfall colors
    Could not make you stay
    If rain falls down the side of my face,
    Must be a rainy day.

    Emmylou Harris, Deeper Well:

    Well, I did it for kicks and I did it for hate
    I did it for lust and I did it for faith
    Did it for need and I did it for love
    Addiction stayed on tight like a glove
    So I ran with the moon and I ran with the night
    And the three of us were a terrible sight
    Nipple to the bottle, to the gun, to the cell
    To the bottom of a hole of a deeper well
    Well
    Lookin’ for the water from a deeper well
    Well
    Lookin’ for the water from a deeper well
    I rocked with the cradle and I rolled with the rage
    I shook those walls and I rattled that cage
    Took my trouble down a dead end trail
    Reachin’ out a hand for a holier grail
    Hey there, mama, did you carry that load
    Did you tell your baby 'bout the bend in the road
    'Bout the rebel yell, ‘bout the one that fell
    Lookin’ for the water from a deeper well

    Sonic Youth, Unmade Bed:

    Look who’s come back home again
    Loser looking for his lucky break
    This time he says he just needs a friend
    Ain’t on the run he ain’t on the take

    Can you unlock this door babe
    Will you just undo the chain
    Will you take your time before you
    Mix up love, his love and pain

    Loneliness lays down his head
    Wants to get you high, better take it now
    A man like that’s like an unmade bed
    Stained eyes searching for another way out

    And, of course, Butterfingers is endlessly entertaining