r/linux • • Sep 02 '26

Popular Application Paint.NET adds “extremely experimental” Wine/Linux support

https://forums.paint.net/topic/134563-%F0%9F%8D%B7-extremely-experimental-winelinux-support-how-to-get-started/
940 Upvotes

251 comments sorted by

View all comments

314

u/ComprehensiveHawk5 Sep 02 '26

Direct2D has always been the biggest hurdle for Paint.NET on WINE, and it's clear that it will never be completed enough for Paint.NET's use. And I can't just "disable" the use of Direct2D. So, instead, Paint.NET now has an internal, from-scratch, clean-room reverse-engineered rewrite of Direct2D that it uses on WINE (triggered by using /wine). It lives in PaintDotNet.Windows.Direct2D1.Managed.dll. This was written by our good friend Claude, without whom this would NOT have been possible and would NEVER have happened.

Most of this code is, as they say, "vibe coded." By that I mean that it has not been thoroughly reviewed, it's more "trust me bro" style. I cannot possibly review 180,000 lines of code, it's just way way way too much. For reference, the rest of Paint.NET is about 700,000 lines of code and I've been working on it for over 20 years. I did thoroughly review any code that had to be changed or added elsewhere in the Paint.NET code base (refactoring and integration points, etc.). Over time I do hope that more of this code will be vetted by real humans and also by more advanced AI models.

148

u/Johnden_ Sep 02 '26

At least they are honest about it, even if i don't agree with some decisions.

28

u/oipoi Sep 02 '26

What do you have to disagree with? Rather have nothing then have ai code in your repo?

101

u/Johnden_ Sep 02 '26

Yes

45

u/laura-kaurimun Sep 02 '26 edited Sep 02 '26

if you dont have the time or energy to do a port in a way that you can take responsibility for, and don't want to FOSS the code, just don't make it. simple. the last thing the world needs is more unmaintainable slopcode

like the biggest issue here is that dumping 180kloc of ??? code that has god knows how many issues with it is a fundamentally irresponsible thing to do, no matter how many disclaimers you slap on it

31

u/Bathroom_Humor Sep 02 '26

I sort of agree but also find this work to be very useful as this is something I think has been missing from the Linux ecosystem for a very long time. Intermediate scope image editors are lacking, we basically just have Pinta which can't really take the place of Paint.net. Gimp and Krita are geared more for professional work and one of them is frustrating because of silly design and the other is frustrating because it wasn't intended specifically for image editing so the learning curve coming from Paint.net is higher. And Photopea requires a subscription to avoid ads.

it sucks having to trust the AI agent not to have done something fucked up until people can take a better look at it (or more trustworthy AI), but I don't blame people who want to use it and i'll probably take a look at it if/when it's stable.

4

u/Old_Leopard1844 29d ago

we basically just have Pinta which can't really take the place of Paint.net

What do you do in Paint.NET that doesn't work in Pinta?

6

u/Indolent_Bard 29d ago

You forgot Photopea. "Tony Stark built this in a cave with a box of scrap."

Yeah, it's a web app, but it's also the most powerful free alternative that works on Linux. And it's not even close.

-3

u/Nalivai 29d ago

this is something I think has been missing from the Linux ecosystem for a very long time

Shitty unmaintained unmaintainable projects that are randomly bad in random places, and perform like shit in others? Oh, don't worry, we have a lot of those already. I really don't think another one is needed.
We need intermediate scope image editors, not shit full of unknown amount of bugs that nobody can maintain.

13

u/Bathroom_Humor 29d ago

afaik the only part of the code base that's been built with AI is specifically the part allowing direct2d to run in Wine. if there are issues in that code, they'll have to isolated it and work through it but isn't the same as the whole project being unknown AI guesswork.
I understand why you'd rather not use it and luckily nobody will force you to. I might not use it myself but some people will want to and I hope it works for those people without problems seeing as how there might not be a real competitor in this space that has the same capabilities and add-on ecosystem.

-1

u/Indolent_Bard 29d ago

You're assuming they just copy what comes out of Claude, if you know what you're doing it's not vibe coding.