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

Apache 2.0 License #157

Open
alexandruradovici opened this issue Sep 23, 2024 · 4 comments
Open

Apache 2.0 License #157

alexandruradovici opened this issue Sep 23, 2024 · 4 comments

Comments

@alexandruradovici
Copy link

Hi @gz, I am one of the maintainers of Tock. We have recently received a pull request (tock/tock#4171) that ports Tock to the x64 architecture.

Tock has a very strict no-external-dependency policy, which is a bit of a problem of this pull request, as it uses this crate as an external dependency. After discussing the issue in the core group, we would like to internalize the used parts of this x86 crate into Tock's code base (with posting the credit and correct license header).

Tock is licensed Apache 2.0 or MIT, while this x86 crate is only MIT. We would like to kindly ask you if it would be possible to re-license this crate to the Tock project under both licenses mentioned above? This would help us to move forward with the x86 port.

@gz
Copy link
Owner

gz commented Sep 23, 2024

Hi @alexandruradovici I don't mind relicensing the x86 crate as Apache 2 and MIT, I don't have strong views about it. But I'm also not exactly an expert on copyright and licenses. My quick search does reveal that it might need an approval from all copyright holders https://opensource.stackexchange.com/questions/9077/relicensing-from-apache-2-0-to-apache-or-mit

If you have reason to believe I can make this call solely as the project owner can you provide me with some links that elaborates on this point? Otherwise you could start a process to get approval from other copyright holders. I've seen that there are github bots for this in the past that try to automate this as much as possible. However, I'm not sure this is going to be a success as this crate had many contributors during its existence.

FWIW the way I would solve it in your particular case is to add a copyright notice to the top of the relevant files which are taken from x86, indicating they're just MIT licensed. My limited understanding is that Apache 2 and MIT are very compatible with each other.

// Copyright © 2019-2022 foo
// SPDX-License-Identifier: MIT

@alevy
Copy link

alevy commented Sep 23, 2024

@gz I think you're right that it might require all copyright holders which, in the case of this crate (since, as is the case with Tock as well, there is no CLA), might be anyone who ever contributed.

My suspicion (also not a a copyright expert) is that including it as MIT only in Tock would be "no worse" from a licensing perspective than including it as an external dependency with its MIT-only license, which is probably fine (and if it's not fine for someone down they road, maybe they can put in the effort to figure this out.

@alexandruradovici
Copy link
Author

Hi @gz, thank you for the quick response. I agree with you and @alevy. For some projects, the authors require contributors to allow them to use the submitted code in a different license, but this has to be clearly stated, which is not the case here.

For Tock we mostly need the data structures. I'll take a look at the files and try to figure out the authors, it seems to be mostly you, @lilasta and @Ericson2314 (the 32 bits folder).

@lilasta @Ericson2314 would you agree re-licensing the files under Apache 2.0 or MIT?

@lilasta
Copy link
Contributor

lilasta commented Sep 25, 2024

Hi @alexandruradovici, thank you for reaching out. I agree with the re-licensing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants