chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] On eggs and their licensing


From: Jim Ursetto
Subject: Re: [Chicken-users] On eggs and their licensing
Date: Wed, 2 Jun 2010 16:55:53 -0500

On Jun 2, 2010, at 12:34 PM, Jim Ursetto wrote:
You did have an interesting idea in re license info display.  Using the setup api, it should be pretty easy to write a program to display the license for each egg and recursively for its dependencies, since it's in the egg metadata.  Do you want a program like this?

As promised, attached is an example program.  Evidently this was a good idea, because we have claimed our first casualty: http-session depends on sha1 which is GPL.  Well, I assume that wasn't intentional, anyway.

You need an SVN checkout of the chicken repository to use this, because most .meta information for eggs -- such as license and dependencies -- is stripped out when installed.

You can give multiple egg arguments to the script--in that case it acts as if you queried a phantom egg with all those dependencies.  This lets you do a preliminary test for license compatibility without installing your egg.

$ csi -script egg-licenses.scm ~/scheme/chicken-eggs4 awful

((awful (license "BSD")
        (needs spiffy
               miscmacros
               spiffy-request-vars
               html-tags
               html-utils
               http-session
               jsmin))
 (jsmin (license "unknown"))
 (http-session (license "BSD") (needs sha1 spiffy intarweb uri-common))
 (sha1 (license "GPL-2") (needs setup-helper message-digest))
 (message-digest (license "BSD") (needs setup-helper miscmacros check-errors))
 (check-errors (license "BSD") (needs setup-helper))
 (setup-helper (license "BSD"))
 (html-utils (license "BSD") (needs html-tags))
 (html-tags (license "BSD"))
 (spiffy-request-vars (license "BSD") (needs intarweb uri-common spiffy))
 (miscmacros (license "BSD"))
 (spiffy
   (license "BSD")
   (needs openssl intarweb uri-common defstruct sendfile matchable))
 (sendfile (license "BSD"))
 (intarweb (license "BSD") (needs defstruct uri-common base64))
 (base64 (license "BSD"))
 (uri-common (license "BSD") (needs uri-generic defstruct matchable))
 (uri-generic (license "BSD") (needs matchable defstruct))
 (matchable (license "Public Domain"))
 (defstruct (license "BSD"))
 (openssl (license "BSD")))


Attachment: egg-licenses.scm
Description: Binary data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]