1================================================================================
2Installation information
3================================================================================
4
5In order to properly install the bundled extensions, such as dictionaries, it is
6necessary that the files
7
8installed
9ooo_bundled_extensions.xml
10svc-ooo_bundled_extensions
11
12are part of the OpenOffice.org IPS package. They must be added to the package
13after all other files have been added. Those other files are the SVR4 packages
14of OOo which can be imported by pkg (pkg import).
15The files have to be uploaded this way:
16
17pkgsend -s url_to_pkg_server add file installed   mode=644 owner=root group=bin path=${EXTENSIONPATH}/installed restart_fmri=svc:/application/ooo_bundled_extensions:default
18pkgsend -s url_to_pkg_server add file svc-ooo_bundled_extensions mode=744 owner=root group=bin path=/lib/svc/method/svc-ooo_bundled_extensions
19pkgsend -s url_to_pkg_server add file ooo_bundled_extensions.xml mode=644 owner=root group=bin path=/var/svc/manifest/application/ooo_bundled_extensions.xml restart_fmri=svc:/system/manifest-import:default
20
21
22---
23
24${EXTENSIONPATH} must be replaced by the path to the folder containing the
25bundled extensions. This path changes with every major release of OOo because of
26the version number which is part of a folder name. The
27current value is:
28
29EXTENSIONPATH=/opt/openoffice.org3/share/extension/install
30
31The service was tested with OpenSolaris release 2009.6 and may not work with a
32previous release.
33
34
35================================================================================
36What do these files do
37================================================================================
38
39The three files constitute a SMF service. When this service is started, then it
40installes the bundled extensions which are contained in
41/opt/openoffice.org3/share/extension/install. To install them, the service calls
42"unopkg add --shared ..." with the appropriate arguments.
43
44The service is started initially after the installation of
45ooo_bundled_extensions.xml. At this time, all files of OOo, including the
46extensions, have been copied to their destination. The service calls unopkg on
47behalf of every extension and adds the path to that extension to the file
48'installed'. The file 'installed' is used to remember what extensions have
49already been installed with unopkg. This will prevent to reinstall those
50extensions whenever the service is restarted.
51
52When a new version of OOo becomes available, then the respective OOo package
53containes a new version of 'installed'. That is, it contains a version string,
54such as 3.2.0. The sole reason for that string is, to change the content of this
55file in every release. Otherwise IPS would not replace the installed version of
56'installed' with the one contained in the package.
57
58The update procedure of OOo will replace 'installed'. 'installed' is associated
59with a restart_fmri of the service ooo_bundled_extensions. That is after
60copying 'installed' the service will be restarted. It then installes all
61extensions contained in /opt/openoffice.org3/share/extension/install, because
62the newly installed 'installed' file does not contain any entries yet, except
63for the version string.
64
65
66================================================================================
67Known issues
68================================================================================
69
70If OOo, which contains this service, is uninstalled and later it is installed
71again, then the bundled extensions are not installed. That is, unopkg is not
72called to install them with OOo's Extensions Manager. The reasons is a bug in
73OpenSolaris:
74
75http://defect.opensolaris.org/bz/show_bug.cgi?id=5742
76
77To work around this, one can call after uninstalling OOo
78
79svccfg delete -f ooo_bundled_extensions
80svccfg delete smf/manifest
81