[Haskell-cafe] Hackage and Free Software

Mike Meyer mwm at mired.org
Sun Mar 1 12:19:40 UTC 2015

On Sun, Mar 1, 2015 at 3:03 AM, fr33domlover <fr33domlover at riseup.net>
> Hello Mike,
> I think there's some confusion here. I wan't talking about GPL compatible
> licenses, but about *any* free software license!

According to Gershom's letter, it already does that. Or at least
"cabal check" does.

> It looks like Creative Commons licenses may apply too, in particular the
> version 4 ones. CC by 4 is even GPL-compatible.
> The same for EPL and CDDL! Check out this:
> http://www.gnu.org/licenses/license-list.HTML
> Both are free sofware licenses. GPL compatibility isn't the issue here :)

That URL gets a 404 error. However, if you look at this page:
http://www.gnu.org/licenses/license-list.HTML you'll find that the EPL
and CDDL are listed as incompatible. The CC licenses are only
mentioned as non-software licenses, and not all of them are
listed. Nuts, it's even documented that the CC licenses aren't all
compatible with each other!

> > And what if I want something like the CDDL or the EPL? Those are both
> > licenses that the OSI says are popular.
> The FSF approves them as well, like I said.

Well, I found them on a free license list. Of course, some of those
include things like "We urge you not to use the CDDL" in them, which
hardly sounds like approval to me.
> > You're addressing the nits, not the core issue I tried to raise:
> > placing restrictions on what licenses (or lack thereof) are acceptable
> > will discourage people from making software available via Hackage.
> I don't think it will, because people are already making free software.
Look at
> other existing hosting services - they're *full* of free software! This
is what
> people are making anyway. All I suggest is to make it official, providing
> guarantee so people know each `cabal install` indeed installs only free
> software.

As long as you're willing to accept any license that the author thinks
of as free, then it won't. But that's such a broad scope as to make
this change effectively negligible, even from my nit-picking

> > Or I may not care. If I build a binary that uses one package that's
> > GPL-licensed and one that uses an incompatible OSI-approved license, I
> > can distribute my source under whatever terms I want, because my
> > source doesn't include source from those packages. I can build and run
> > binaries myself with no problems, and that may be fine. But I can't
> > distribute binaries because I can't satisfy both licenses
> > simultaneously, and that may not be acceptable.
> That's true, but eventually you wouldn't want to do that. I mean, if you
> some program, you'd be happy to have it packaged for distros and make
> releases for people who don't want to build from source.

Sure, I may be happy to have the binaries build and packaged for all
distros. Then again, I know there are people building software using
Haskell - and hence hackage or stackage - that aren't planning on
distributing the software in any form, so don't care about this issue.

For me personally, the FreeBSD package system allows for adding things
that have to be built from source for some reason or another, and make
building them as easy as installing the binaries. I'm happy providing
FreeBSD ports, but making it possible for people building packages for
less flexible systems who actually check all the licenses involved
isn't something I'm going to spend a lot of effort on.

And you're proposed change - or possibly non-change, given what
Gershom reported - won't change that effort.  All the licenses
involved are free. However, some of them aren't compatible with each
other, so the only way to fix this is to use different packages. I
suppose I could try and get some of the authors to change their
license, but that's probably even more work.

> This is essentially the question I'm asking the community: do you care
> the packages being free software, allowing legal distribution of binaries?
> Specifically, would you make a step forward and make it official, build-in
> into Hackage?

Except you can't answer the question "does it allow legal distribution
of binaries" by just looking at the license on the package. You also
have to consider the licenses on the transitive closure of the
libraries it uses, as they will be included in the binary, or at least
dynamically linked to it, and thus may be considered a derivative work
of the packages it includes. So your binary has to comply with the
terms of all those licenses, which may not be possible even if all the
licenses are approved by the OSI or on the FSF's list of free

Which is also why even the relatively minor restriction "must allow
free redistribution of binaries" isn't one I'd be happy with. Sure, it
probably won't affect most people. But it equally won't help most
people who want to distribute binaries, because it only removes a
minor source of barriers to doing so.

Unless, of course, by "must allow free redistribution of binaries",
you mean "doesn't place any restrictions whatsoever on the
distribution of binaries", which would eliminate the not only many of
the CC licenses, but also the GPL and some of the BSD licenses.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20150301/fb76ca03/attachment.html>

More information about the Haskell-Cafe mailing list