The Including Public Licence
by and copyright Ron House 1998.
Version 0.01, 25 May 1998
| Versions numbered below 1 are intended for discussion only. It is not recommended that software actually be released under
the IPL until a version of the licence with a version number of 1 or greater is available. |
Please read the accompanying Introduction to the IPL for an explanation of the ideas behind this
licence.
Licence
Definitions
Premium Code: software derived from human-written source including a reasonable amount of
commentary.
Discount Code: software derived from automatically-generated source, data, documentation,
excluding a reasonable amount of commentary.
Commercial activity: any of the following: any use by a commercial enterprise or a military or
political organisation except activities necessary to provide a free public distribution; any use by an
individual for a profit-generating activity; any sale, distribution, or lending of the software for a
charge other than a charge for recovery of the cost of the sale, distribution, or loan.
Non-commercial activity: any activity other than a commercial activity.
Software: the material to which this licence applies, including but not limited to programs, program
source text, data files, and documentation.
Use of the software: includes all manner of use, such as running the software in a computer,
compiling, disassembling, modifying, extending, or translating. It does not include distribution of
the software to other parties. Copying the software onto multiple computers owned by a single
person or organisation counts as using the software.
Distributing the software: selling, reselling, lending, giving away, placing on a public distribution
medium such as the web or a bulletin board, and/or sharing the software or a derivative of the
software, and/or causing or allowing it to be transferred into the custody of any other party by any
other means. Selling, lending, or giving away a computer or other device containing a copy of the
software counts as distribution.
Deploying the software: either using or distributing the software or a derivative of the software.
'Morally obliged': the interpretation of a moral obligation is left undefined by this document. You
may understand it as you wish provided you agree that your interpretation cannot be forced on
anyone else. If you believe that the ambiguity of this phrase places you in an undesirable position
then don't use this software.
'You': the recipient of the licence to deploy the software.
Throughout this document, the singular shall include the plural and vice versa. In particular, the
plural pronouns 'they', 'their', and 'them' are additionally used for singular persons whose sex is
unknown or irrelevant.
No Warranty
The software is accompanied by ABSOLUTELY NO WARRANTY OF ANY KIND. All
responsibility for ascertaining whether the software will do anything useful and whether it will
refrain from doing anything harmful is entirely yours and yours alone. If you live in a jurisdiction in
which this complete absence of warranty is not permitted, then this offer of a licence to use the
software is not open to you.
Terms and Conditions
- You are granted a non-exclusive licence to use and/or distribute the software for commercial
and/or non-commercial activity provided you agree with the propositions and agree to abide by
the conditions described in this licence if the licence indicates that they are applicable to the
activities you wish to perform. If you cannot agree with the propositions in this licence that are
applicable to the activities you wish to perform, no matter what the reason that you cannot agree,
then this offer of a licence is not made to you. This licence does not constitute an offer of transfer
or relinquishment of copyright.
- Mere possession (but not execution) of a single copy of the software, generation of a single
printed copy, or generating enough temporary copies to permit short-term examination of the
software in an editor or browser, is not contrary to this licence.
- It is contrary to this licence to deploy the software for commercial purposes under the terms and
conditions for non-commercial deployment.
- Whether you intend to deploy the software for commercial or non-commercial activities, you
must agree with the following two propositions:
- that commercial users are morally obliged to follow the instructions in this document
applying to the making of gratitude payments to the authors of the software; and
- that if you choose to classify your activities as non-commercial, you will not take legal
action against any party merely for criticising your choice or, if they believe you have
misrepresented your activities, expressing their opinion of you, provided they do not make
dishonest factual claims about you.
- All distribution of the software is subject to these four conditions:
- that the software be made available to the recipient only on the terms of this licence and
that the licensee shall take no action having the effect of cancelling, nullifying, or
removing this licence from the software;
- that the source code for the software shall be available on the terms of this licence, as
described below;
- that additions to the software by the user which are not intended for distribution under this
licence shall be in separate files and clearly marked; and
- that persons contributing to the software shall add their name to the 'authors' file
(described below) only for contributions that are released under this licence.
- Non-commercial distribution of the software is subject to the additional condition that the
recipient be supplied the source code or be informed how to get the source code. If you have
added any material to the software that is not distributed according to this licence, you must make
available or tell the recipient how to obtain a version of the source code that does not include
your additions and that compiles into software that performs at least as well as the software that
you originally obtained.
- Commercial deployment of the software, except for use by individuals, is subject to the
additional condition that, if you have the capability to make material available on the Internet,
you make publicly available on the world wide web or any other public Internet service a
description of how you calculated the monetary value of your moral obligations according to the
instructions below and a list of all software authors whom you have paid in the previous twelve
months and the amounts paid, except for those authors who have indicated in the 'authors' file
that they wish payments to them to remain private. If you are both an author and a commercial
deployer, then you must reveal the amount you paid to yourself. You must also reveal the
amounts you paid to authors who are connected to you by ties of business alliance, friendship, or
familial ties and you must identify which authors fall into any of these categories.
- You may distribute works consisting of combined IPL and non-IPL code, provided that all
non-IPL source code resides in separate files and that any linkage material placed in IPL files to
link with non-IPL files is contributed under the IPL and is not claimed for in your entry in the
'authors' file. Binary files consisting of compiled versions of mixed IPL and non-IPL code may
be distributed if the proportion of IPL code in the file is stated and its source is made available as
described elsewhere in this licence. Such a binary file does not automatically fall under the IPL,
but you cannot distribute such a binary unless you accept the obligations that this licence places
upon you with regard to its IPL source components.
- Commercial distribution of the software is subject to the additional condition that the recipient be
supplied the source code and/or be provided with a method of obtaining the source code that is
comparable to and/or more convenient than and/or cheaper than the method by which they
obtained the software. If you have added to the software any material that is not distributed
according to this licence, you must make available a version of the source code that compiles into
software that performs at least as well as the software that you originally obtained and you must
supply full instructions on how to compile as well as appropriate scripts or other control files for
building the software on at least one common platform. You must also tell the user the makes
and models of the compilers and other tools that you used to verify correct compilation and you
must tell the user if you know of any free sites for obtaining the source of the software.
- Distribution of the software is also subject to the additional condition that you state clearly in
your documentation what proportion of your product's premium and discount code consists of
IPL code (calculated as explained below) and the relative proportions of the premium and
discount code.
- Commercial distribution and/or use of the software is also subject to the additional condition that
you agree that you are morally obliged to make gratitude payments as described below to the
authors of the software released under this licence, and that your payment, method of payment, or
failure to pay these gratitude payments is a legitimate topic of public discussion, and that you will
not take legal action against any parties for any discussion of this issue or expressing and
criticism or opinion of you, provided said parties do not make dishonest factual claims about you.
Further, you agree that deliberate failure to pay or deliberate delay in paying gratitudes by you
shall convict you of morally reprehensible behaviour and bad social conscience.
- If you wish to cancel your licence and terminate this agreement, you must cease deploying the
software and you must destroy all copies in your possession, except that, if you have been
distributing the software commercially, you must maintain your obligations to provide source
code for a further three years and you may retain for that period any copies of the software
needed to enable you to fulfil that obligation.
- You cannot cancel any promises you may have made under this agreement, even if you cancel
your licence.
- You must agree, whether or not you cancel your licence, that the terms of this licence may be
quoted as a sufficient and complete defence against any legal action you may take contrary to
your obligations under this licence. Further, you agree and promise that, in the event that you
initiate legal action against any party for slander or libel in connection with any criticism of your
moral character as a result of your behaviour in fulfilling or not fulfilling your moral obligations
under this licence, then if that legal action fails because you are deemed to have broken your
undertakings under this licence not to sue or if you withdraw your action under circumstances
where such an outcome might be reasonably foreseen, then you shall be liable to pay to the party
against whom you look the legal action an amount equal to the sum of the amount for which you
had sued them and all their legal costs. This provision shall not apply if the other party sued you
first over a matter immediately and directly connected with any reply you may have issued to
their earlier criticism of you, provided you make your reply in a medium or media of comparable
cost and effectiveness to the media in which the criticism was made. The intention of this clause
is that all parties should restrict their contention to words alone and that neither party should use
its greater wealth to address a wider audience than the other party can afford to command.
- If the software was made available to you under 'the Including Public Licence' then you may at
your option choose to use the terms of a later version of the licence than the version originally
supplied to you. If the software was made available to you under a particular version of the
Including Public Licence then you must use the specified version of the licence.
- Usage gratitudes: Gratitude payments for commercial uses of the software shall be one third of
the price of using fully costed commercial software of equivalent scope or functionality on the
same number of computers. You may choose which commercial software you consider
equivalent to the software supplied under this agreement, but your choice should be stated in your
explanation of how you calculated gratitudes.
- Distribution gratitudes: Gratitude payments for commercial distribution of the software shall be
ten percent of your gross receipts multiplied by that proportion of your product that consists of
software licenced under the Including Public Licence. For example, if you sell product for $1000
and one quarter is IPL code, then the gratitude payment you owe is $100 x 0.25, which equals
$25. In evaluating the portion of source code that consists of IPL code, you may use any measure
you consider reasonable, provided you are ready to justify it. As a general guide, you may use
lines of source code or numbers of characters, and you should divide the amount of discount code
by a factor of ten relative to premium code. Where your product includes software not written or
compiled by you, you may use the proportions stated by the suppliers if this is available; you
must obtain the source and calculate it yourself if it is not. (But programs consisting entirely of
IPL code will be easily calculated at 100%.) In computing the relative amounts of discount and
premium code, you must do this accurately for your own contributions but you may rely on
superficial indicators such as filename extensions in evaluating contributions by others.
- Commercial users and/or distributors are morally liable to make gratitude payments whenever
their moral obligation amounts to more than $50 or every six months, whichever occurs last, but
your obligation accumulates indefinitely and adds up over all the IPL software you use. Payments
to each individual author should be no less than $50 less than their strict individual entitlement,
provided that any amount you pay yourself if you are also an author or to authors who are allied
to you by personal or business ties shall be strictly no greater than the exact amount owing.
- You should make reasonable efforts to locate authors to whom you morally owe gratitude
payments, but if neither their stated email nor street addresses reach them and you have the latest
version of the software, you should reallocate their entitlement to other authors. Once you have
made a bona fide attempt to locate an author and failed, you need make no further attempt unless
a later email or street address comes to your attention.
- In the event that there is formed a single, non-profit organisation open to all authors of
publicly-released bona fide IPL-licenced work and only to such authors for no more than a
nominal membership fee, and if that organisation advertises a service to accept gratitude
payments and channel them to the appropriate authors, then sending a single cheque to that
organisation for the total amount of gratitudes owing, along with full details of the works for
which payment is being made, should be deemed to fulfil your moral obligation to pay gratitudes
to the several authors of the IPL software you are using. Furthermore, if you do this, then you are
relieved of obligation under this licence to publish details of your commercial deployment of
IPL-licenced code. The benefits of this clause are withdrawn if you become aware of any
significant controversy brought about by major IPL authors as to whether the said organisation is
fairly representing IPL authors.
- The original author of a new work may describe that work as an "IPL Library" or as an
"unencumbered IPL Library". Alternatively the authors of the majority of the IPL code in a work
that was written by traceable authors may apply the term to an existing work if they sincerely
believe that the work, although it may perform lots of tasks, performs no single coherent task, but
instead consists of material useful in performing other tasks. Libraries are subject to distribution
gratitudes and to usage gratitudes at the point at which they are linked with other material, but
once combined with other material in such a way that their original identity as a separate work is
no longer discernible and their capacity for use as a library (in the sense that it is understood in
computer science) is lost, then they are not subject to distribution gratitudes, nor to usage
gratitudes when the combined work is used. If the combined work is an IPL work other than a
library, the authors of the library from which code is incorporated need not be added to the
'authors' file (described below) of the combined work. If the word "unencumbered" is omitted
from the description of the work as an IPL Library, then such a combined work must carry a
notice to the effect that it contains code from an IPL Library and the appropriate conditions of
this licence for making available the source of that library must be carried out.
- As a concession to commercial distributors of collections of software packages (such as a Linux
distribution), proportions of IPL code may be evaluated by the bulk measure of simply adding the
storage sizes of the packages.
- Distributions of collections of software packages that include IPL-licenced work must display a
notice to that effect in a place at least as prominent as any notice for any other software licence
other than a notice within an individual package. If no such notices are displayed outside the
individual packages, then a notice must be displayed to the effect that individual packages may
have licencing conditions that must be observed.
- The 'authors' file included in an IPL software product shall contain the names of all authors
who wish to have their contributions acknowledged. You may not delete this file. You may,
however, modify the file as described below.
- If you wish your contribution to the software to be acknowledged, you may add an entry to the
'authors' file as follows: your name, address, email address, number of lines of premium code,
and number of lines of discount code written by you. You may omit any or all of the parts of your
entry, but if you omit all contact details, commercial exploiters are no longer under an obligation
to pay you anything. If you don't want commercial licensees to publish details of payments to
you, put the letter 'P' in parentheses after your name. (But remember, if everyone does this, we'll
have no way to verify that commercial licensees are keeping to their obligations, as no payments
will be available for scrutiny.)
- If you wish to add an entry to the 'authors' file describing your own contribution to a
pre-existing work and there is no existing 'authors' file, you must count the premium and
discount lines of code in the work as it was prior to your modifications, and create a new
'authors' file with an entry for "Previous authors" showing these figures. You may then add
your own entry as described above.
- If the source is of such a nature that lines cannot be counted sensibly (for example, if the file is a
graphic file), lines shall be deemed to occur every forty bytes.
- If you redistribute software, you must ensure that the accuracy of information in the 'authors'
file does not suffer unnecessarily as a result of your actions. Redistribution of software without
modification and with the identical 'authors' file as in the copy you received shall count as
fulfilling this condition. If you modify the software by addition and/or minor modification, you
may add a line to the 'authors' file as described above but you may not alter other authors'
entries. If you redistribute only part of the software, you may modify the sizes of the
contributions claimed by the other authors so that the new total claimed contributions of the other
authors is reduced to a value bearing the same proportion to the original total claimed
contributions as the size of the part of the software you are redistributing bears to the size of the
original version of the software. You may do this either by reducing the stated contributions of all
authors proportionately or, in cases where you have reason to believe you know who contributed
which portions, by reducing or deleting the contributions of specific authors. If possible you must
do this individually for both the premium and the discount code entries. You are under no
obligation to discover the real facts concerning the contributions of individual authors and may
rely on claims in the software as you received it in determining your actions. If you combine
material from two or more different works under the IPL, you may scale the stated contributions
in the various 'authors' files if you believe that authors in the different projects have used
differing ways to calculate their contributions, but you should not do this in order to unfairly
advance the interests of yourself or your associates at the expense of other authors.
- If you redistribute a work or a section of a work, you may not delete authors' attributions within
those parts of the work that you redistribute. For example, if a code file or part of a file has a
comment listing its authors, then if you redistribute that file or part of that file, you must retain
the comment (although you may add your own name if you have added material to the relevant section).
- If you become an author by contributing to the software, then if you distribute your modified
version, you must concede to the other authors in their capacities as authors that sharing and
giving is the primary motivation for distributing software under this licence, that any financial
rewards that you might or might not reap are necessarily inexact or may even be grossly
disproportionate to effort expended or usefulness of a contribution, and that, beyond making a
modest and superficial effort to ensure that the 'authors' file bears some vague resemblance to
reality, other authors are not obliged to take any further action to safeguard your interests. You
must agree not to take legal action against any other author in their capacity as author for any
action or inaction, inadvertent or deliberate, on the grounds that you believe they have harmed
your interests in the rewards of contributing to the software, with the exception that legal action
is permitted against a commercial author who modifies the substance of or deletes your entry in
the 'authors' file in such a way that the interests of the commercial author and/or their
associates is furthered unfairly at your expense. It shall be a complete and sufficient defence
against such an action for a commercial author to demonstrate that their method of modifying the
'authors' file is not overtly unfair and has the approval of the traceable authors of at least half
of the software written by such authors.
- The file 'authors.wrk' may be used as a central repository to contain more detailed
information about author contributions. You may add an entry covering your own contributions
as an author, but should keep it brief. As a general guide, an entry one twentieth the size of your
code, plus one hundred characters, should not be exceeded unless the originator of a particular
work has indicated some other measure. You should not alter other authors' entries in this file
without justification, except for reformatting for clarity or appearance. An author is justified in
cutting a single piece of the minimum necessary size from your entry in the 'authors.wrk' file
if your entry exceeds the size just stated. (It is recommended that cutting this file be left to the
major contributors to any project.)
- You must agree to respect the moral rights of the authors of the software.
- If an author attaches to a work or portion of a work a condition that it is 'protected against
alteration', then you may not edit that work or portion of a work except for reformatting and
insertion of references to other material. Any additional material to which you insert references
must be clearly identified as being written by other than the original author of the protected material.
- As an author you may attach additional conditions to material written by you, even if your
material is distributed under the IPL, provided that your material resides in separate files
containing no material by other authors, and provided that your additional conditions do not alter
the substance of any conditions of the IPL, nor have the effect of placing additional conditions on
material not written by you. In particular, you may not remove the right of deployers of the
software to obtain source code under the terms of this licence, nor may you alter the legal or
moral framework of this licence. If you include additional conditions, they must be annotated
only in the relevant files wholly owned by you or, if a directory consists entirely of files owned
by you, in a file in that directory, and your notice of conditions must be placed in such a position
that it would be naturally encountered by any person proposing to act contrary to your conditions;
if a condition is such that these two requirements cannot be simultaneously satisfied, then that
condition may not be applied to IPL-licenced work.
- Binary and source code: A distributed work may contain source, binary, or both. If it contains
only source or source plus binary made from that source, then the 'authors' file should reflect
the contributions to the source only (that is, contributions should not be counted twice). If a file
contains only binary or binary compiled from source that is not contained in the distribution, then
the 'authors' file should reflect the contributions to the source from which the binary was
made, and it is the responsibility of the creator of the binary distribution to supply an appropriate
'authors' file along with a statement of the proportion of the binary that was made from
IPL-licenced code.