Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Relicense legacy to Unlicense #15

Merged
merged 10 commits into from
Sep 5, 2024
Merged

Conversation

oskardotglobal
Copy link
Member

I have created a CLA, added it to CLA-Assistant, included the Code Covenant Code of Conduct and have written some contribution guidelines. We now only require fmstrat to sign the CLA and then we're golden.

@oskardotglobal oskardotglobal self-assigned this Jul 15, 2023
@CLAassistant
Copy link

CLAassistant commented Jul 15, 2023

CLA assistant check
All committers have signed the CLA.

@oskardotglobal
Copy link
Member Author

I'll contact fmstrat

@oskardotglobal
Copy link
Member Author

Aight, I've sent out the e-mail and cc'ed all of you (except you, @freechelmi, I couldn't find any email to contact you with)

@oskardotglobal
Copy link
Member Author

Once thats done, we add the license

@fbartels
Copy link
Contributor

I'll contact fmstrat

Thanks for reaching out to him. Good email.

@oskardotglobal
Copy link
Member Author

Thank you. Now lets hope fmstrat / Ben will respond and sign the CLA

@oskardotglobal oskardotglobal added enhancement New feature or request legacy Using legacy winapps priority: high labels Jul 16, 2023
@oskardotglobal
Copy link
Member Author

Hi Oskar,

I'm happy to see the community has kept this project alive. I'm traveling this week, but will reach out when I return and can review the below.

Thanks,
Ben

fmstrat responded! Once he signs the CLA we can merge this and then we're officially out of any legal trouble that might occur. We can also ask if he would be able to link our project on the original projects readme

@LDprg

This comment was marked as off-topic.

@oskardotglobal

This comment was marked as off-topic.

@AkechiShiro

This comment was marked as off-topic.

@oskardotglobal
Copy link
Member Author

There's no work to be done here.
We have to wait for Fmstrat to approve the relicense in order to be able to legally do stuff with legacy winapps.

@AkechiShiro
Copy link

AkechiShiro commented Oct 12, 2023

When was the last time we ever heard back of from Fmstrat?

Shouldn't we give him another poke/mail ? (I don't mean to spam but just it's been a few months this issue's is open)

@oskardotglobal
Copy link
Member Author

See #11

@AkechiShiro

This comment was marked as off-topic.

@LDprg

This comment was marked as off-topic.

@AkechiShiro

This comment was marked as off-topic.

@LDprg

This comment was marked as off-topic.

@AkechiShiro

This comment was marked as off-topic.

@LDprg

This comment was marked as outdated.

@AkechiShiro

This comment was marked as off-topic.

@oskardotglobal

This comment was marked as off-topic.

@oskardotglobal oskardotglobal changed the title Add contribution guidelines Relicense legacy to GPLv3 Feb 18, 2024
@GreatNovaDragon
Copy link
Contributor

Very stupid thought: Would one need fmstrat if one were to just, completly write a new program to replace installer.sh and bin/winapps?

Thats the stuff that fmstrat did, if i am correct, right? Having looked over the code yesterday, for #87 i got a clue what everything is intended to do, and how it could be done in, lets say, my language of preferrence c#

@oskardotglobal oskardotglobal changed the title Relicense legacy to GPLv3 Relicense legacy to Unlicense Sep 4, 2024
@oskardotglobal
Copy link
Member Author

Alright, I've gone ahead and pushed an attempt to fix our licensing dilemma.
Basically, I've identified the files that Fmstrat wrote and that haven't been rewritten by us. Then, I've added a license header to that file declaring it as proprietary. I've then added a script which will automatically add this license header for our selected license to all files added and changed.

@oskardotglobal
Copy link
Member Author

I've also taken the liberty of swapping out the license for the Unlicense, which I feel like is a better fit than the GPL given the circumstances, but I'm open to ideas.

@LDprg
Copy link
Member

LDprg commented Sep 4, 2024

I've also taken the liberty of swapping out the license for the Unlicense, which I feel like is a better fit than the GPL given the circumstances, but I'm open to ideas.

Can you please explain why Unlicense suits us better? Because for me GPL looks just fine.

@oskardotglobal
Copy link
Member Author

In terms of free software, the GPLv3 is a strong and good copyleft license.

The problem with it is that there is a licensor which owns and is able to restrict access to the software. This licensor has to be a legal entity, which would either have to be one of us maintainers or a separate entity.

The Unlicense releases software into the Public Domain. In the Public Domain, the software is owned by nobody, access is possible to everybody and there are no restrictions of it's use. In that case, we do not need a legal entity to represent us. Also, we do not have the conflict of technically re-licensing someone else's work (in the case of Fmstrat); the work is clearly attributed to it's original author where required and all of our changes are released into the public domain.

@oskardotglobal
Copy link
Member Author

Is everyone OK with these changes? Can I merge this?

@freechelmi
Copy link
Contributor

LGTM :-)

@oskardotglobal oskardotglobal merged commit d2601ef into main Sep 5, 2024
3 checks passed
@AkechiShiro
Copy link

AkechiShiro commented Sep 5, 2024

Thanks @oskardotglobal

I'm just wondering if some company can just come and relicense our code, ship it in proprietary tool, that isn't possible ? I mean that with AGPLv3 that would be a violation but as you'd said we'd need a legal entity and we don't have that.

@GreatNovaDragon
Copy link
Contributor

Pretty much not okay with putting code I partially wrote into the unlicense, therefore this PR can be closed because a license change requires consent of all devs

oskardotglobal added a commit that referenced this pull request Sep 5, 2024
…elines"

This reverts commit d2601ef, reversing
changes made to f01427a.
@oskardotglobal
Copy link
Member Author

@GreatNovaDragon
I am sure we can find a good solution this. However, I have to inform you that you have signed a contributor license agreement which allows us to relicense the code at will without the contributor's consent.

I've still gone ahead and reverted this PR for now until we can find a better solution.

@GreatNovaDragon
Copy link
Contributor

The Unlicense, putting it into public domain, is incompatile with german copyright law.

I am a citizen of germany, so, that clause is not even possible to be used for this, there is no law that actually allows me to transfer copyright anywhere besides per inheritance when i die.

@GreatNovaDragon
Copy link
Contributor

My understanding was that i would contribute under the GPL, and i did. That license is also irrevocable

@oskardotglobal
Copy link
Member Author

@GreatNovaDragon

I am not a lawyer. However, you have signed this document through the CLA-Assistant. From what I understand, this document makes the signee give up their rights completely, the only exception being if the licensor violates "the principles of Free Software" by for example making the software proprietary.

We added this CLA specifically because we were planning on relicensing to a GPLv3, but both right now and when you contributed this project has no license and is technically closed-source software.

However, I now think that we can get by with this by marking some files as proprietary. This would mean that some of the files that cannot be considered a rewrite from the original repository are attributed to their original author and marked as proprietary via a license header. For all other files, a CI step will add all new committers as copyright owners for the changed files. This would mean that all contributors retain their copyright and we could get rid of the CLA. Then, it would be no problem to keep using the GPLv3, which is what I have done in #240.
This of course will require a new CLA to be set in place, but it would be a much simpler document simply stating that the signee agrees to have their work licensed under a GPLv3, but retaining their copyright.

For more information about the CLA you signed, see https://fsfe.org/activities/fla/fla.html.

@oskardotglobal
Copy link
Member Author

Ok, I maybe should've read that link I sent more carefully.
What I said is partially incorrect. You do not give up your rights in the work. From the article:

The Contributor does not lose all of their rights, just the exclusivity in them. While the Contributor transfers their exclusive rights to the entity responsible for managing, the Trustee reciprocally grants the Contributor a non-exclusive worldwide, royalty-free, perpetual and irrevocable licence to same extent as it was originally transferred from the Contributor.

However, the article explicitely mentions that it allows the Trustee to relicense the software at will if the license is OSI or FSF-approved.

@oskardotglobal
Copy link
Member Author

This does not change what I've done in #240 however. As per your request, the project will stay on the GPLv3.

@GreatNovaDragon
Copy link
Contributor

GreatNovaDragon commented Sep 5, 2024

Relicensing my code under the Unlicense, without me allowing it, would be waiving not only my, moral rights and every other right, something prevented by the the CLA, 2.2 Moral Rights

@GreatNovaDragon
Copy link
Contributor

Even if i were to allow it, its still impossible via 9.1

9.1 This Agreement and all disputes, claims, actions, suits or other proceedings arising out of this agreement or relating in any way to it shall be governed by the laws of Germany excluding its private international law provisions.

And, the german law has no mechanic to put something into the public domain, as the Unlicense tries to do. The term "public domain" is not a legal term, it's strictly US-specific. So it bears no meaning legally outside US. (So in reality US is special here, not "the rest of the world".)

@oskardotglobal
Copy link
Member Author

Like I said, I am not a lawyer. Read my previous comments, we're staying on the GPL. (Or technically relicensing to the GPL.)

@AkechiShiro
Copy link

Could we maybe see if it's worth to change from GPLv3 to perhaps this one, what do you think @oskardotglobal ?

https://commission.europa.eu/content/european-union-public-licence_en

The licence should have equal legal value in many languages
The terminology regarding intellectual property rights had to be conformant with the European law requirements
To be valid in all Member States, limitations of liability or warranty had to be precise, and not formulated "to the extent allowed by the law" as in most licences designed with the legal environment of the United States in mind

Here is the full license text in English : https://joinup.ec.europa.eu/sites/default/files/custom-page/attachment/eupl_v1.2_en.pdf

Feel free to state any objection @GreatNovaDragon but I think this one is compliant with any laws that Germany has.

@oskardotglobal
Copy link
Member Author

@AkechiShiro This seems like a good idea. Let's further talk about this in #240.

@winapps-org winapps-org locked as resolved and limited conversation to collaborators Sep 6, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request legacy Using legacy winapps priority: high
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants