Apache 2.0 License
Hi @gz, I am one of the maintainers of Tock. We have recently received a pull request (https://github.com/tock/tock/pull/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.
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
@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.
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?
Hi @alexandruradovici, thank you for reaching out. I agree with the re-licensing.