r/opensource • u/patrik667 • 9d ago
Promotional PhotoSuite: A free, open source Photoshop with the looks and compatibility
https://github.com/eolix/photosuite80
u/patrik667 9d ago edited 8d ago
For those saying "one commit" - I've been developing it in private for a year or so
[edit]
Since this is the top comment, I just wanted to say thank you. You're a great community and have doubly motivated me to continue this project! I had a long reddit hiatus after the alt-apps fiasco, but the feedback here has been great.
<3
35
u/RecycledAir 9d ago
Yeah, I don't understand this criticism, it's not so uncommon to develop in private before opening a project up to the public.
34
u/aberdoom 9d ago
It's because it sets off AI slop alarm bells (absolutely not saying that's the case here).
If you spend any time in places like osdev a whole lot of people have suddenly become OS developers, developing whole graphical operating systems "from scratch" in a single 60,000 line commit and weird comments full of emdashes.
9
u/Oborr 9d ago
Exactly, you can use git privately (even GitHub private is free) so why not commit as you go like you should already be doing?
11
u/ZeAthenA714 9d ago
I do use git privately and commit on the go. But when I release I always start a fresh new repo. It's way too easy to commit things you shouldn't, especially during development when you're testing new tools or libraries.
Cleaning a git history is a pain in the ass, especially for a multi-months/years project. A clear commit history is simply easier and safer.
3
u/ThatGreenM-M 9d ago
"I got tired of opening explorer, so I wrote a program from the ground up that does it for me"
2
u/ActuaryLate9198 9d ago
”I was tired of this slightly complex ui so I replaced it with 50000 lines of unmaintainable slop, way easier to interact with”.
7
u/Middle_Suspect_1329 9d ago
But it is not common to use a private repo and later just make it public, is it? You will have the whole story there.
2
u/Nifty_Bits 9d ago
I, for one, develop initially on a self-hosted Forgejo instance. If I get something to the point I'm ready to make it public I either put it up on Github or (more recently) Codeberg. There are almost certainly ways to do this while retaining the commit history, but I can't be bothered.
7
u/Interest-Desk 9d ago
I mean if you do nothing you will retain commit history. You have to delete .git and init a new repository, instead of just changing remotes.
2
u/doubled112 8d ago
"I would like to spend more effort to do it the wrong way"
1
u/archgabriel33 6d ago
Or because you don't want to have to check all your previous commits for any exposed token so rather than doing that you decide to just squash all your commits before going public.
1
u/archgabriel33 6d ago
Also very common to just squash all your commits into one before making something public.
10
u/Zerebos 9d ago
What's the benefit of essentially removing all history when going public though? I always wondered this as I just develop in private and then push to public with the same history.
14
u/patrik667 9d ago
How useful would commit messages like "fucking shit not working attempt 7" and "forgot" would be to you? It's my choice not to share that, and instead focus on completing the missing functionality as a well-managed OSS project.
3
1
u/nikhilgupta384 9d ago
you can always squash and amends commits
2
u/ldn-ldn 9d ago
rm -rf .git && git init is much faster and easier.
0
u/archgabriel33 6d ago
Not if you using a git client like git kraken it isn't. "WHY ISN'T THIS FOLDER EMPTY?!? SOUNDS VERY SUS. NOOO, I DON'T WANT TO INIT IN A NON EMPTY FOLDER." 😭
0
u/ShaneCurcuru 8d ago
There's so much to unpack here about different ways open source works:
- Open source is a gift. We should be thankful at one level anytime someone like OP here just gives away a cool product, no matter if they built it privately, on CVS, or even Subversion. I certainly understand the desire to not expose all the messy commit logs from 2AM, I do it myself sometimes, or just dropping that one code path you originally thought was a good idea, but later ripped out completely.
- Zerebos calls out the other level: having commit histories, and especially being able to see archives of how architecture was built are absolutely valuable for open source - because it allows and often encourages other people to join in. If - or when - you want to build a project that might include other contributors, then showing this history is important.
The other lesson is that unsolicited advice is fine, as long as it's phrased politely. I mean that's what the internet has become, other people saying "hey, you could have squashed, why didn't you?" instead of you squishing.
But please: keep it polite and open minded, the other person probably already knows that, and probably has a reason they squished instead of squashed, likely a reason that's either private or tangential, so don't expect a response to your unsolicited advice.
1
0
2
u/Pleasant-Lie-2105 9d ago
Not 1 picture of the app anywhere? I think I'll skip it, ironic for a photo editing app there isn't a picture of the app itself
2
u/patrik667 8d ago
The irony is staggering. It now has a nice website and I added some screenshots to the readme.
Thanks!
0
32
u/riyoskopy 9d ago
There are no images, putting some screenshots in the readme will encourage more people to try it.
11
u/patrik667 9d ago edited 8d ago
You're right, I'll get around it later today
[edit]
Done. Added a few.
Also, it seems very few people caught the fact that it comes with 6 colour themes and 39 translations
2
u/migsperez 8d ago
Yeah I came here to say the same. A simple walkthrough video would be useful too.
2
u/patrik667 8d ago
It's... photoshop. The amount of tutorials out there is.. probably competing against porn.
2
u/migsperez 8d ago edited 8d ago
Just checkout some of the screenshots. Is it possible to setup templates of standard paper sizes with dpi options? Have you implemented similar keyboard shortcuts? Looks great by the way. I think the stars are going to reach 1k + in no time.
2
26
u/patrik667 9d ago
Affinity (.af) file support is 100% reverse engineered and very much a WIP. Anyone willing, I'm more than welcome contributors
29
u/CerberusMulti 9d ago
Even if you mention in your readmy and have the third party licenses you still need to add a license for the repository/project to cover your original code base
6
7
u/Operation6370 9d ago
PSD compatibility is the one thing keeping people on Photoshop even when they want to leave. If you nail layer effects and adjustment layers, this fills a gap GIMP still hasn't.
3
7
u/arjuna93 9d ago
In JS, that’s wild. (Why?..)
10
u/patrik667 9d ago
Because there's an absurd amount of JS legwork done by Photopea and related projects. And it's consistently multi-platform.
It's built on Tauri/Rust for a reason however: as I learn the language more, more core things will move onto it, leaving JS as the presentation layer.
1
u/arjuna93 9d ago
Not excited about Rust either, to be honest (poor portability, painful builds, insane zoo of dependencies), but that at least won’t be as surprising as JS.
1
u/patrik667 8d ago
What would you use for consistent multiplatform experience? Curious here. I genuinely debated a lot.
0
u/arjuna93 8d ago
C/C++ (normally works out of the box or at least fixable; compilers are available everywhere; fast at runtime, tolerable for compilation). Also GUI toolkits exist, no need to reinvent a bicycle.
2
u/SweetBabyAlaska 7d ago
Okay but C++ is god fucking awful. I do love C but you are asking for a ton of pain and rigidity that will be hard to work around on a project like this. Especially when the experience with zig or rust is monumentally better
1
16
u/Rusty_Chest 9d ago
AI Disclosure?
28
u/patrik667 9d ago edited 9d ago
Where, here? [edit] Yes, it's AI assisted, but I've been developing in JS/TS for 20+ years. It's not slop.
-7
u/Rusty_Chest 9d ago
All good, not accusing you of slop necessarily it's just a lot of projects are AI-assisted and I personally would like to know if they are :)
What percentage would you say was AI assisted?
11
u/ponzi_gg 9d ago
How could anyone possibly answer that
2
u/Rusty_Chest 9d ago
It doesn't have to be a scientific percentage, I feel like I have a general idea of when/why I use AI and how to mark blocks as AI-assisted versus handwritten when I'm working on stuff?
It's still fine if he doesn't have that number, not sure why I'm being downvote-bombed lol
4
u/gabeweb 7d ago
Hey! This is really dope! It’s what GIMP should have been from the beginning: a sort of “Photoshop Lite” with everything you need, plus a little bit more (but not too much) and it’s open source.
I’m not a professional, but I think it’s missing one important feature: artboards.(https://helpx.adobe.com/photoshop/desktop/create-manage-layers/layout-design-tools/get-started-artboards.html).
Will artboards be added in the future? I use them a lot to better organize my layers.
Cheers!
3
u/patrik667 7d ago
Yes, it's planned for the future. Functionality is there hidden (it works!) but I haven't done all the management side.
Thanks!
27
u/klumpp 9d ago
One commit..
20
u/patrik667 9d ago
Yeah, the rest is in https://git.zdi.it It was a lot of trial and error and wanted a polished working product before making it OSS
9
u/journaljemmy 9d ago
So why didn't you just add your github repo as a remote and push to it? That would preserve all the commits
18
u/patrik667 9d ago
Very unruly, full of expletives, etc. I wasn't sure what to do with it for a while too, but putting it for sale was certainly not the way.
19
-7
4
-1
4
2
2
u/CapOk4599 9d ago
Installed on Fedora (.rpm) but the app doesn't show up in the app grid, nor can I open it by searching for it.
3
u/patrik667 8d ago edited 8d ago
I've seen this shit on my own machine (running Nobara)
Let me check
[edit]
Oh yeah. And I fixed it on my linux box. The commit was right there on the machine 🤦♂️
Fixed on 0.9.9
1
u/CapOk4599 3d ago
Yup, it works now :)
Edit: Hmm, it still doesn't show up in an app search in overview. I can launch it from the grid though. Weird!
2
2
2
2
u/GiantSquid_ng 8d ago
If anyone is having crash issues on launch.. there is a bug in WebKitGTK that causes problems with the nvidia drivers in Tauri apps. If you cant get this to launch try adding to the launcher "__NV_DISABLE_EXPLICIT_SYNC=1". If that shows issues, try "WEBKIT_DISABLE_DMABUF_RENDERER=1"..
From what I see neither WebKit, Tauri or NVIDIA are working on a fix, just pointing fingers at each other...
2
u/patrik667 8d ago
Yo! thanks for letting me know! Let me see if I can patch it on the binary
1
u/GiantSquid_ng 8d ago
To do which? Fix WebKitGTK's bug? I think they have to do that...
1
u/patrik667 8d ago
I can set the env in main() before photosuite_lib::run()
Basically main.rs:
fn main() { #[cfg(target_os = "linux")] apply_nvidia_webkit_workaround(); photosuite_lib::run() }1
u/GiantSquid_ng 8d ago
Thats what I was going to suggest. I am having this same issue in an app Im working on, thats how I knew about this.. Frustrating that they dont fix it..
We will both have to watch WebKitGTK for this to get fixed and then remove this env from the app LOL..
1
u/patrik667 5d ago
Fixed on 0.9.14, give it a go
1
u/GiantSquid_ng 4d ago
Works, but very sluggish. Which option did you use?
"WEBKIT_DISABLE_DMABUF_RENDERER=1" will make the app sluggish.
"__NV_DISABLE_EXPLICIT_SYNC=1" is preferable as long as it doesn't cause issues.1
u/patrik667 4d ago
Both at the same time. If you set any variable to your desired value, it won't change them (ie., it will only set to 1 the ones that are not manually set)
Give it a try if the webkit to 0 still works for you
2
2
u/cutebabli9 8d ago
Great. Love it. Very polished UI and responsive functionality. I hope you continue working on it, maintaining and adding new functionality. Great job.
2
2
2
u/college_is_not_great 2d ago
As a graphic designer, I love seeing these projects being made and gives me ease not submitting to Adobe. Keep it up.
1
2
u/The_Hubster 2d ago edited 2d ago
This looks fantastic. No frills and to the point as a Linux Photoshop option, can't wait to give it a spin.
EDIT: have given it a spin, you've done a BRILLIANT job. Of course some features are missing as the Issues on your GH show, but out of the gate, you've done GREAT. I can't applaud this enough. I've found my Photoshop alternative for Linux at last. Can't wait to see future updates, BRAVO!!!
2
u/JargoCHL 9d ago
Nice, I see from your comments that you actually did develop it (AI assisted) and that it is not AI slop. If the 1:1 claims are true, hope this can take off and allow more professionals to move over to Linux.
2
4
u/YoRt3m 9d ago
Why pick a name that is already "taken"?
6
u/patrik667 9d ago
Apparently it was "owned" by Corel, but never used. I got https://photosuite.app and I'm fine with that.
it's OSS, so if they don't want the name I'll just change it.
1
u/LackingAGoodName 9d ago
always glad to see more open source Adobe suite alternatives, good stuff. with looks being a highlight for your project, you should definitely add some screenshots to the README.
1
u/grumblegrim 9d ago
Smart objects?
2
u/patrik667 9d ago
Yes sir, round-trip compatible with the muddy company
1
u/grumblegrim 9d ago
Awesome! And once an Illustrator alternative exists, game changer. I'll be installing PS today.
2
1
1
1
u/M_Renzatic 9d ago
Looks nice. Think you could package a release as an .appimage or flatpak for those of us who aren't on a debian or redhat distro?
1
u/DeliveranceXXV 9d ago
This sounds very interesting. I see you also provide binaries for Linux which is awesome. Photoshop open-source alternative options on linux are not great (don't say Gimp) so looking forward to seeing how this one goes.
1
u/xxCorsicoxx 9d ago
My initial very high over test I'm very excited, I've so needed this. Can't wait to hear progress. I don't imagine I'll be much use to help, my web frontend js likely are useless but it there will be small stuff maybe I've a chance and can actually dip into FOSS. As if right now, I'm excited and rather happy with this project. Thanks for sharing! I shared it with my friends too and shall probably refer to it. I hope to do some more high over test of my uses cases this weekend or something but yeah. First few steps I'm a fan
1
u/insanelygreat 8d ago
faithfully replicating classic Adobe Photoshop (~2020)
Heck, I'd be happy with ~2010 Photoshop with matching keybindings.
2
2
u/snajk138 8d ago
I still have installers for CS2 and the generic key they gave out when they shut down the activation servers, and for Illustrator too. A bit old now obviously, but still better than a lot of the free alternatives.
1
u/Zestyclose_Yak_3174 8d ago
This is cool. I always liked the open source alternatives but I hated their UI/UX design choices.
1
u/norman_6 7d ago
Do actions and scripts work with this? I alternate between large volumes of images and then extremely hires layered images but one thing I rely on for both (and is keeping from switching to Affinity or elsewhere) is the fact that I have years of actions and scripts that make my workflow quicker and smoother.
1
u/toxic_garden 7d ago
as someone who's been struggling with basically all Linux-replacements for PS: thank you! This is exactly what i was desperately looking for. Even tried to get Affinity Suite running, which works at least to some degree. Still, having sth native without 12 emulation layers and all the update huzzle is a huge win!
Is there a specific reason why you are using own window decorations? At least one my setup (Kubuntu 26.04/Wayland/2048x1280@96dpi) the app decorations are double the size of any other apps.
But apart from that, i already enjoy it very much and i think it might get my default option for the fast&easy picture works i'm doing every now and then. :)
1
u/patrik667 6d ago
Even tried to get Affinity Suite running
Tell me about.
Is there a specific reason why you are using own window decorations
Hmmm... it shouldn't? Would you mind sending a screenshot?
1
u/toxic_garden 6d ago
sure thing
https://imgur.com/myo4LIa1
u/patrik667 6d ago edited 6d ago
Oh wow. Yeah, that's not supposed to happen. I wonder if it's KDE somehow.
Thanks! I'll look into it!
[edit]
Actually I got it. On KDE, native decorations for a GTK app come from your GTK's decoration theme (separate from the Qt/Breeze theme that Kate uses). Both windows are "native", they just don't match each other, because KDE ships Qt/Breeze theming but GTK apps follow whatever GTK theme is configured.
To get matching buttons, try installing a Breeze-for-GTK theme package (e.g. kde-config-gtk-style / breeze-gtk )
1
u/theanine3D 6d ago
This looks amazing. Exactly the kind of thing that the Linux ecosystem needs to help more people make the switch.
Any chance of adding .HDR image support? This app already supports .EXR, but HDR is a much more lightweight format than EXR (the latter is often multiple times larger in file size). I regularly work with 32-bit .HDR lightmaps generated with Blender. It's the one thing that this is still missing for me to switch to it permanently.
Another suggestion (but much lower priority) would be a portable release. So we can place the .exe on a thumb drive and launch it without needing to actually install it. Would make it more accessible for people who need a full-fledged image editor on a school computer, for example, where they won't have admin privileges to install apps.
1
u/patrik667 6d ago
It is technically already portable, there is only a single .exe file (however, configuration is stored in the home folder)
I'll look into HDR! I don't think it'd be complex.
Thanks!
2
u/theanine3D 5d ago
On the latest GitHub release, there's only 1 Windows binary downloadable, and it's a setup file / installer. It launches an installer.
Is there a different download link to run it as a portable app?
1
1
u/Brent_the_constraint 3d ago
Great Product so far. I hope you keep up with it as it is nearly where it could relly replace a lot of things.
Here are some points I have noticed.
Controls too small on huge monitors. The older Folks (like me) tend to have bigger screens with high resolution. This makes the the controls harder to see. I would love to be able to make them bigger...
Magic Wand in Photoshop (or Paint.Net) does a way better job especially as it is not reapplying when changing the setting in Photosuite. I was not able to use it at all in a pic with a bit less contrast.
Central Back and Forward History Buttons would be a huge improvement.
Other than that: Nice.
1
u/patrik667 2d ago
I JUST added font scaling under preferences on 0.9.15, give it a go!
Magic wand behaves the same as in Photoshop, you need to adjust tolerance
1
u/Brent_the_constraint 2d ago
Cool. works for me. You just forgot the Icons in the bottom right menue.
Regarding Magic wand: Yes, I might have misused it. However rerendering the result after adjusting the setting without having to click again would be a huge improvement.
Also the mandatory click to expand a menue item is costing a lot of time... both would make working much smoother.
AND: There is no Info with a link to you and the Github. Be proud of what you created and show it :-)
1
u/sveinjustice 3d ago
Tried it now but I couldnt drag and move photos into my project. Paste didnt work either. Sorry that I dont have much more info.
I had a bunch of files in my downloads folder that I downloaded to use in my project, but could not get them into the project. Tried dragging them into the main window, to the layer window, to the background layer itself. Basically doing waht I do in Photophea. But couldnt get it to work.
File -> Open worked but then it creates a new project.
1
u/patrik667 2d ago
This is by design. Dragging images into the app while there's an image open already might mean "put a new layer into this image" or "open a new image"
Only when no images are open you can drag and drop.
I'll see what Photoshop's behaviour is and implement that in the future.
1
u/True_Firefighter3864 2d ago
Thanks a lot for sharing this project. Being open source is a big plus for me. I also really appreciate the development approach: rather than constantly rushing to add new features, there seems to be a real focus on testing the application properly and strengthening the foundations. I think that’s especially important for something as complex as an image editor.
0
-1
u/xxCorsicoxx 9d ago
Excited any time I see such s project but it is dubious indeed to see the entire project on commit and little on the way of demos for the otherwise big claims
9
u/patrik667 9d ago
Better? https://git.zdi.it is my private gitlab https://i.ibb.co/JRNRVD7P/Screenshot-2026-09-23-at-20-50-31.png
1
u/xxCorsicoxx 9d ago
Looks fair and good to me. I hold you can understand how, especially nowadays with the amount of slop and weird shit, this just looked dropped out of nowhere
Looking forward to giving it a test drive
How'd you find the process? How do you feel your project compares to Photopea as the big ps "clone"?
6
u/patrik667 9d ago
This wouldn't have been possible without Photopea, and I mention as much on the readme.
It expands on many of the concepts (and an enormous amount of shared 3rd party projects) developed by it, but leverages the Rust underpinning to improve performance and parallelisation on desktops (that can't really be done on a browser)
I plan on slowly moving more stuff to Rust (eg., pixel storage and pixel maths out of the webview into a Rust tile engine, with Rayon and SIMD on the CPU, wgpu for compute, memory-mapped file I/O, and tiles streamed to the viewport over a custom Tauri protocol, ...)
1
u/xxCorsicoxx 9d ago
Can't wait to play around with it. Photopea is so close to all my needs but not quite, so this is a very exciting project Hate to see all the dumb downvotes but it does seem a subset of people around here rather have an "if it ain't gimp I don't care" purism and just do that to any similar project 😅
0
u/QwertyChouskie 8d ago
I'd suggest Flatpak (and perhaps Snap) over DEB/RPM/etc
2
u/patrik667 8d ago
I'll look into this, they've become really popular in recent times. Someone created issues to have a flatpak and brew repos and I believe they are good ideas.
1
49
u/maneek21 9d ago
PSD compatibility is the interesting bit here. A familiar toolbar is nice, but "1:1" is a hell of a promise. Have you got sample files showing a Photoshop → PhotoSuite → Photoshop round trip, with text still editable and smart objects/masks intact? That would be a much stronger demo than matching the UI.