LibreOffice configuration management tools, approaches & best - - PowerPoint PPT Presentation

libreoffice configuration management
SMART_READER_LITE
LIVE PREVIEW

LibreOffice configuration management tools, approaches & best - - PowerPoint PPT Presentation

LibreOffice configuration management tools, approaches & best practices Thorsten Behrens - tbehrens@suse.com LibreOffice Hacker at SUSE What, Why, How Customize LibreOffice repeatably Makes your life easier, happier & more secure


slide-1
SLIDE 1

LibreOffice configuration management

tools, approaches & best practices

Thorsten Behrens - tbehrens@suse.com LibreOffice Hacker at SUSE

slide-2
SLIDE 2

05/31/12 LibreOffice configuration management 2

What, Why, How

Customize LibreOffice – repeatably Makes your life easier, happier & more secure

– Large-scale deployments – Improved user experience – Lockdown / policy / compliance

LibreOffice can do (most) of that out-of-the box!

slide-3
SLIDE 3

05/31/12 LibreOffice configuration management 3

The LibreOffice config subsystem

slide-4
SLIDE 4

05/31/12 LibreOffice configuration management 4

Architecture

<?xml>

Hardwired Configuration Schema

<?xml>

Hardwired Configuration Schema

<?xml>

Administrative Configuration

<?xml>

Administrative Configuration <?xml> User Configuration <?xml> User Configuration

slide-5
SLIDE 5

05/31/12 LibreOffice configuration management 5

Schema Layer

Hardwired Configuration Schema Hardwired Configuration Schema

<oor:component-schema> <group oor:name="MyGroup"> <prop oor:name="MyItem" oor:type="xs:string"> <value>A Sample</value> </prop> </group> </oor:component-schema> DTD Link

slide-6
SLIDE 6

05/31/12 LibreOffice configuration management 6

Admin Layer

Administrative Configuration Administrative Configuration

<oor:component-data> <node oor:name="MyGroup"> <prop oor:name="MyItem" oor:type="xs:string"> <value>A Modified Sample</value> </prop> </node> </oor:component-data>

In a read-only location for plain users, e.g. /usr/lib64/libreoffice/basis3.5/share/registry/main.xcd

slide-7
SLIDE 7

05/31/12 LibreOffice configuration management 7

User Layer

User Configuration User Configuration

<oor:component-data> <node oor:name="MyGroup"> <prop oor:name="MyItem" oor:type="xs:string"> <value>An even more modified Sample</value> </prop> </node> </oor:component-data>

Few more sub-layers:

– Tools->Options – Extensions – ... DTD Link

slide-8
SLIDE 8

05/31/12 LibreOffice configuration management 8

Layer priorities

Normally, upper layers win

– Admin config overrides schema defaults – User config overrides admin value

Not helpful for lock-down / security policies:

– Use oor:finalized="true" then in lower layers

slide-9
SLIDE 9

05/31/12 LibreOffice configuration management 9

How to customize LibreOffice

slide-10
SLIDE 10

05/31/12 LibreOffice configuration management 10

Clean install approach

Hint: start with a completely new, clean user Configure LibreOffice via Tools->Options Extract changed config items:

~/.config/libreoffice/3/user/registrymodifications.xcu

~/Application Support/LibreOffice/3/user/registrymodifications.xcu

%AppData%\LibreOffice\3\user\registrymodifications .xcu

slide-11
SLIDE 11

05/31/12 LibreOffice configuration management 11

Grok <?xml> Approach

Digest schema files from http://cgit.freedesktop.org/libreoffice/core/tree/officecfg/r Type up / amend your registrymodifications.xcu Just kidding -

slide-12
SLIDE 12

05/31/12 LibreOffice configuration management 12

Install OOConfig extension

http://users.freedesktop.org/~thorsten/extensions/ooconfig.o

Tweak config, including hidden config items

  • DEMO -

(also note my package in OBS)

slide-13
SLIDE 13

05/31/12 LibreOffice configuration management 13

How to deploy customizations

slide-14
SLIDE 14

05/31/12 LibreOffice configuration management 14

Create a customization extension

Contains just .xcu file as payload Example here: http://users.freedesktop.org/~thorsten/extensions/config_onl

slide-15
SLIDE 15

05/31/12 LibreOffice configuration management 15

Administrative extension install

To prevent your users from changing your setup: Perform an administrative installation

– /usr/lib64/libreoffice/program/unopkg

  • -suppress-license --shared add

path/to/config_only_sample.oxt

– “%PROGRAMFILES%\LibreOffice

3.5\program\unopkg" add --suppress- license --shared path\to\config_only_sample.oxt

slide-16
SLIDE 16

05/31/12 LibreOffice configuration management 16

A Sample Deployable RPM

If you have an RPM-based deployment:

– Here's a sample package in the opensuse buildservice – Grab the src rpm and tweak the contained oxt for your

setup

– Do your own rpmbuild, or branch the package on OBS

slide-17
SLIDE 17

05/31/12 LibreOffice configuration management 17

Further information

LDAP sample config

– Plain LDAP – Active Directory-based

Articles / Blogs

– Configuration details (German) – Deployment & Migration

slide-18
SLIDE 18

05/31/12 LibreOffice configuration management 18

Helpful links

Contacting us

Development: libreoffice@lists.freedesktop.org IRC: #libreoffice on freenode.net

Useful links

Extensions: http://extensions.libreoffice.org/ Wiki: http://wiki.documentfoundation.org

This document is licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the LibreOffice name, logo, or icon. This does not include LibreOffice source code, which is licensed under the LGPLv3 (GNU Lesser General Public License).