Skip to end of metadata
Go to start of metadata
Page needs updating

This page consolidates our CI software licensing discussions.


We want to be open source on principle.

We get better licensing terms from some tools, specifically Atlassian which gives free licenses to open source projects.

It may be a contractual requirement.

Some Additional Insights

 See attached files which cover the Apache 2.0 License, UCSD ' s generic Copyright Software License and an analysis comparing the two licenses

Enclosed you will find samples of an OOI  Open Source Policy and examples of four license options:

1.    Berkeley Software Distribution (BSD)

2.    Simplified BSD License (FreeBSD)

3.    Creative Commons License

4.    BIRN License


Summary of Considerations to Date

UCSD prefers BSD. [1]

If choosing BSD, the right BSD is the modified BSD (the "3-paragraph BSD"), not the original (see [2] which points to [3])

Apache is preferred by some in the world, principally on the theory that by explicitly granting rights, it is more permissive than BSD's silence on the topic of said rights. We are getting to rather finer points now. See [4].

If you do Apache you'd want version 2.0 [5]

Paul H and Michael both prefer Apache. But Paul also says "if you look under section 16.2 of you see that any gpl-compatible license will suffice for pypi." And if you look under [2] the Apache 2.0 section says "Please note that this license is not compatible with GPL version 2, because it has some requirements that are not in the older version. These include certain patent termination and indemnification provisions."

Globus requires an Apache-compatible license for contributions. ([6], but not explicitly in [7]) No telling if BSD is considered Apache-compatible - presumably it is likely to be but the fine print could say otherwise. Tim has communicated with us on this.

BSD (modified) is GPL-compatible. [2]


If you want an easy UCSD path (and a short document), choose the modified BSD.

If you want to be sure about the Globus compatibility, choose Apache and get a lawyer to check out the Python situation, or get a lawyer to look at the BSD option. Either way I think there's no easy "That's legal" approach.

Keeping in mind none of this is ever likely to be enforced.... If I were in charge I'd ask Michael and Paul if they have an issue with modified BSD, I think it provides an answer we can agree on now.

Don't forget we'll be asking for this from all contributors to our code too, if I'm not mistaken.

Proposed Open Source Licenses

Existing UCSD Licenses


[1] Taken from

In summary, yes we can do an open source software license, BSD is preferred, GPL is against UCSD policy. Others could be argued on merits with a decision needed from OCGA. Their preference is to just use the UCSD language of "freely available for research, academic, or non-profit purposes" ....

Q21: Does the university allow the open-source release of software?

A: It is not UC San Diego's preferred practice. This is because of the "viral" or "infectious" nature that requires all downstream work to be released in the same manner. However, UC San Diego does allow open-source release when the following conditions are met:

  • All involved developers and authors consent to the request in writing.
  • There are no conflicting sponsor obligations (e.g. DFAR).
  • All developers and authors agree in writing that they will not pursue personal financial benefits from activities related to the use of the open-source released software (this is to comply with conflict-of-interest regulations).

In addition, it should be noted that it is difficult to monitor and enforce the contractual obligations under open-source release.
There are several types of licenses available for open-source software release. UC San Diego will, to the extent possible, use the Berkeley Software Distribution (BSD) license because it does not have the restrictive, evolving nature that is inherent in GPL licenses. The latest proposed version of the GPL also conflicts with UC policies governing patents and copyrights.

Related questions:

Q19: I have a software program that I want to post on the Internet so that other users may download it for "not-for-profit" uses for free. Is this allowed?

A: Yes. However, TTO has a "click-wrap simple permission statement" that you should post on or before the first page of your downloadable program.

Q20: Why do we need "permission" statements when a product or technology is free for others to use?

A: There are issues other than money to consider; it protects yourself and the university. A permission statement contains several important legal statements, which include:

  • Disclaiming any implied or express warranty.
  • Disclaiming any liability that may arise from the use of the program.
  • It requires the users to acknowledge the copyright is owned by The Regents of the University of California and satisfies a requirement for continued ownership by the university.


[3] BSD Modified 3-Paragraph

[4] Various snippets from

That is one of the reasons that Google chooses the Apache License (2.0) as the default for the software it open-sources. It is permissive like BSD, but (unlike BSD) actually happens to mention the rights under copyright law and gives you a license under those rights. In other words, it actually knows what it is doing unlike some of the other permissive licenses.
The Apache license has some extra benefits over the BSD or MIT X11 license style licenses. The Apache 2.0 licenses contains a patent grant, which means that at least the authors of the code are giving you any rights that you need to any patents they might own that happen to be in the code you are using.

The BSD license is very, very, very simple, and was largely created in a time when software copyright was not a big issue, and so the legal language is not as finely crafted as it might otherwise be.

But it's easily readable English, and should still stand up in court just as well as any other license.

• Apache: 4 pages, ~1,400 words
• BSD: less than 1 page, ~270 words


[6] All source code committed to Globus repositories must be covered by the Apache License or contain a copyright and license that allows redistribution under the same conditions as the Apache License.


[8] From Tim F 2010.01.22:

In order to accept code into a Nimbus release, we will need you to sign an individual contributor's license.
It basically states that you/UCSD a) will allow UofC/Argonne to widely
distribute the code with a liberal (Apache2) license, b) are in a position to
make such an assertion on behalf of your employer, and c) are not including
anything in the code that is copied from somewhere incompatible with Apache2
or encumbered by patents, etc.


(via )

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.