Development/Re-Basing

From The Document Foundation Wiki
Jump to: navigation, search

What is going on ?

With the relicensing of the original OpenOffice.org code-base to Apache License 2.0 by Oracle, we're now able to incrementally rebase our own code on top of that to offer a choice of licensing that does not only include LGPLv3 but also any of GPLv3.0+, LGPLv3.0+, and the AGPLv3.0+ that the MPLv2+ allows. This will also allow us to incorporate any useful improvements that are made available under that license from time to time.

Will this mean LibreOffice is "powered by Apache" ?

It is worth pointing out that only around 6% of the files in the Apache OpenOffice incubator project have any code change beyond changing the license headers. A rather substantial proportion of those changes are highly localised, or are inclusions of code not generated by the Apache project itself.

So - no, we believe that would be a misleading description. The code-base is substantially the original OpenOffice.org code-base, with a simple license change, so we like to think of ourselves as powered by, and successors to OpenOffice.org.

So, should I try to get my code into Apache, so it will appear in LibreOffice ?

There is no guarantee that your code will make it across, and as the code bases continue to diverge the work required to do this will increase. If you want your code in LibreOffice, the best way to do that is to contribute it directly there.

Surely you're not going with the Apache license ?

Indeed not, we have a strong commitment to copy-left licensing. Since the beginning of the project, we have been collecting MPL/LGPLv3+ dual license statements from committers to give us flexibility around future licensing. A big long list of these statements is maintained at Development/Developers. Instead we plan to also (dual licensed with the LGPLv3+) use the weak copy-left MPLv2 license (on top of the AL2 license).

Why go with the MPLv2 ?

The MPLv2 is, intrinsically a quadruple license. Its language in section 1.12 and 2.4 allows switching to the GPLv2.0+, LGPLv2.1+, and the AGPLv3.0+. Having said that, the Apache License is only compatible with the L/GPL version 3 or later. Using this license also means that we don't have to continue collecting statements from people, easing the patch flow into LibreOffice.

As we compete with our own code, licensed under an unhelpfully permissive license, the MPL provides some advantages around attracting commercial vendors, distribution in both Apple and Microsoft app-stores, and as our Android and iPhone ports advance in tablets and mobile devices.

What license will you distribute your binaries under ?

As the migration comes to its close, we will distribute binaries under an MPLv2 / LGPLv3 license with in addition to the mix of externally licensed libraries and helpers. While the main LibreOffice binary uses a weak copy-left license, we ship a number of icons, and the PDF import binaries (from the poplar project) under the GPL.

Why do you use a Lesser / weak-copy-left license ?

An unfortunate tactical reality of the Microsoft / Windows ecosystem is that 'Office' is often perceived to be an omnipresent, free component of that environment. As such, ISVs build proprietary applications around those tools, which become tangled into business' processes, and appear to pay no price. At the present time we judge it is hard to replace these with a strong copy-left. Some trivial examples might be the integration of proprietary E-mail systems into our mail-merge, or perhaps linking to various databases.


Tell me more about the MPLv2

The MPLv2 is the new Mozilla Public License, from the creators of Firefox and more, it has been designed to be Apache compatible. You can read more about that process and its implementation on the Mozilla website

What does your license header look like ?

   /*
    * This file is part of LibreOffice.
    *
    * This Source Code Form is subject to the terms of the Mozilla Public
    * License, v. 2.0. If a copy of the MPL was not distributed with this
    * file, You can obtain one at http://mozilla.org/MPL/2.0/.
    *
    * This file incorporates work covered by the following license notice:
    *
    *    Licensed to the Apache Software Foundation (ASF) under one
    *    or more contributor license agreements.  See the NOTICE file
    *    distributed with this work for additional information
    *    regarding copyright ownership. The ASF licenses this file
    *    to you under the Apache License, Version 2.0 (the
    *    "License"); you may not use this file except in compliance
    *    with the License.  You may obtain a copy of the License at
    *
    *       http://www.apache.org/licenses/LICENSE-2.0
    */

For more details on other license header options and advice on selecting the correct header see [1]