Some Hints On Publishing Extensions

It is possible to extend the office suite LibreOffice with add-ons, named Extensions. If such an Extension will be licensed as Free Software using an Open Source license, it could be published on the website https://extensions.libreoffice.org.  I have a look into such extensions, regularly, that are submitted for publication on that website. Thus made me aware, that contributors (extension developers in this case) didn’t know about the need to include the license information into the Extension in the form of a text file and link to that license information from the ‘description.xml’ file inside the Extension. But without a proper license the Extension it is not appropriate to publish the Extension on the LibreOffice Extensions website.

But it is not a very difficult task to add such a license information to the Extension. Just add a text file with the license to the Extension (zipped) container (preferably in a subfolder) and update the description.xml with the following xml-tag:

<registration>
<simple-license accept-by=”admin” suppress-on-update=”true” >
<license-text xlink:href=”<relative link to the license file>”
lang=”en” />
</simple-license>
</registration>

It’s also possible to add another license file to the Extension, that is localized in another language, e.g. German or French. In this case add a further xml-tag ‘license-text’ with the link to the license file in that language:, e.g.

<license-text xlink:href=”registration/license_de” lang=”de” />

If the license information is available in the users language setting, the LibreOffice extension manager will display the license in that language.

And another tripping hazard on the way to a published LibreOffice Extension project is the state of an Extension release. It’s necessary to change the initial state ‘pre-release’ to a release state from ‘alpha’ to ‘final’ correspondent to the development state of the Extension. This change could be done on the menu bar (left side of the website).  It’s not appropriate to publish an Extension project without a ‘released’ Extension file.