Manual Component Installation
Manually Merging a Registry and Adding it to uno.ini or soffice.ini
Registry files used by Apache OpenOffice are configured within the uno(.ini|rc) file found in the program directory. After a default Apache OpenOffice installation, the files look like this:
uno.ini : [Bootstrap] UNO_TYPES=$ORIGIN/types.rdb UNO_SERVICES=$ORIGIN/services.rdb
The two UNO variables are relevant for UNO components. The UNO_TYPES variable gives a space separated list of type library registries, and the UNO_SERVICES variable gives a space separated list of registries that contain component registration information. These registries are opened read-only. The same registry may appear in UNO_TYPES and UNO_SERVICES variables. The $ORIGIN points to the directory where the ini/rc file is located.
Apache OpenOffice uses the types.rdb as a type and the services.rdb as a component registration information repository. When a programmer or software vendor releases a UNO component, the following files must be provided at a minimum:
- A file containing the code of the new component, for instance a shared library, a jar file, or maybe a python file in the future.
- A registry file containing user defined UNOIDL types, if any.
- (optional) A registry file containing registration information of a pre-registered component. The registry provider should register the component with a relative path to be beneficial in other Apache OpenOffice installations.
The latter two can be integrated into a single file.
The recommended method to add a component to Apache OpenOffice manually is described in the following steps:
- Copy new shared library components into the <OfficePath>/program directory and new Java components into the <OfficePath>/program/classes directory.
- Copy the registry containing the type library into the <OfficePath>/program directory, if needed and available.
- Copy the registry containing the component registration information into the <OfficePath>/program directory, if required. Otherwise, register the component with the regcomp command line tool coming with the Apache OpenOffice SDK into a new registry.
- Modify the uno(.ini|rc) file, and add the type registry to the UNO_TYPES variable and the component registry to the UNO_SERVICES variable. The new uno(.ini|rc) might look like this:
[Bootstrap] UNO_TYPES=$ORIGIN/types.rdb $ORIGIN/filterxyz_types.rdb UNO_SERVICES=$ORIGIN/services.rdb $ORIGIN/filterxyz_services.rdb
After these changes are made, every office that is restarted can use the new component. The uno(.ini|rc) changes directly affect the whole office network installation. If adding a component only for a single user, pass the modified UNO_TYPES and UNO_SERVICES variables per command line. An example might be:
$ soffice “-env:UNO_TYPES=$ORIGIN/types.rdb $ORIGIN/filterxyz_types.rdb“ “-env:UNO_SERVICES=$ORIGIN/services.rdb $ORIGIN/filter_xyz_services.rdb” ).
|Content on this page is licensed under the Public Documentation License (PDL).|