License Policy

General Principles
LibreOffice is all about producing good code, and a great office suite. Managing copyrights, licenses and egos is a tricky but important business. As far as possible we would like to let git handle all code crediting by default, and to publish our credits and statistics from there.

We would like to avoid attribution bloat and license explosion. We're only too happy to add contributors to the attributions page on the wiki, but generally resist adding yet more bespoke licenses to the collection already in the licenses file.

These guidelines are all about making life easy for the LibreOffice project.

Patching Existing Code
License: As a general rule, it is not acceptable to alter the license on existing files without getting approval from legal at documentfoundation org. So please don't - any modifications should have the same license as the code they are modifying which is for the most part the Mozilla Public License v2.

Attribution: This sort of change may be too small to attract a personal copyright. They will also typically be an insignificant portion of the file. Please leave attribution to git and don't bloat the file by adding your name.

Adding New Files
This section presumes you own the copyright and can license the entire file to us.

Please use and read the template header TEMPLATE.SOURCECODE.HEADER to license your code to us using the standard project licenses.

If you want to license your code under a different license as well please discuss it on the development and legal lists first. If you really must then:

(a) Please choose a license that

(i) is already used for code in LibreOffice (so is already in )

(ii) does not explicitly name the copyright holder (ie use MIT rather than BSD)

(b) Add the license to the list on the first line of the template

(c) Add the license to the alternative licenses at the end of the template

Refactoring Code, and Mixing LibreOffice and Third Party Code
When mixing third party and LibreOffice code where the third party code does not comply with the project standard and you cannot relicense it:

Please do your best to separate out new code from old and keep them in separate files.

If your changes to the old code are minor, rely on git to keep track of your code and licensing.

If you have to make major changes to the code that you cannot separate into another file, then try and indicate cleanly which is your code (and subject to the project licences) and which is third party code that you cannot re-license. Please also contact the legal list to ask for help approaching the owners of that code.

Explicit license statements
As a project we collect explicit statements from developers that their contributions are available under the relevant licenses, and we link those into wiki page