You can’t delete any text in comments or posts either - or at least not reliably, as any federated instance could choose to ignore deletions.
You should basically consider what you write or post here public, and probably public for good. But here’s the thing - same goes for the entire rest of the Internet as well, basically.
You should generally think similarly about anything you post anywhere on the internet that has open access. If it’s viewable anonymously, anyone could save and mirror it.
The only difference is it’s almost guaranteed on a federated platform.
I feel like, after over a decade of smartphones and snapchat and such, a younger generation needs to be thought better what putting content on the Internet means on a fundamental level, and those of us old enough to remember the more open web need to be reminded.
If you don’t want everyone to see it, and I mean everyone, then you shouldn’t put it online. For all intents and purposes, once you hit send, it’s now a part of the internet. You might get lucky and be able to remove it, but that’s the exception, not the rule.
Sometimes views on things change and maybe some picture or other content you posted now makes you a target in some way that it didn’t before. You don’t always know how things will change in the future and adding such a highly expected piece of functionality like deleting something you uploaded should probably be more highly prioritized.
adding such a highly expected piece of functionality like deleting something you uploaded should probably be more highly prioritized.
Let’s be clear that this problem has nothing to do with Lemmy or the Lemmy devs. This is not a problem of prioritisation and it is not something that can just be fixed.
This is a problem of ActivityPub and the nature of federated services. There is just no way you force a federated server to delete something. So while most servers are well behaved, others might not be. Such servers could be defederated but you need to detect such bad behaviour first.
The problem is not with Lemmy, it’s the whole Fediverse and ultimately also the Internet that works like this.
(the problem of a user uploading a photo and never posting it anywhere and wanting that to be deleted should be fixable though)
Yeah, that makes sense. I didn’t really have the full scope of the issue in my mind when I wrote my comment. Thanks for giving some extra perspective.
I agree with your core concept.
But this is a pretty wild flaw. The fact that even an admin can’t reliably delete photos from their own instance? That’s begging to be exploited by bad actors. What happens when it’s porn (whether kids or unconsenting adults)? It’s core functionality that you have to have.
If that’s the case then I need to say this: “Penis ass butt cock fart”
- @NineMileTower@lemmy.world, 2024
Never forget
Backed up on 3 cloud servers and 2 computers locally.
Not enough. We need a new voyager disc.
I didnt know about that. This is a bit scary to be honest, and the first time I feel a bit taken aback with lemmy
You also know that all votes are technically public and can be viewed by any instance admin that’s federated with the server a community is on, right? There’s no way to see that in the Lemmy UI at the moment but the data is there on the server.
The votes are directly visible from Kbin for users as well.
Only upvoting Lemmy users are visible on Kbin, downvoting Lemmy users are not listed.
There’s no way to see that in the Lemmy UI at the moment but the data is there on the server.
Actually, they’re adding it into the UI for admins. And they’re letting mods see to.
https://github.com/LemmyNet/lemmy-ui/issues/2320
Rather than do anything to try and protect this data or obfuscate it in any way, they just decided “fuck it”.
And that’s frankly worrying. I truly don’t think people understand why Reddit didn’t let mods see that information. The avenues for abuse here are innumerable.
It’s not really possible to have an upvote counter without storing who voted, so your instance admin would always know
There are cryptographic methods to do this, but it’s probably not worth it to implement them for this.
Honestly, not implementing anonymous voting probably helps with preventing brigading, too. Reddit worldnews (around the api debacle began) became a nightmare of downvote bots towards anything that wasn’t “Israel = good” in any way, and so many spam articles upvoted to the surface from random, unverified sources.
Edit to add: threat of defederation towards communities allowing or encouraging this behavior would probably be better, though.
If there is abuse from a mod or an admin, you go somewhere else - either join another similar community or server or make your own.
Or in the case of abuse from mods, report them to admins (assuming admins are reasonable).
Remember, this isn’t reddit. You don’t have to live with the mods or admins, you can just stop going to that instance/community and find somewhere else.
Also ultimately being able to view votes is a way to combat abuse, as you can spot people who just down vote someone else constantly.
EDIT: Honestly confused about the down votes, someone would care to elaborate? :)
Anyone with a federated instance can view your votes. Anyone on Kbin can view your votes. There’s nothing “abusive” about viewing votes. It’s not private information.
Edit: Example… I’m an admin on my own instance…
I fully agree with you. My comment was just to say what you should do if you see abuse from mods and admins.
What type of metadata is on a server attached to posts, comments, votes and such?
I mean you could say the same thing about reddit - anyone could scrape reddit and save comments and stuff, even if you later delete them.
If someone can see something on their computer, they can save it and you won’t be able to take it away. I mean… it’s just how the internet works.
The difference is that things on Reddit were public because Reddit chose to make them available, while things on Lemmy are public because they have to be in order for the federated protocol to work.
I mean any social media is public - what do you mean reddit chose to make it public? It’s not like they could make it private, then you won’t see any comments or posts from anyone else or what? Not sure what that even would mean.
Let’s use voting on comments as an example:
When a Reddit user votes on a comment, the user’s client sends Reddit a message containing the information “User X upvoted Comment Y.” That information gets stored in Reddit’s database and is used to do things like increment the total number of upvotes (which everybody sees) and color the upvote arrow button orange (which only User X sees). Reddit knows the identities of everybody who upvoted the comment, but the public is only allowed to see the total sum.
When a Lemmy user votes on a comment, the user’s client sends their home Lemmy instance a message containing the information “User X upvoted Comment Y,” which that instance then forwards to the rest of the Fediverse so that all instances can get updated with the new information. Anybody who subscribes to the protocol (i.e., registers an instance) can read the message. The user’s Lemmy client may only expose the total sum of upvotes in its interface, but the whole list of users who upvoted the comment is available to the public as long as they have the right software to read it.
Ask the MPAA about that.
The deletion should federate across almost all instances, but there’s no guarantee and also someone will almost certainly one day set up an archive server that just listens to all activity on Lemmy like uneddit used to be for reddit.
That’s pretty much how everything on the Internet works, FYI. Lemmy is just upfront about it
Lemmy and other services built on ActivityPub work by sending content to every server that hosts a user who has subscribed to a community or another user. Those servers could be anything from vanilla Lemmy hosted in a datacenter to an ad-hoc, informally-specified, bug-ridden, slow implementation of half of ActivityPub running on a jailbroken smart light bulb. Most of them will be online to receive a delete request and will handle it correctly most of the time, but that cannot be guaranteed.
Anything you share to the world that way is out in the world and cannot be reliably rescinded. Discussion groups implemented as email lists used to be popular, and the same was true there, but more so since there isn’t a mechanism intended to edit or delete an email message after it is sent. Something similar is true of anything that functions as a public website; a great many things published to the web are available from sites like archive.org, like old forum posts.
People can also screenshot what you post to Facebook. There are no controls for that.
an ad-hoc, informally-specified, bug-ridden, slow implementation of half of ActivityPub running on a jailbroken smart light bulb.
!subscribe
I don’t know if this works on Lemmy, but Reddit used to be like this and a solution was to edit your comment to different text first (something like ‘I like turtles’), wait about a week to allow the new text to be archived, and then delete it.
‘I like turtles’ wasn’t special, but makes it easy to scroll through your comments later when deleting things.
In Lemmy, your username will still show up with deleted comments, but in theory the edited text will replace the original comment you want to delete in archived views. This method doesn’t work with post images, though.
Someone correct me if I’m wrong here, please.
e: I’ve edited this comment thrice in 2 hours. Can anyone tell, and can you differentiate my 3 edits?
On the front end this still theoretically works, but it’s unclear when (if ever) reddit respected it on the back end. They might have an archive of all the text ever put on the site.
I don’t know how their backend works, but as a former db admin, it seems wasteful to maintain that many layers of change for every user. I would certainly do that in a mission-critical system, but for millions of pseudo-anonymous users, many of whom are shitposters, that would be an insane waste of server space.
That may be true, but I would be a bit surprised if there were a change-log like that.
e: keep in mind, systems like this don’t just work like that – you’d have to do extra work to build it that way on purpose. And you’d be doing that extra work, maintenance, and hosting for a user base who aren’t paying you, in a system you’re giving away for free, in Lemmy’s case.
Knowing how comments get changed is immensely interesting data. And if you design a system from the ground up, adding the functionality to save edits in the backend does not take much effort at all.
Sure, and I can see keeping the last edit (which it obviously does), but every edit? That seems ridiculous if only for the hosting costs.
Just assume anything you post here will be scraped by Facebook, Google, Amazon, the CIA and the CCP, regardless of what the Lemmy devs and admins let you do with your data.
It’s a public forum. Once you post something there’s no guarantee it will ever be gone.
And seemingly nothing is actually deleted, just hidden. Boost for Lemmy currently has an interesting bug where any comment, deleted or removed, can still be seen by simply selecting “copy post text” from the menu, as the API will return what was previously there.
PSA, if you want to delete a comment or post, be absolutely sure you first edit it to be blank.
It’s a different level of can’t delete though, because if you upload a photo but never even post it, it will still be up forever. And at least a working delete protocol exists for text
So… theoretically someone can use lemmy as their own image repository?
Those images are likely to be cleaned up in a future update though.
Unless, of course, you expect to rely on that permanence for archival purposes, in which case the internet is a fleeting, ephemeral fart in the wind.
Lemmy in general is filled with potential security and privacy holes. The threat surface is just too massive.
Not to mention it has a bunch of vulnerabilities in terms of just basic forum functionality. A rogue instance can very easily just hijack all sorts of federated content and force it into a certain state as desired. Especially if that content is old. There is not really any mechanism for tracking source authority for federated updates, and there are definitely already signs that this is getting exploited to promote certain content and fuck with vote totals IMO.
None of this really matters at this point because Lemmy is insignificant, but it kind of places a limit on how much Lemmy can be scaled before it just becomes even more of a cringe propaganda wasteland than it already is.
A rogue instance can very easily just hijack all sorts of federated content and force it into a certain state as desired.
I’m really not sure what you mean by this, can you elaborate?
There is not really any mechanism for tracking source authority for federated updates, and there are definitely already signs that this is getting exploited to promote certain content and fuck with vote totals IMO.
I’m not sure what you mean by “not any mechanism for tracking source authority”. Admins on their own instance are in control of what happens to the content and they’ll know if another site edits content or whatever as that is sent as requests in ActivityPub.
What are the signs you’re referring to?
Are updates authenticated? Or can I send an update to lemmy.world from 123.123.123.123 (which is not the IP address of feddit.de) that you have edited your comment to say “I don’t like pizza”?
If updates are not authenticated this really could be a big problem.
You cannot do that, no. Edits are authenticated in the sense that the request must come from the instance of the user.
Your admin could in principle send such a request for you. But then you’re talking about a malicious admin and then all bets are off. Obviously admins are in full control of everything on their own instance, including being able to edit their own users stuff. Not that any reasonable admin would do that.
Welcome to the hell of being a lemmy admin. There’s a reason why lemmy admins are fed up with the developers.
For context, there’s a lot that goes on behind the scenes when it comes to lemmy admin stuff especially in the matrix channels. There is a significant frustration and lack of confidence in the lemmy developers at this point. Even those who try to contribute to the project get eventually feeling pushed out.
Based on what I’ve seen on the public facing part of the developer side, I get the feeling this isn’t the kind of group that can build the kind of organization required to make this sustainable in the long run.
I’m just waiting for when Beehaw releases that they’ve given up on Lemmy and have created a new tech stack.
It’s open source. We don’t have to depend on the original developers.
If it gets too bad, someone can just make a fork.
Afaik people are just impatient with the developers and have different short term goals.
I mention a new tech stack because Beehaw brought it up as an option and a lot of people have commented on the difficulty of development in this environment.
That’d be disappointing. Rust seems like a great foundation.
Rust seems like a great foundation.
The fact that I know you’re referring to the programming language called “Rust” doesn’t make this sentence any less funny.
That sucks. As a 3rd party Lemmy app developer, I’ve only had positive interactions with the Lemmy devs. They’re even being proactive in communications.
Are they open to these discussions?
That’s kind of the impression I got but thought maybe I was just mistaken because I haven’t actually been hands-on with this project. That’s unfortunate to hear.
What about kbin, isn’t that entirely different software that can be developed to phase out Lemmy?
From what I heard Kbin’s developer is very inactive, so people started a fork called Mbin. Mbin might be alright?
Perhaps there’s starting to be a Lemmy clone/alternative? I think it’s named Sublinks
So what have they been doing to nuke the csam images, editing the database directly?
Often just nuking all image uploads made during a certain time period. Which is why old image threads in Lemmy have time periods littered with broken images.
I don’t understand why Lemmy needs to have a built-in image server at all. Reddit didn’t have one for the longest time and it was fine. Sure, I don’t think anyone would be particularly happy with going back to Imgur etc., but it doesn’t seem worth the trouble.
It’s a trade off for us.
You risk CSAM, and have to shoulder the storage costs.
But you also help to reduce link rot, as the images are kept on the site, rather than an external image host that might explode/go VC one day.
Some instances do just disable the image server part (I think lemm.ee used to and still only allows small images?)
I mean I don’t know why we need images at all, this stuff worked fine when it was just a BBS
Yes
Often they delete all images during the time frame of a CSAM attack, as that has been the only real feasible way to ensure images weren’t left behind. Though I think a few images have started using AI detection methods to remove images like that automatically (read up on that here and here), also Pict-rs now has a Log linking uploaded images to the user, so now images can be purged with the users.
Admins can purge posts manually which actually deletes them. Or use tools like db0’s lemmy-safety that tries to automatically search for CSAM and wipe it.
I think the problem here is the user didn’t finish their post which means the photo was uploaded but not associated with a post and therefore not purgeable that way.
That last problem was fixed in an older version of the software. If you upload, but don’t post, it will now be deleted after a time.
You can test this pretty easily by just leaving your browser open with an image uploaded and trying to post it later.
So when I accidentally uploaded those Death Star plans…
Don’t worry. There was some little minor thing about a vent but is reported as fixed since it was discovered.
That is crazy. He really did seem knowledgeable, and apart from the upload of a sensitive image, he really did what he could.
All those feature requests seem like good stuff.
And legally mandatory. Lemmy instances will get fined and shut down because of this if they do not sit up and pay attention.
And thankfully the Lemmy devs are racing to fix the problem!
Did you read the article?
Psst, I think they’re being sarcastic
They’re absolutely being sarcastic, the Devs’ response was rude and dismissive.
At least in the EU
What did we miss?
Or do.
If this comment gets to 150 votes in either direction, I’ll post my butthole.
You should do it anyway.
You need to earn it 😌
I’m already subscribed to your Onlyfans.
I’ve seen your butthole more than you have yourself.
Wife?
What exactly is a KYC selfie? Is it a photo of an ID card? I figured out WUI is WebUI. The author uses some strange acronyms I never heard before.
It’s very American that they can steal your identity with just one photo. My European state issued ID has data on both sides, so if someone would take a photo of it won’t be enough for anything. Also if you loose it you just get a new one and noone can use the old one for anything.
KYC is Business/Finance lingo - “Know Your Client”.
Yeah the fact that exposing one number/piece of information puts you at risk to a significant amount of other information about you being exposed is peak USA.
KYC is “Know Your Customer” aka identity verification. Usually it would be something like a selfie of you holding your ID, proving you are the person on the card. If you think getting your identity stolen from one picture is bad, wait until you learn about social security numbers. It’s a 9 digit number based on publicly available information about you that is incredibly easy to figure out, and are used as like the defacto way of verifying your identity in the US, when that was never its intended purpose.
Here is an alternative Piped link(s):
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source; check me out at GitHub.
KYC = Know Your Customer, a team I just learned recently. It’s primarily related to financial transactions, to make crimes like money laundering or terrorism financing harder. Up until relatively recently this was something that primarily happened face-to-face, and it doesn’t seem like good controls have been developed for online use.
I think some ID cards are single-sided, some are double-sided. One of the big problems is most Americans only have a state-issued ID, not a federal one, and the standards vary from state to state. They’ve tried to address this some with minimum standards for state IDs (mainly driver’s licenses) under a program called Real ID (enacted after 9/11 hijackers got state-issued IDs for false identities), but it was still optional for certain purposes, at least until recently. In my state for a long time when renewing your driver’s license it was optional to do the extra paperwork for a Real ID, but then there would be a note on the top that it was not valid for federal identification purposes, such as accessing certain government facilities or boarding an airplane. Since I have a passport I’ve never bothered with it, but it looks like this year getting a Real ID is mandatory when getting or renewing a driver’s license in my state.
Minnesota just extended it to 2025 again. I can’t get into federally secure buildings, but I can board a plane.
And until I can’t, I’m not going to. Part of me likes to think they haven’t mandated it yet because I’m holding out.
Which is really because of pure laziness than actual protest
It’s mostly a religious thing. The “left behind” Christians believe a federal ID is the “Mark of the Beast”.
Or try actually giving the real answer is that the federal government in the USA only have the powers granted to it by the constitution and identifying citizens is not one of them. Powers not granted to the federal government are what the states are for and many people including myself, an atheist, don’t want increased government surveillance and identification.
Probably “know your customer” selfie. Might be a picture of their ID, a picture of themselves, or a picture with both them and ID.
How exactly does Lemmy remain in compliance with laws regarding, for example, a user’s right to have all data associated with their account deleted (right to erasure, etc), or ensure that it is only kept for a time period reasonable while the user is actively using your services (data protection retention periods, etc)?
It’s not a big deal for me, just strange to think Lemmy of all places would be built to be so anti user’s data rights. The user is ultimately the one that decides what is done with their information/property, after all.
Lemmy is not a singular software or website, every instance on its own need to ensure compliance with their respective laws where they are domiciled.
But if instance A is domiciled in the EU, and the content mirrored to instance B in Zimbabwe, where no right to be forgotten exists, then a user of instance A can’t invoke any laws beyond what the local admin can control.
That’s amazing for high availability of content - it’s essentially mirrored in perpetuity - but a nightmare for privacy advocates. AFAIK there haven’t been any court cases related to deletion requests, so that’s still virgin territory.
redacted
GDPR does not depend on business size, there are just a few stricter requirements when you have more than 250 employees. But most of the GDPR still applies to my knowledge.
deleted by creator
Uhuh, suuureeeee. Tell that to any number of fines that has yearly been issued by my country’s GDPR oversight agency on ordinary citizens.
GDPR only applies when people file reports and when there are lawsuits. There’s literally no shortage of articles of people fined for GDPR violations, all people need to do is search for them.
When someone files the inevitable court case, please let me know. I have some admin behavior bullshit I will be willing to personally get in contact with the lawyers about that I think could help it.
And you don’t have to respond to them if you aren’t a business with more than 250 employees. It is in the regulation itself. All you need to do is search the text.
What company runs Lemmy? The answer is none. They are neither a small or medium sized enterprise as defined by the GDPR. Is collecting data part of their core business? No. https://commission.europa.eu/law/law-topic/data-protection/reform/rules-business-and-organisations/application-regulation/who-does-data-protection-law-apply_en
If your company is a small and medium-sized enterprise (‘SME’) that processes personal data as described above you have to comply with the GDPR. However, if processing personal data isn’t a core part of your business and your activity doesn’t create risks for individuals, then some obligations of the GDPR will not apply to you
You confuse things. Just read: https://www.compliancejunction.com/gdpr-guideline-for-companies-with-less-than-250-employees/
If you think that your company can simply ignore the introduction of the GDPR and continue as before, well, think again. Any company that is found not to be complying with regulations of GDPR can be penalized with heavy fines, or a company may have to suspend or stop processing personal data. In fact, many companies are not yet ready for GDPR because they figure this legislation will not influence their company.
DPR compliance is as important for companies with less than 250 employees as it is for large multi-national corporations. Consequently, many companies have chosen to appoint a Data Protection Officer (DPO) to address to the GDPR requirements or appoint a consultancy company to get their GDPR preparations started before delegating the role to an existing employee. For further information about this option, please refer to our article “Do Small Companies Need to Appoint a DPO under GDPR?”
Not sure how you think individual people can get fined under the GDPR but companies with less than 250 employees can’t. This is just about the only exemption:
Article 30 of GDPR is about a data inventory record and provides one potential exception for Organisations with less than 250 employees. This is a limited exemption which states that Organisations with less than 250 employees may be exempt from maintaining a data Inventory or record of processing activities. This Exemption is a minor exemption and only applies for Organisations with less than 250 employees in certain circumstances where there is no processing that is likely to result in a risk to the rights and freedoms of data subjects, the processing is only occasional, excludes special categories of personal data and personal data related to criminal convictions. The Full text of Article 30 is below. This limited exemption should in no means be interpreted by Organisations with less than 250 employees as an authorisation to ignore overall GDPR Compliance.
The lemmy devs are not a company, they do not have employees and they are not a registered business. It is a private hobby project run by donations. Lemmy.world, run by a person Ruud, again, not a business, they have no employees.
… At this point, you realize you are just grasping at straws, right? And ones you are seriously misunderstanding, given your previous less than 250 employees statement.
It’s not much, but I would advice you to read the second answer here, https://law.stackexchange.com/questions/29052/do-web-applications-as-hobby-projects-need-to-comply-with-the-gdpr , and seriously think about whether a site with many more users and much more personal data, specially those receiving revenue streams in the form of donations and with a team made up of more than one person https://team.lemmy.world/ , would be more or less likely to be accountable to the GDPR under a court of law than a personal blog.
Ruud should probably be getting in contact with https://autoriteitpersoonsgegevens.nl/contact/informatie-en-meldpunt-privacy-imp or on the telephone Monday to Thursday from 10 a.m. to 12 noon on 088-1805250 if he hasn’t already.
Because Federation is a terrible idea
But think of Reddit, they can delete a post but a bunch of archived websites will still have it. That doesn’t make Reddit non-compliant
Why is federation bad? It’s the only way to decentralize without having everyone scattered across millions of sites.
The days prior to 2014 are gone and for the most part, the overwhelming majority of people don’t want to register across dozens of sites. Everyone naturally gravitates toward massive content silos where they can get everything in one place.
It’s not bad in principle, but so far there hasn’t been an implementation that fully addresses all relevant issues.
For the health of the internet you want people scattered across millions of websites
And the need for regulations that limit active users isn’t a reason to contribute further to the problem
Preventing congregation weakens the effectiveness of disinformation and propaganda campaigns, and protects against bullying
OH NO,
Anyway…
I hate to use it, but this is why I still find imgur useful. It works.
Some stuff on Lemmy just doesn’t have a robust feature set yet. Especially around content moderation.
Dear aussie.zone users,
I can delete photos. Just give me the url of the photo you need killed and I’ll happily delete it for you. But also, don’t (accidentally) upload a nude.
Assuming it’s not a joke that flew over my head, how could any individual instance remove the images once replicated? Is the removal from the original instance cascaded?
It is my understanding that images are never federated and always reference from the source instance… But, the text is fully federated.
That’s not true, images are also copied over. This is also for efficiency reasons and to spread the load of the image out to the servers. Sometimes you’ll see images not being copied to your own instance, but that might be because your instance has a lower image size limit than the instance it was uploaded to originally.
This got me curious on how many images are on all Lemmy instances combined and how much storage it all takes up.
I can tell you that for lemmy.ca we use 778gb
Holy fucking shit balls. I contemplated seeing up an instance on a £5 VPS. Hmmmm, I think my scale is a bit off.
If it’s just a private instance, your storage needs will be way less. We use object storage, so it’s actually pretty cheap (like $5-10 a month iirc). We’re not storing that all on the server disk.
I’ve been considering a private instance myself so that’s good to know.
If you’re federating with everything by default, would that not also federate all the images and take up space that way? Or are images always just referenced from their origin instance?
Images come from their origin, but I think thumbnails are cached on your instance.
I’m on a private instance. My lemmy volume as a whole is currently 72G.
5 is probably a bit undersized and liable to cause pool timeouts. But like 15 should give you enough room depending on your provider’s affordability. You can always delete old data periodically.
I’m running a quite small instance and currently the full media storage is 234GB. That being said I pay $3 per month for the storage on Cloudflare R2 so that’s fine. You could get more for cheaper probably with a service like Backblaze B2.
The main database (non-media) currently takes up 36GB.
You can configure the maximum size of image you will federate. You could set it to essentially 0 and you will store like no images. Downside is you will have to fetch images from other instances, whose servers may not be close to you.
For reference, Feddit.dk has a 5MB image limit. My storage is only about ~60 GB
Huh, less than I expected.
deleted by creator
You can consider almost anything publicly posted to Lemmy as permanent. As I keep saying, please be careful.
I do think a way to automatically store the uploaded image urls and associated delete keys under your user is a necessary feature.
For personal image hosting I use postimage, but any external host that lets you modify/remove images under your account will do.
You can consider almost anything publicly posted to
Lemmythe internet as permanentFTFY
Excuse me, there was an internet beyond Lemmy?!? /s
I’m a developer of a Lemmy client. When you upload an image to a Lemmy instance, the instance returns a “delete token”. Later, you can ask the instance to delete the image attached to the delete token. So as long as you keep hold of the delete token for a specific image, you’re able to delete it later.
Lemmy-ui (the official frontend) will give you the option to delete an image again shortly after uploading it. However, it’s not possible to remove the image after actually creating the post, as the delete token associated with that post isn’t remembered anywhere on the Lemmy backend.
As for other Lemmy clients, YMMV. The client I work on (Mlem) deletes images if you remove them from a post before posting it, but has the same pitfall as Lemmy-ui in that it won’t delete the image if you’ve already created the post.
It would be possible to locally save the delete tokens of every image you upload, so that you can request that they be removed later. I don’t know of any clients that can do this yet, though (if someone knows of one, feel free to mention it).
Edit: clarity
as the delete token isn’t stored anywhere on the backend.
Backend of the app or the lemmy server? if it is not stored on the lemmy server then there will be no way to delete it even if the app stores the token.
Also using a singular token that never expires to modify user content sounds like a bad idea. image operations like upload and delete should probably tied to the user credentials.
Backend of the app or the lemmy server? if it is not stored on the lemmy server then there will be no way to delete it even if the app stores the token.
Apologies, I worded that badly. Lemmy uses an image hosting service called pictrs to manage the images you upload, which is largely separated from the rest of the Lemmy backend. Pictrs of course stores the delete tokens matching each image, but Lemmy doesn’t associate those tokens with the posts or comments they originated from as far as I know.
That makes sense, probably why image deletion was so hard on lemmy.
What happens when you share a link to an image? Does Lemmy just save the link or does it make a copy of the image?
The link. It only saves the image if you upload it directly, since converting it to a link, and embedding the link is how Lemmy handles image uploads.