<div dir="ltr"><div class="gmail_extra"><div>On Tue, Mar 3, 2015 at 10:31 AM, Casey McCann <<a href="mailto:cam@uptoisomorphism.net">cam@uptoisomorphism.net</a>> wrote:</div><div>> Yes, although that would require some decision or consensus on what we</div><div>> expect to be able to do with code on Hackage...</div><div>> </div><div>> My personal minimum expectation would be that anyone can always "cabal</div><div>> install" anything and use it as-is without worrying about licensing.</div><div>> Only when modifying code, writing code that pulls in multiple</div><div>> dependencies, or uploading new code to hackage should licensing issues</div><div>> really need to be considered.</div><div><br></div><div>I'd rather that people not have to worry about license issues when</div><div>uploading new code, either. They're trying to give the community code</div><div>to use. If they want to attach restrictions on that use, it should be</div><div>the users problem to comply with those restrictions, not the uploaders</div><div>problem. At least beyond the permissions implicit in uploading the</div><div>software in the first place, anyway.</div><div><br></div><div>> For specific rules I suppose that would be something like requiring</div><div>> that everything can be:</div><div><br></div><div>So let's go over your list and see how a few licenses stack up.</div><div><br></div><div>> - Redistributed unmodified in source form</div><div><br></div><div>Pretty much the definition of open source.</div><div><br></div><div>> - Fetched and used locally with no restrictions</div><div><br></div><div>Softare licensed under the AGPL doesn't meet this requirement.</div><div><br></div><div>> - Built without modification and distributed in binary form with no</div><div>> restrictions beyond attribution and a link to Hackage</div><div><br></div><div>Only if "without modification" means you don't use a library built</div><div>from the software in an application you are planning on</div><div>distributing. Because if you do so, then your binary is considered a</div><div>derived work, and is no different from any other modification.</div><div><br></div><div>If you want the ability to build a library without modification and</div><div>then distribute a binary that uses it, then all the GPL licenses but</div><div>the LGPL fail this requirement, and most licenses on the "not</div><div>compatible with the GPL" list will fail it as well because the usual</div><div>reason for incompatibility is adding restrictions to such a</div><div>distribution.</div><div><br></div><div>> - Used and redistributed under the same license as any code it</div><div>> contains FFI bindings to.</div><div><br></div><div>Well, this depends on the license that the FFI code, not the license</div><div>of the code on hackage. Those are usually the same license, but it's</div><div>not a requirement.</div><div><br></div><div>This touches on a problem I have with the current license</div><div>field. People may want to dual license something, or dual licensing</div><div>may be required by code they have used in it. But there's no way to</div><div>indicate dual licensing except to pick otherLicense and then document</div><div>it a such. For instance, if you incorporate MPL and GPL code, the</div><div>resulting code should be dual licensed. It'd be nice if the license</div><div>field in a cabal file could be a list for these cases.</div><div><br></div><div>>  In particular, I'd personally be willing to accept code on Hackage</div><div>> that restricts redistribution with modifications, but probably not any</div><div>> other kind of significantly "non-free" license. I'd also be okay with</div><div>> Hackage rejecting packages that can't be used/redistributed due to</div><div>> conflicting licenses among its dependencies.</div><div><br></div><div>The dependency licensing only kicks in on redistribution if you're</div><div>distributing binaries. Redistributing source doesn't include any form</div><div>of the dependencies, so their licenses don't matter. An inability to</div><div>redistribute binaries because of depencency licenses doesn't bother me</div><div>much, so long as I can still use them. If I want to redistribute such</div><div>binaries, then I have a number of options. But that should be my</div><div>problem, and not something that should impact people who don't want to</div><div>distribute binaries by, for instance, having the software not be</div><div>available on Hackage.</div></div></div>