-
Notifications
You must be signed in to change notification settings - Fork 46
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
Set Apache 2.0 OR BSD-3-Clause licenses in all crates #235
Conversation
This is the opposite of what we were working on doing with vmm-sys-util (rust-vmm/vmm-sys-util#161) because it makes the crates virtually impossible to use from code that is licensed under GPLv3 and similar licenses. What is the reason behind this change? Are you sure that none of the code from these crates originated from BSD-3-Clause projects? One example here might be Crosvm as it was used as a starting point for multiple projects. |
@vireshk suggested to uniform them. Since they are executable, I'm not sure if we can have the same issues, but for example for vsock we would like to create a library, so maybe your point is valid and it's better to leave also BSD. What we should do for gpio, i2c, and rng?
For vsock yes. |
On second thought, I think @andreeaflorescu's point is a good point. So, If everyone agrees, maybe we could do what we did in rust-vmm/vmm-sys-util#161 and just use BSD-3. For vsock should be okay (@harshanavkis can you confirm?) For other crates, @stsquad @vireshk @mathieupoirier what do you think? |
I am fine with that. I just feel they should all be consistent. That's all. |
I'm agnostic - whichever open source license makes most sense for the project. I didn't realise Apache 2.0 interacted badly with GPLv3. If the BSD 3 clause is the most liberal then lets do that. |
The licensed we proposed for all crates in rust-vmm is Apache 2.0 OR BSD-3-Clause. If this can be used (i.e. if there are no problems with using Apache 2.0 as well), I think this should be the preferred one. This gives the most flexibility in terms of usage. |
@stefano-garzarella I think you can update your patches with both these licenses now, so we can merge it. |
Okay, but should we ask to all authors to agree on that? This is the current situation (without this PR):
So |
For the vmm-sys-util update we asked for one approval from each company that contributed significant code there to simplify the required approvals. |
gpio/i2c are from me and rng is from @mathieupoirier. I think he will be fine with the changes, as we kept things similar to how it was done for the the first device merged, i.e. i2c.
Right, so all of them are fine I think. At best, I can wait for both Mathieu and Alex to approve the changes before merging.
Yeah, I think you can just all this in the same commit. |
Okay, so an ack from @vireshk and @mathieupoirier should be fine :-) About BSD-3-clause, I'll add a |
In rust file headers ? They shouldn't be updated I believe, just the licensing part should be enough. |
Nope, I mean in the new LICENSE-BSD-3-Clause file in the root. My idea is to add Then if a crate doesn't want that copyright, it can redefine a LICENSE-BSD-3-Clause file in the crate itself. |
Signed-off-by: Stefano Garzarella <[email protected]>
We forgot to update the License section in the readme template. So, let's specify that vsock crate is licensed under Apache 2.0 OR BSD-3-Clause. Signed-off-by: Stefano Garzarella <[email protected]>
Cargo.toml defines `license = "Apache-2.0 OR BSD-3-Clause"`, so let's update the SPDX in source files and add a section in the readme about the license. Signed-off-by: Stefano Garzarella <[email protected]>
Cargo.toml defines `license = "Apache-2.0 OR BSD-3-Clause"`, so let's update the SPDX in source files and add a section in the readme about the license. Signed-off-by: Stefano Garzarella <[email protected]>
Cargo.toml defines `license = "Apache-2.0 OR BSD-3-Clause"`, so let's update the SPDX in source files and add a section in the readme about the license. Signed-off-by: Stefano Garzarella <[email protected]>
I am not the right guy to decide on that. Whatever @andreeaflorescu says is fine :) |
I think generic rust-vmm authors works best because then we don't need to add a lot of copyrights. This was suggested by someone else in the past, I forgot though who. I like the proposal <3 |
Maybe we can add this also in https://github.com/rust-vmm/crate-template where we have only the Apache-2.0 license file. |
v2:
|
Merge commits are not allowed on this repository
@mathieupoirier can review and merge this now. |
@mathieupoirier can you have a look at this ? We are waiting for you to merge it :) |
Summary of the PR
Requirements
Before submitting your PR, please make sure you addressed the following
requirements:
git commit -s
), and the commitmessage has max 60 characters for the summary and max 75 characters for each
description line.
test.
unsafe
code is properly documented.