Open Source License

OhioLINK is using the Affero General Public License 1.0 in anticipation of specific changes coming to the GNU General Public License 3.0 now under draft. The particular modification to GNU GPL 2.0 that is appealing is section 2.d that Affero added to the GNU GPL (with GNU's permission):

2 d) If the Program as you received it is intended to interact with users through a computer network and if, in the version you received, any user interacting with the Program was given the opportunity to request transmission to that user of the Program's complete source code, you must not remove that facility from your modified version of the Program or work based on the Program, and must offer an equivalent opportunity for all users interacting with your Program through a computer network to request immediate transmission by HTTP of the complete source code of your modified version or other derivative work.

Rationale

We believe strongly in the need to promote an environment of sharing code and concepts within the digital library community. We recognize that is certainly the nature of the open source community to contribute modifications back to upstream projects, and that the GNU GPL was conceived to codify that practice in a license. Since the GPLv2 was developed in 1991, however, the software landscape has changed dramatically to one where the network is centric. In 1991, to "distribute" a program's capabilities to another, you had to give the source code so that shell- or GUI-based application could be compiled and run on another system to receive the benefits of that application. With the creation of network-based applications, though, to distribute a program's capabilities to another only requires that the recipient use a standard web browser to engage in HTTP transactions and receive back HTML or other forms of benefits/output from the application -- the source code never had to change hands. In drafting GNU GPLv3, there are some in the open source community that believe public use of a derivative of an application across the internet is a form of "distribution" that compels the provider to offer the source code. Affero, working in advance of the publication of GNU GPLv3 created a new open source license that compels the developer of a derivative form of the application under the license to not disable a function in the application that returns the source code to the requester on demand. By allowing the source code of the current application to be delivered user in the same manner the application is used over the internet (via a web browser) the spirit of GNU GPL in a networked environment is upheld.

Questions and Answers

Is there a give-me-the-source-code function in DRC-DL now?

No, but in selecting this license and making our code available under it, we signal our intent to add such a function in a future release.

Will you move fro the Affero license to GNU GPLv3 when it is final?

If key provisions (section 7 of the draft) stay in that protect the compulsory download, then yes.

But some of the code you are developing does not take the form of an interactive web service. Does the Affero 1.0 license still apply?

Yes, and since those tools (notably the "bulk ingest" tool) are not a web service that another user on the network can use, there is not and will not be a function in the application to return its source code to a requesting user.

Is this spyware?

No. The only thing being returned is the application source code. Look into the source yourself and see what is being returned!