lurch

joined 2 years ago
MODERATOR OF
[–] lurch@sh.itjust.works 1 points 9 minutes ago

that makes them want to kill you even more tho.

[–] lurch@sh.itjust.works 7 points 1 day ago (4 children)

Classic British Museum 🤣

[–] lurch@sh.itjust.works 1 points 2 days ago

Sometimes they just build a giant house and didn't buy it tho.

[–] lurch@sh.itjust.works 1 points 3 days ago

Ideally, yes, but new human cultivated forests are often less dense than old natural ones. They'd have to plant more and account for forest fires and pests, human cultivated forests are more susceptible for.

It can work out, but you can't trust anybody to do it right.

[–] lurch@sh.itjust.works 1 points 3 days ago

I'm sure trump thinks they are in a contest about conquering the world. He admires putin, but at some point they will fight for the same thing. Probably a country.

[–] lurch@sh.itjust.works 1 points 4 days ago (3 children)

if trees are grown again, it's technically correct. however, soot, dust and smell are the real problems.

[–] lurch@sh.itjust.works 3 points 4 days ago* (last edited 4 days ago)

The tariffs thing could be incorrect. It's just speculation. It could be that more product will be sold in other regions instead and just US Americans paying more for less.

However, it fails to mention the culprit (trumpistan) and that this is neither the fault of the victim (Greenland) nor the fault of anyone rushing to their help.

[–] lurch@sh.itjust.works 2 points 4 days ago

on the earthquake island.

near the tsunami ocean.

godzilla bless

[–] lurch@sh.itjust.works 5 points 5 days ago (1 children)

The Ford Mollari

[–] lurch@sh.itjust.works 18 points 5 days ago (1 children)

Unilever has their dirty fingers in everything. Really tough to boycott, but I think I'm in the clear.

McDonald’s would have been tough for me personally, but they changed the delivery radius for all their restaurants last year, seemingly to specifically exclude me. So that took care of itself.

[–] lurch@sh.itjust.works 3 points 5 days ago (1 children)

Which is weird, because the actual nazis would have killed or enslaved them for not being German.

[–] lurch@sh.itjust.works 3 points 5 days ago

I think it would be much easier to end the war if putin was dead, because his successor didn't start this war. It's not "their" war.

99
Learn flute in 25 minutes (sh.itjust.works)
submitted 1 month ago* (last edited 1 month ago) by lurch@sh.itjust.works to c/Risa@lemmy.dbzer0.com
 

Image descriptionmeme picture of the Kataan probe that installed a lifetime of memories in picards head captioned: Learn flute in 25 minutes, with this one simple trick.

 

Photo of flower pot with red houseleek and some grass coming out between the remnants of the Edelweiss that died a few months ago and a fresh hole with a single acorn in it.

6
submitted 3 months ago* (last edited 3 months ago) by lurch@sh.itjust.works to c/einfachposten@feddit.org
 

ELECOM Trackball EX-G Modelle haben ein neues Chipset, das (mal wieder) die Anzahl Buttons falsch meldet. Für einige Chipsets gibt es dafür schon Workaround-Code im Linux Kernel. Wenn dein extra Button nicht geht, kannst Du seine Clicks mit diesem Beispiel C-Programm (kompilieren mit gcc) detektieren und vllt. irgendwas machen:

#define _GNU_SOURCE
#include <fcntl.h>
#include <unistd.h>
#include <linux/hiddev.h>
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
#include <spawn.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <signal.h>
#include <errno.h>
#include <string.h>

void sigio_handler(int signo) {
    // Dummy handler to "nudge" the process
    //write(STDERR_FILENO, "SIGIO received\n", 15);
}

int main(int argc, char *argv[] /*, char *envp[]*/) {
    if (argc != 2 ) {
        printf("Usage: %s /dev/usb/hiddev?\nWhere \"?\" is a number.\n", argv[0]);
        return 1;
    }
    int fd = open(argv[1], O_RDONLY);
    if (fd < 0) { perror("open"); return 1; }
    char *xdotoolargs[] = { "pxdotool", "key", "p", NULL };
    extern char **environ;
    struct hiddev_event ev;
    int buttonNr=0;
    bool pressed=false;
    int status=-1;
    pid_t pid;

    // Set up dummy SIGIO handler
    struct sigaction sa;
    sa.sa_handler = sigio_handler;
    sigemptyset(&sa.sa_mask);
    sa.sa_flags = 0;
    if (sigaction(SIGIO, &sa, NULL) < 0) {
        perror("sigaction");
        close(fd);
        return 1;
    }

    // Set ownership and signal
    if (fcntl(fd, F_SETOWN, getpid()) < 0) {
        perror("fcntl F_SETOWN");
        close(fd);
        return 1;
    }

    if (fcntl(fd, F_SETSIG, SIGIO) < 0) {
        perror("fcntl F_SETSIG");
        close(fd);
        return 1;
    }

    // Enable asynchronous I/O
    int flags = fcntl(fd, F_GETFL);
    if (fcntl(fd, F_SETFL, flags | O_ASYNC) < 0) {
        perror("fcntl F_SETFL O_ASYNC");
        close(fd);
        return 1;
    }

    int ev_size = sizeof(ev);
    while (1) {
        ssize_t n = read(fd, &ev, ev_size);
        if (n < 0 || n < ev_size) {
            if (errno == EINTR) continue; // Interrupted by signal
            perror("read");
            break;
        }
        if ( ev.hid == 589829) {
            if ( buttonNr == 1) {
                if ( ev.value == 1 ) {
                    if (!pressed) {
                        // extra button mouse down
                        printf(">>> HID event: button=%d, type=%d, value=%d\n",
                                            buttonNr,  ev.hid, ev.value);
                        fflush(stdout);
                        if(status==0){
                                waitpid(pid, &status, 0);
                        }
                        status = posix_spawn(&pid, "/usr/bin/xdotool", NULL, NULL, xdotoolargs, environ);
                        pressed=true;
                    }
                } else if(pressed) {
                    // extra button mouse up
                    //printf("<<< HID event: button=%d, type=%d, value=%d\n",
                    //                        buttonNr,  ev.hid, ev.value);
                    //fflush(stdout);
                    pressed=false;
                }
            //} else {
            //   // some other button with same event ID the kernel/X/wayland can handle (up or down)
            //   printf("--- HID event: button=%d, type=%d, value=%d\n",
            //                           buttonNr,  ev.hid, ev.value);
            //   fflush(stdout);
            }
            buttonNr++;
        } else {
            // more buttons or mouse events, but with different IDs
            //printf("    HID event: button=%d, type=%d, value=%d\n",
            //                        buttonNr,  ev.hid, ev.value);
            //fflush(stdout);
            buttonNr=0;
        }
    }
    if(status==0){
        waitpid(pid, &status, 0);
    }
    printf("Read all. Closing.");
    close(fd);
    return 0;
}

//edit: fixed read stalling after a while; launching xdotool as an example directly

249
submitted 5 months ago* (last edited 5 months ago) by lurch@sh.itjust.works to c/memes@lemmy.world
 

"is for me?" meme with devil horns and stinger added, captioned:

Me: *opens window to let moisture out after shower*

The wasp: (is for me?)

 

France will participate in a capital increase by satellite operator Eutelsat to the tune of €717 million (US$826 million) to help the company finance the expansion of its constellation of low-orbit communication satellites and create a sovereign European alternative to Starlink.

 

In den Osterferien ist eine aus Afghanistan stammende Familie nach Indien abgeschoben worden. Die früheren Mitschüler der beiden Söhne sind geschockt - und gingen in Frankfurt auf die Straße.

 

"Kotzt ihnen ins Gesicht": Auch die Generalstaatsanwaltschaft Köln sieht nach Peter Fischers deftiger AfD-Schelte keinen Anfangsverdacht für eine Straftat. Die Beschwerden gegen Eintracht Frankfurts Ex-Präsidenten hatten keinen Erfolg.

5
submitted 9 months ago* (last edited 9 months ago) by lurch@sh.itjust.works to c/dreams@redlemmy.com
 

I dreamt that I was loading the dishwasher. I had the top compartment full. My brother was making all sorts of food and was in the living room now. There was an unpacked frozen pizza with tomatos and cheese on the stovetop ready to be put in the oven. But then, for some reason, I had a tiny stainless steel grate that I needed to mount to the bottom to the dishwasher instead of the normal basket that goes there. I had some sort of plug for it, but it wouldn't fit. I asked my brother in the living room and also mentioned the pizza not yet in the oven. He gave me a weird kitchen scissors that might work as a plug and said it wasn't time to put the pizza in the oven yet. I found 2 holes for plugs at the bottom of the dishwasher, but the scissors wouldn't fit. My brother was standing beside me. Then I noticed and mentiomed the scissors aren't even dishwasher safe. Before I woke up, I was thinking, we need asbestos arsenide plugs, beacause those would withstand the environment in the dishwasher, but were they safe to put with dishes? (I don't think asbestos arsenide is a thing IRL.)

 

I dreamt that humans, dragons in humanoid form and atrifial liforms called seekers also in humanoid form lived together in harmony, but it wasn't always that way. Seekers were historically designed to kill dragons. An ancient device had caused a virus to revert a seekers programming to kill dragons again.

The white haired but youthful, human looking dragon queen lives in the water of some sort of open air temple with water cascades and bonsai trees. A seeker girl in abody suit of rough synthetic material wants to warn the dragon queen about the reprogrammed seeker, but the dragon queen swims around in some sort of ritual with chants and whenever the girl is about to talk, the queen jumps down a water cascade and dives into the next pond. There are dragons on the sides of the ponds and standig atop the small waterfalls. They laugh about the seeker girl being confused. The girl carries a chunky device that has a flat base and some sort of saucer shaped thing above it and contains some sort of proof. With that thing she has trouble following the queen. She still jumps after her into the next pond.

There is a scene cut like in a movie. A human guy and a tall seeker guy with a grey fedora stand in a room in a high rise building. The window behind them shows cityscape. They are detective partners at a crime scene that is mostly out of view. Suddenly the seekees face becomes some sort of flat blue display and shows a circle of text in ancient glyphs slowly rotating and changing in bright colors. The human looks at it and jokes it's just like the old times. The seeker replies he recieved an old signal from a compromised seeker.

The scene switches back to the water temple. The seeker girl stands at the bottom of a big cascade finally delivering the news to the queen. On the other side in the background is a cityscape.

Then I woke up.

 

Beim Scrollen werden ähnliche Ereignisse in der Geschichte der NSDAP durch welche der AfD ersetzt.

Screenshot NSSAP

Screenshot nach scrollen ersetzt durch AfD

 

I dreamt there was a hard cover comic book for children and also for abuse victims, called Is It My Fault. It shows various situations in which something bad happened, with speech bubbles. The reader had to guess whether it's the main characters fault and it had a little built in feature whete you had to fold a lens and a tiny piece of film out and peek through it to see if you guessed correctly.

 

I dreamt I waa a youth at a sunny ancient port town (but in modern day) with stone docks made from white matte stone with grey and yellow lines. It wasn't busy only few crates stood around. No ships in sight. We had the super funny idea to let a goat loose with a GPS tracker. We did it. Then I woke up worrying the goat might eat farmers crops and precious garden flowers on it's way to the mountains and realized it was just a dream and there is no goat on the lose 😅

view more: next ›