Live data from Hacker News

LXD now re-licensed and under a CLA

stgraber.org

71–80 of 102 posts

Re: LXD now re-licensed and under a CLA

#71

"As a result, Canonical cannot release LXD under the AGPLv3 license and likely never will be able to. LXD is now under a weird mix of Apache2 and AGPLv3 with no clear metadata indicating what file or what part of each file is under one license or the other." IANAL but that's not true? You can take Apache2 and relicense it under AGPL? You can take "less copyleft" license and make it "more copyleft". https://www.gnu.or…

Licenses don't typically allow licensees to re-license code. You can use Apache v2 code in a proprietary or AGPL product and redistribute binaries or other source code derived from it under any other license, but you can't change the license of the original code: anyone can still use it under the Apache license. Conversely, a copyright holder may re-license code. Depending on the exact terms of the old license, this…

> Licenses don't typically allow licensees to re-license code.

This still doesn't make any sense. Permissive licenses are designed to allow code to be relicensed freely, hence the term "permissive." There may be a few catches, like having to include attribution or a copy of the old license, but if those were significant, the code wouldn't be open source.

How could that interpretation be compatible with the fact that if the author and copyright holder relicenses the code, you can ignore them if "you got it from someone who legally obtained it back when it had the old license." LGPL projects are "someone."

> So, if the code is not relicensed, you can theoretically download a bundle that claims it's AGPLv3, select the portions that are licensed under Apache, and incorporate those into your proprietary product without providing any access to your sources, and be legally in the clear.

Very theoretically. It's very unlikely that the Apache code will sit in the AGPL project forever unmixed with new, AGPL'd, code. Since the new code is not under a permissive license, it can't be relicensed to Apache.

Re: LXD now re-licensed and under a CLA

#72
post #42

Earlier quoted context omitted.

i'm not entirely clear on what you're saying are you saying they're permitted to use your code in a proprietary piece of code but not in an agplv3 piece of code? if that's not what you're saying, what is the difference between the latter and what they are in fact doing? are they removing your apache2 license headers or something?

They changed COPYING from Apache2 to APGLv3 without introducing any SPDX headers or similar to denote what is Apache2 and what isn't. So yes, while AGPLv3 is compatible with Apache2, it doesn't grant anyone the right to relicense code. Anyone is allowed to take my Apache2 code and do what they wish with it so long as it remains Apache2, you can't just go and replace the license text from one license to another and ca…

Is there some part of the Apache 2 license that insists that people using Apache 2 licensed code in a project clearly mark what code is Apache 2 and what code is under some other license? Of course not.

Nobody is relicensing the code on other people's computers. If you downloaded code under Apache 2, somebody other than you incorporating that same code into their AGPL project won't relicense the code on your computer, but it certainly will relicense the code on theirs.

Re: LXD now re-licensed and under a CLA

#73

Earlier quoted context omitted.

They changed COPYING from Apache2 to APGLv3 without introducing any SPDX headers or similar to denote what is Apache2 and what isn't. So yes, while AGPLv3 is compatible with Apache2, it doesn't grant anyone the right to relicense code. Anyone is allowed to take my Apache2 code and do what they wish with it so long as it remains Apache2, you can't just go and replace the license text from one license to another and ca…

Is there some part of the Apache 2 license that insists that people using Apache 2 licensed code in a project clearly mark what code is Apache 2 and what code is under some other license? Of course not. Nobody is relicensing the code on other people's computers. If you downloaded code under Apache 2, somebody other than you incorporating that same code into their AGPL project won't relicense the code on your computer…

> Is there some part of the Apache 2 license that insists that people using Apache 2 licensed code in a project clearly mark what code is Apache 2 and what code is under some other license? Of course not.

yes, there is

i quoted the relevant part of the apache 2 license in my sibling comment above

Re: LXD now re-licensed and under a CLA

#74

"As a result, Canonical cannot release LXD under the AGPLv3 license and likely never will be able to. LXD is now under a weird mix of Apache2 and AGPLv3 with no clear metadata indicating what file or what part of each file is under one license or the other." IANAL but that's not true? You can take Apache2 and relicense it under AGPL? You can take "less copyleft" license and make it "more copyleft". https://www.gnu.or…

Lawyer here "IANAL but that's not true? You can take Apache2 and relicense it under AGPL? You can take "less copyleft" license and make it "more copyleft"." No you can't. That's also not really what is happening here in the link you list. This gets complicated very quick (and 90% of HN comments in this thread are already sort of wrong), but the short version is: When you aggregate existing works into a larger work, y…

> However, that does not relicense the original works that you are aggegating.

What does this claim even mean? I don't think that anybody thinks including Apache code in their GPL project would retroactively relicense the code of the Apache-licensed project that they probably had nothing to do with, written by someone they may have ever met. Is this what you're confirming?

> The aggregate work itself would also have very little copyright protection, even if you AGPLv3 it.

> The only copyright you newly get in the aggregate work is selection, arrangement, etc.

That's not really how code works. The old code is mixed with the new code, and the combination (I've always thought) is going to have all of the restrictions of both (all) licenses involved.

If I take a public domain book containing un-trademarked characters, write 20 additional chapters for it, and do a 20% rewrite on the original chapters, are you saying that my book wouldn't be copyrightable? Sounds like the GPL.

Re: LXD now re-licensed and under a CLA

#75

Time to support the fork

AGPL: The radioactive license when you don't want anyone to use your "open" source. (Google, Meta, and more cannot and will not use AGPL code at all.) This change to LXD harms VPSes and any company that uses LXD in SaaS.

Canonical avoid and may profit from this, because they are in a position to relicense all the AGPL code (thanks to the CLA or having written it in the first place). If you do want to make changes and keep those changes proprietary, throw money at Canonical and they will probably give you a license that lets you.

Re: LXD now re-licensed and under a CLA

#76
post #73

Earlier quoted context omitted.

Is there some part of the Apache 2 license that insists that people using Apache 2 licensed code in a project clearly mark what code is Apache 2 and what code is under some other license? Of course not. Nobody is relicensing the code on other people's computers. If you downloaded code under Apache 2, somebody other than you incorporating that same code into their AGPL project won't relicense the code on your computer…

> Is there some part of the Apache 2 license that insists that people using Apache 2 licensed code in a project clearly mark what code is Apache 2 and what code is under some other license? Of course not. yes, there is i quoted the relevant part of the apache 2 license in my sibling comment above

> You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works

Leaving the notice files in is in no way "marking which code is Apache 2 and which code is under some other license."

edit: this entire discussion evaporates if we abandon the idea that somebody would (or could) go through an AGPLv3 project that incorporated Apache 2 licensed code, and pull out just the Apache 2 code to use in another project. The only way to do that would be to download the Apache 2 licensed code from its original source and diff it against the AGPL project in order to distinguish the code you can use from the code you can't.

It doesn't make any sense. There's no sane preference for copy-pasting from the AGPL project rather than the original code that you've obtained under Apache.

Re: LXD now re-licensed and under a CLA

#77

"As a result, Canonical cannot release LXD under the AGPLv3 license and likely never will be able to. LXD is now under a weird mix of Apache2 and AGPLv3 with no clear metadata indicating what file or what part of each file is under one license or the other." IANAL but that's not true? You can take Apache2 and relicense it under AGPL? You can take "less copyleft" license and make it "more copyleft". https://www.gnu.or…

Lawyer here "IANAL but that's not true? You can take Apache2 and relicense it under AGPL? You can take "less copyleft" license and make it "more copyleft"." No you can't. That's also not really what is happening here in the link you list. This gets complicated very quick (and 90% of HN comments in this thread are already sort of wrong), but the short version is: When you aggregate existing works into a larger work, y…

I've long wondered if it might make sense if I ever write something substantial that I want to open source to license most of the individual functions under a permissive license such as BSD, but license the program as a whole as a collective work or compilation under something more restrictive like GPL.

The idea is that if someone finds that I've got a nice sort function or a nifty argument parser that they would find useful I'm happy for them to copy it no strings attached, but I don't want someone just taking my whole program and making a closed fork of it.

Re: LXD now re-licensed and under a CLA

#78
post #73

Earlier quoted context omitted.

> Is there some part of the Apache 2 license that insists that people using Apache 2 licensed code in a project clearly mark what code is Apache 2 and what code is under some other license? Of course not. yes, there is i quoted the relevant part of the apache 2 license in my sibling comment above

> You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works Leaving the notice files in is in no way "marking which code is Apache 2 and which code is under some other license." edit: this entire discussion evaporates if we a…

i guess you could comply by leaving the apache 2 license in there but then not say which files it applies to, but then you'd be licensing the whole work under the apache 2 license

i don't think you can comply by just removing the apache 2 license

you're right about 'jeez' and i've removed it

Re: LXD now re-licensed and under a CLA

#79
post #78

Earlier quoted context omitted.

> You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works Leaving the notice files in is in no way "marking which code is Apache 2 and which code is under some other license." edit: this entire discussion evaporates if we a…

i guess you could comply by leaving the apache 2 license in there but then not say which files it applies to, but then you'd be licensing the whole work under the apache 2 license i don't think you can comply by just removing the apache 2 license you're right about 'jeez' and i've removed it

LGPLv3 is more restrictive than Apache 2. The point as that every source file will be under LGPLv3, because it will be Apache 2 code mixed with LGPLv3 code.

The Apache 2 code will remain Apache 2 code, but in a pointless way.

Re: LXD now re-licensed and under a CLA

#80
post #51

Earlier quoted context omitted.

Of course following the move and going AGPLv3 would solve the project contribution issue. In fact it'd back Canonical into an interesting corner as Incus would be allowed to freely take LXD changes, but the opposite would not be possible unless they let go of the CLA. It certainly would put Incus in a great situation, if it wasn't for the fact that we think keeping the Apache2 license is the right thing to do. The Go…

i don't know about you, but i have no interest in subsidizing bad policies of large companies with my leisure time, much less my work time that they're not paying me for. maybe those large companies should either abandon those policies or develop their own software without our help. or pay us

[dead]
Post reply on HN