Check out our Monthly Survey Page to see what our users are running.
We do often include affiliate links to earn us some pennies. See more here.

There's been a bit of a furore in the emulation community lately centred around the PlayStation 1 emulator DuckStation, which has now seen two license changes recently. As far as I'm aware, DuckStation is the most popular emulator for Sony's classic PS1 console, due to it being fast and accurate.

Up until recently it was open source under the GPL, then on September 1st it changed over to the PolyForm Strict License, and then again on September 13th it was changed over to the CC-BY-NC-ND license. This places a number of restrictions on the project like no commercial use and no derivatives allowed. That means, according to the creator, that no one else is allowed to package it up either as their change mentioned "Packaging is still **not** permitted, since it is effectively a modified/derived work".

Replying to a user unhappy about it on the GitHub, the creator said this:

I am well aware of how licenses work. That's why I changed, to make it very clear and a deterrent due to certain parties violating the old license, by not attributing and stripping my copyright. Packagers being collateral damage was a beneficial side-effect, considering they don't clearly mark their versions as modified (also a GPL requirement), break functionality, and expect upstream to provide support.

I have the approval of prior contributors, and if I did somehow miss you, then please advise me so I can rewrite that code. I didn't spend several weekends rewriting various parts for no reason. I do not have, nor want a CLA, because I do not agree with taking away contributor's copyright.

Also, I don't appreciate the threats. If you are not a copyright holder, then you are not in a position to make any demands. I find it especially ironic, considering when the GPL was actually violated on multiple occasions, even as recently as a few months ago, nobody ever takes issue with that.

I've restricted the repository to prior contributors, and if they have any concerns, they are more than welcome to do so here. If this turns into harassment, then I'll just shut the whole thing down, because I'm way too busy with my actual job to be dealing with unsubstantiated drama from a hobby that is supposed to be fun. Please consider how the community would benefit from that.

With that in mind, this means DuckStation as of the latest changes is no longer open source. You could say it's "source available", or whatever your chosen way is to describe code you can view but has restrictions on it.

Article taken from GamingOnLinux.com.
14 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly checked on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly.
See more from me
All posts need to follow our rules. For users logged in: please hit the Report Flag icon on any post that breaks the rules or contains illegal / harmful content. Guest readers can email us for any issues.
42 comments
Page: «2/3»
  Go to:

bonkmaykr Sep 17
I come from the Wii, 3DS and Vita hacking scene where stealing FLOSS homebrew software and selling it to scam people is or was an unfortunately common practice. Nowadays it mostly manifests itself in so-called "hackers" that literally just buy up old consoles, read the same guide you can follow for free, and then charge you 100 USD markup for it.

Emulators like this are no exception. I completely understand and sympathize with this change. However, I have to ask: is this really going to help? The people stealing Duckstation and other projects like it for self-gain without contributing to anything other than their own wallets are obviously not the type to shy away from copyright violations. They're no different, if not even more dubious than console bootleggers in many countries. The same applies to third-party Linux packages by other users which are falsely attributed to the original developer. All this will really do is prevent Duckstation from being used by a PS1 developer to resell their game on Steam.

Duckstation has also never had a very good issue tracker (at least one that was easy to find) or other resources, and it's competing with other open source projects like BeetlePSX which are roughly the same minus a few niche features.

I think the reason Github users are angry is not so much because it's no longer free software, but more because the developer is taking GPL-licensed commits he may not legally own and making them his own semi-proprietary work. This is a legal grey area.


Last edited by bonkmaykr on 17 September 2024 at 3:55 am UTC
Desum Sep 17
Many of you are getting this wrong...

Swanstation was a port of the libretro-core that was maintained by RetroArch without Stenzek's permission after he and the head developer of RetroArch had a falling out over Stenzek teying to push code updates to the tree and the RetroArch dev reversing the changes because "he didn't like them".

Duckstation was meant to be distributed as-is either in flatpak, self extracting executables, or the unmodified source code for distributions of Linux/BSD to do their own localized and self-maintained ports with. The exe and flatpak versions would be supported officially by stenzek where as the source code ports would be distribution maintained.

He changed the license because he doesn't want people to clone Duckstation and then steal his work, and have people blaming him for a forked project's faults like Swanstation did.

I don't blame him. The GPL is a very flawed license when it comes to allowing a developer to have absolute control over him/her project. For some projects its fine, but for others it's a total headache.

This is why many developers in the past have used BSDL, MIT, and other more restricive licenses to maintain control and prevent unauthorized forking. This saves Stenzek the time and trouble of dealing with unofficial ports, packages, and projects. He's not saying you can't fork the project, but what he is say is, if you fork, all changes have to be submitted back forst in private, and approved before you publish your changes go public in your fork so the entire project is on the same page.

You dont need anyone's permission to fork GPL'd code. There was nothing unethical in the forking of Duckstation then, nor is there anything unethical in the continued development of the still GPL'd fork. And if the GPL is "flawed" it is an order of magnitude less so than the CC-BY-NC for software. And where do you get the BSD and MIT license do anything to stop forking? They're even more lax and permissive than the LGPL.


Last edited by Desum on 17 September 2024 at 4:09 am UTC
I personally don't like it. This feels like more FOSS bait-and-switch and erosion of what FOSS meant. FOSS doesn't just mean source available nor does it meant no-commercialization. FOSS means freedom and openness for the source-code, so people can do whatever they want with it.

If he wants to restrict the binary or something, I'm fine with that. Likewise, if he wanted to make a more restricted version of the project, I'm fine with that so long as it's either a new one or a clean-fork of this one.

Add to that, I don't trust a developer this unstable. If it was 100% FOSS instead of being this weird Source Available model, I'd be able to ignore it as I can trust someone will pick up the torch if and when the original dev leaves the project.

So I'd rather just migrate now, and use something else I can trust to be more stable in the long term.
Many of you are getting this wrong...

Swanstation was a port of the libretro-core that was maintained by RetroArch without Stenzek's permission after he and the head developer of RetroArch had a falling out over Stenzek teying to push code updates to the tree and the RetroArch dev reversing the changes because "he didn't like them".

Duckstation was meant to be distributed as-is either in flatpak, self extracting executables, or the unmodified source code for distributions of Linux/BSD to do their own localized and self-maintained ports with. The exe and flatpak versions would be supported officially by stenzek where as the source code ports would be distribution maintained.

He changed the license because he doesn't want people to clone Duckstation and then steal his work, and have people blaming him for a forked project's faults like Swanstation did.

I don't blame him. The GPL is a very flawed license when it comes to allowing a developer to have absolute control over him/her project. For some projects its fine, but for others it's a total headache.

This is why many developers in the past have used BSDL, MIT, and other more restricive licenses to maintain control and prevent unauthorized forking. This saves Stenzek the time and trouble of dealing with unofficial ports, packages, and projects. He's not saying you can't fork the project, but what he is say is, if you fork, all changes have to be submitted back forst in private, and approved before you publish your changes go public in your fork so the entire project is on the same page.
This is what it means to be FOSS. FOSS is about freedom and openness of the source code. People are free to take your source code and do whatever they want with it. Both good and bad.

If they don't like it, they're free to start a new project, under a new license.
based Sep 17
With the small amount of power required to run his emu, I can totally see unofficial ps1 handhelds being sold and using his emu, which could give him trouble with Sony. At least now he can say that's not something he allows and should be considered software theft when lawyers come knocking? Idk


Last edited by based on 17 September 2024 at 6:35 am UTC
Zero3K Sep 17
What about HPSx64? It has a decent PS1 emulator included with its PS2 emulator.
Can't they simply fork the last GPL licensed version? There are plenty of instances where software changes from GPL to something else (happens quite often in enterprise oss projects), most of the time, they get forked faster than you can read the news statement of the new license in use. I'm sure if there is interest in keeping DuckStation really open, it will happen.
Desum Sep 17
Can't they simply fork the last GPL licensed version? There are plenty of instances where software changes from GPL to something else (happens quite often in enterprise oss projects), most of the time, they get forked faster than you can read the news statement of the new license in use. I'm sure if there is interest in keeping DuckStation really open, it will happen.

It already has a fork with more users: Swanstation
redneckdrow Sep 17
Can't they simply fork the last GPL licensed version? There are plenty of instances where software changes from GPL to something else (happens quite often in enterprise oss projects), most of the time, they get forked faster than you can read the news statement of the new license in use. I'm sure if there is interest in keeping DuckStation really open, it will happen.

It already has a fork with more users: Swanstation

I'm sure someone will go the Jellyfin route with the stand-alone version sometime soon, too. Hopefully, like Jellyfin, it'll be even better than the original.

Edit: In fact, the whole situation is exactly of the Aseprite debacle. People who don't use Linux don't seem to get the "distribution" or "repository" concept of supporting Linux distros. Despite initially calling their projects "open source", what they really mean is collaborative-but-dictatorial.


Last edited by redneckdrow on 17 September 2024 at 3:12 pm UTC
amatai Sep 17
  • Supporter
ope
I think the reason Github users are angry is not so much because it's no longer free software, but more because the developer is taking GPL-licensed commits he may not legally own and making them his own semi-proprietary work. This is a legal grey area.

This is not, this is a violation of GPL license if the contributor did not explicitly give him permission to relicense their work. Any contributor that did not can sue him as per the GPL license and force him to remove their contribution.

Btw, can CC-BY-ND even be compiled ?
DrMcCoy Sep 17
This is not, this is a violation of GPL license if the contributor did not explicitly give him permission to relicense their work.

And the main dev stenzek claims he has permission by everyone.

Btw, can CC-BY-ND even be compiled ?

CC doesn't make any distinction between source and binary, so compiling creates a derivative work you're not allowed to redistribute.

EDITED to merge a double-post after somebody deleted their own post:

You, on your own, can compile it. As long as it's just you and nobody knows about it, you can do anything. You can compile it, you can change it to say "stenzek is a doodoo head" at startup, knock yourself out.

Distributing such a changed version, including just a compiled binary of the unchanged sources (because for the CC, both are the same, a derivative work), that's what's not legal. No uploading it to the internet, no giving it to your friends, probably not even letting other people use it on your own system.


Last edited by DrMcCoy on 17 September 2024 at 3:34 pm UTC
The best PS1 emulator, code is still available on Github, so we can still compile it from sources and dev still provides appimage and flatpak packages, so I don't think it will change a lot of things for end user like me.
I read dev comments but i still don't understand why he bothered to change licence...


Last edited by legluondunet on 17 September 2024 at 7:45 pm UTC
redneckdrow Sep 17
Yeah, I apologize for that , I was correcting my error, and then my comment was immediately redundant when I got done editing it.
The GPL is a very flawed license when it comes to allowing a developer to have absolute control over him/her project. For some projects its fine, but for others it's a total headache.

This is why many developers in the past have used BSDL, MIT, and other more restricive licenses to maintain control and prevent unauthorized forking.
So, first, it's hardly surprising that the GPL is flawed when it comes to allowing a developer to have absolute control over a project, because it was designed precisely to stop developers (and companies) from having absolute control over projects. The point of the GPL is for users to have modification rights, much the way recipe users have modification rights over recipes. Lots of people use Free Software today because they like the way it can be developed collaboratively, with lots of people contributing to some central repository that is somewhat controlled by someone, but that was not the point.

Second, the BSD and MIT licenses are not more restrictive--to the contrary, they are more permissive. They do, particularly the BSD licenses, make it easier to fork a project to a different, more restrictive one . . . but the original code in the permissive license would remain.
There’s a lot of drama going on for years and years between stenzek and the retroarch leads. Both public and behind the scenes.

If you’ve been part of the emulation scene for a long time then you probably not surprised by this.

The mgba dev has had the same blow ups with the same people.

And also Near.

The best emu devs out there have become frustrated and angry with that projects leads and it always goes to shit.
DrMcCoy Sep 17
Yes, as an ex ScummVM dev... The retroarch people aren't exactly well loved among many projects and devs in that space. I make no secret of my personal views there either, I think they're scum, and not the good kind.

Just because I think stenzek has issues and he's had rows with the retroarch crowd, doesn't mean I'd go kiss their feet. More than one party can be awful at the same time.
CatKiller Sep 18
View PC info
  • Supporter Plus
Second, the BSD and MIT licenses are not more restrictive--to the contrary, they are more permissive. They do, particularly the BSD licenses, make it easier to fork a project to a different, more restrictive one . . . but the original code in the permissive license would remain.
See, for example, Mac OS and PlayStation's OS: both using FreeBSD and both absolutely making plenty of money for those companies without any control by anyone involved with the FreeBSD project.
Idesmi 8 years Sep 18
Yes, as an ex ScummVM dev... The retroarch people aren't exactly well loved among many projects and devs in that space. I make no secret of my personal views there either, I think they're scum, and not the good kind.

Just because I think stenzek has issues and he's had rows with the retroarch crowd, doesn't mean I'd go kiss their feet. More than one party can be awful at the same time.

I would like to know more than vague claims. What's up with "retroarch (libretro) people"?
The Creative Commons licenses (except, arguably, CC0) are a terrible, terrible choice for software.

CC0 is not even recommended due to it neglecting to protect against software patents.

Mind you, I dislike all other CC licenses as I find forced attribution aggravating (despiting agreeing its good to maintain a paper trail).
monyarm Sep 18
Didn't he do this once already? Try to change the license despite having GPL licensed submissions?
Found it: https://www.reddit.com/r/emulation/comments/sjvkmb/duckstations_oss_license_violations_are_these/
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register