Dev and Maintainer of Lemmy Userdata Migration

  • 8 Posts
  • 54 Comments
Joined 2 months ago
cake
Cake day: April 20th, 2024

help-circle

  • Oh, neat! Never noticed that option in the Wireguard app before. That’s very helpful already. Regarding your opnsense setup:

    I’ve dabbled in some (simple) routing before, but I’m far from anything one could call competent in that regard and even if I’d read up properly before writing my own routes/rules, I’d probably still wouldn’t trust that I hadn’t forgotten something to e.g. prevent IP/DNS leaks.

    I’m mainly relying on a Docker and was hoping for pointers on how to configure a Wireguard host container to route only internet traffic through another Wireguard Client container.

    I found this example, which is pretty close to my ideal setup. I’ll read up on that.





  • Zu den bei Dieben besonders beliebten Warengruppen in Supermärkten und Discountern zählen Spirituosen, Tabakwaren, Kosmetikprodukte, Rasierklingen, Energydrinks sowie Babynahrung und Kaffee. Fleisch, Wurst und Käse werden ebenfalls häufiger genannt.

    Meist handelt es sich um Gelegenheitstäter, für mindestens ein Viertel der Diebstähle sind professionelle Täter verantwortlich, die bandenmäßig agieren.

    Bei Lebensmitteln kann ich die Position zumindest so halbwegs nachvollziehen, aber bei Spirituosen, Tabakwaren, Kosmetikprodukte, Rasierklingen, Energydrinks und Kaffee? Warum steht das Menschen zu, wenn als Folge des Diebstahls lediglich die Preise für die ehrlichen Kunden angezogen werden?

    Ladendiebstahl ist kein nobler Protest oder gar eine Art Freiheitskampf gegen das böse kapitalistische Problem. Wenn das überhandnimmt, schließt einfach die lokale Filiale. Die meisten Diebe finden es wohl einfach geil, sich auf Kosten anderer zu bereichern. Fuck all of you, I got mine. Höchst asozial.


  • “Wir brauchen eine Debattenkultur, in der Menschen ihre Meinung und ihre Sorgen sagen können, ohne in Schubladen gesteckt zu werden”

    Menschen über ihr Tun, ihr Wirken und nicht über ihre Herkunft zu definieren, dafür stehe für sie das neue Grundsatzprogramm der CDU, so die Politikerin.

    Ah, die werte Frau Sekmen will also eine Debattenkultur ohne Schubladendenken und wechselt deswegen zur Union. Die sind ja bekanntlich sehr aufgeschlossen, besonders was populistische Positionen, Korruption und Verquickung von Mandat und persönlichen Interessen angeht.

    Das hat garantiert nichts damit zu tun, dass die Ampel, und damit auch die Grünen, bei der nächsten Wahl höchstwahrscheinlich nicht mehr die regierende Koalition sein wird und die werte Frau Sekmen sich bessere Chancen zum Ausbauen von politischer Macht und persönlicher Bereicherung bei der politisch quasi gegenläufigen Union erhofft.

    Das Landeslistenmandat, welches durch grüne Stimmen errungen wurde und durch welches sie nicht direkt gewählt wurde, niederlegen? Ne, Anstand ist out, gerade als neuer Parteifreund von Scheuer lernt man ja recht schnell, dass das Fußvolk lediglich ein zu manipulierender Pöbel ist, auf dessen Rücken man so viel besser nach mehr Macht grabschen kann.



  • To add to this:

    We have to differentiate between physical and cybersecurity.

    Are you more likely to physically lose your smartphone you carry around with you all day than your full ATX desktop standing in your office? Yeah.

    But let’s consider the consequences for a moment.

    If someone physically stole your desktop, chances are that at least a part of your data isn’t encrypted, the boot sequence probably isn’t (at least completely) verified, and your OS is wide open. There is little to no real isolation in most desktop setups. Once somebody managed to gain access to your system, it is outright trivial to steal your browser sessions, modify commands or run some code, at least in userland.

    Physically stealing your smartphone is easy. But a modern smartphone is usually protected by verified boot and a password+fingerprint/Face ID combo. Unless you take active steps to compromise the security of the phone like rooting/jailbreaking it, disabling verified boot or disabling the passcode, it’s pretty hard if not near impossible to gain access to your data or modify it in a harmful way. If you visit an infected site or install an infected app, the damage is usually confined to that app’s data and the data accessible to it by permissions you probably had to allow to be set in the first place.

    Now that’s speaking to your usual bad actors and usual setups. Exceptions, as always, make the rule. As soon as a sufficiently motivated and technically able actor with access to 0-day exploits, like a state actor, targets you for some reason, all bets are off. But even in this case, due to the advanced verified boot chain on most modern smartphones, those exploits rarely have the ability to survive beyond a reboot.




  • We have to vote for the people who will admit to that and get rid of them. The U.S. is going to have to choose between a leader who tries to install good people to run the government and one who intends to install people bent on dismantling the government and giving loyalty to the leader alone.

    I largely share your thoughts. I honestly expected Biden to at least be prepared enough to counter the usual Trump tactics of making things up and using strong words to impress his base while deflecting blame or critical questions.

    Instead, we got Trump basically having free rein to appear strong with simple (and wrong) answers to complex questions, twisting the truth to support his positions and straight up lying and deflecting when finally confronted with something.

    I’m not a big fan of Biden, but IMO he’s the obvious, rational choice out of two candidates way past their prime - if you’re into rationality over the antics of a con artist.

    But this isn’t a fair fight, and Biden isn’t the showman Trump managed to be today. Biden was barely audible and mostly on the defensive while appearing weak, Trump was the opposite of that. I can’t imagine any Trump voter switching teams after the debate, but I can image more than a few more emotionally motivated democrats second guessing their choice.


  • Sure, the code is completely client-side, simply clone it. If you’re running into CORS problems due to the file:// scheme Origin of opening a local file, simply host it as a local temporary server with something like python -m http.server .

    This is due to the two ways most instances validate Cross-Origin requests:


    • Sending Access-Control-Allow-Origin: * (allow all hosts)
    • Dynamically putting your Origin into the Origin header of the response to your requests by the backend

    file:// URLs will result in a null or file:// Origin which can’t be authorized via the second option, therefore the need to sometimes host the application via (local) webserver.


  • gespeicherte Posts/Comments sollten eigentlich mit übertragen werden, sofern vorhanden. Kann allerdings sein, dass Lemmy da beim Import manchmal bisschen was versemmelt. Da können die Tools leider nichts machen, im Zweifelsfall einfach erneut probieren. Du kannst dir auch mal im Editor bei meinem Tool oder in den heruntergeladenen Nutzerdaten (ist ne Klartextdatei) schauen, ob unter saved_posts überhaupt was exportiert wurde.

    Eigens erstelle Posts/Comments/PNs werden absichtlich nicht übertragen. Diese sind zum einen nicht Teil der exportierbaren user data, zum anderen könnte man das zwar technisch mit ein paar API-Anfragen pro Post/Comment zwar nachstellen, allerdings wären die Erstellungszeitpunkte dann jeweils die der Anfrage und nicht die originalen. Das ist meiner Meinung nach nicht Sinn der Sache und tut mehr schlechtes als gutes.







  • The whole point of this being a web app is to make it as easy as possible for the user to download/modify/transfer their user data. LASIM is a traditional app the user has to download and install, similar to a script this web app was developed to replace due to being too difficult to use for some users.

    The import functionality targeted by this API is additive and my app features a built-in editor to add, modify or remove information as the user sees fit. To achieve your stated goal, you’d have to remove anything except the blocked_users entries before importing, which my app supports, I added a wiki entry explaining the workflow in more Detail.

    I may add options to modify the exported data in some ways via a simple checkbox in the future, but I wouldn’t count on it. I’m always open for pull requests!



  • The export/import functionality is, yes. This implementation uses the same API endpoints, but the main reason for this existing:

    An instance I was on slowly died, starting with the frontend (default web UI). At least at the time, no client implemented the export/import functionality, so I wrote a simple script in Bash to download the user data, if the backend still works.

    Running a script can still be a challenge to some users, so I wrote a web application with the same functionality.

    It’s a bit redundant if we’re talking about regularly working instances, but can be of use if the frontend isn’t available for some reason.


  • The export/import functionality is, yes. This implementation uses the same API endpoints, but the main reason for this existing:

    An instance I was on slowly died, starting with the frontend (default web UI). At least at the time, no client implemented the export/import functionality, so I wrote a simple script in Bash to download the user data, if the backend still works. Running a script can still be a challenge to some users, so I wrote a web application with the same functionality. It’s a bit redundant if we’re talking about regularly working instances, but can be of use if the frontend isn’t available for some reason.