Holy shit, it’s happening, guys. Paint.net is getting official wine support. You know the windows situation is getting bad when even the developer of an app exclusively aimed at Windows is now shifting support to wine…
They’re contributing to the wine project and everything 🥲 https://bugs.winehq.org/show_bug.cgi?id=60276
I came on here a few months ago ranting about direct 2D stub functions. Two days ago the dev stopped calling those exact direct 2D functions https://github.com/paintdotnet/Paint.NET-on-Wine/releases/tag/v5.200.9785.36400
What a time to be alive. Truly a great time to be a Paint.net enjoyer.



It always sounds so simple for the layperson. Just looking through the list of DLLs in the portable ZIP, PDN uses Windows Forms (
System.Windows.Formsnamespace), which, as far as I understand, isn’t included in the cross-platform releases of .NET. They’d have to rebuild the entire UI with .NET MAUI or some other cross-platform toolkit. Then there are lots of other bundled libraries that may or may not work in a .NET-on-Linux environment.Releasing and then supporting a second platform is never as easy as just compiling the executable. Figuring out the quirks and differences of various systems, especially one as heterogenous as the Linux ecosystem, is a drain on resources that small development studios often can’t afford. Raiguard (hallowed be his name), one of the developers of Factorio, and the person who is single-handedly maintaining the Linux-native build, wrote a blog post about its challenges.
And people wonder why so many devs use Electron. It may be slow and a RAM hog but hey it works.
Well, if you want cross-platform anything, not using a Microsoft framework is the first step to success…
@rtxn @BananaTrifleViolin Nothing prevents you from using Window Forms implementation form mono
Except Mono implements the Windows-only .NET Framework, but PDN targets .NET 9. I have no idea how those two could be used at the same time for different parts of the app, what kinds of issues may arise from it, or if it can be done at all. Again, it sounds simple, but it never is.
@rtxn there is net9 winforms port:
https://github.com/DemonBigj781/X11Forms/tree/feat/net9-port-and-compat
Adding dependencies, adding complexity, adding points of failure… not to mention that the first sentence in the readme literally says it’s an experimental project. Not something that a production software should ever be built upon.
One nitpick: MAUI isn’t cross-platform in the sense that it runs on Linux. Okay, it does on Android, but not desktop Linux.
They’d have to go with something third-party like Avalonia.
Yeah, if only they could do a proper port. Looks too difficult at this point.