HowTo repackage
an StarOfficeTM installation
set
by
Oliver Braun
Introduction:
This HowTo describes the necessary steps to take to be able to make standard unix packages (rpm, pkg, ..) out of an StarOffice TM installation set. It does not deal with any specific package manager. If you have created a script for your favourite package manager and want to share it with others, please drop me a note.
The StarOfficeTM 6.0 installation on a unix system differs slightly from an OpenOffice.org 641 B/C installation, so if you are looking for instructions for the last one, you should look here.
A. Install StarOfficeTM on your machine
-
Log into your machine as root.
-
Start the setup application with the "-net" option: <path-to-office-installation-set>/setup -net &
-
On the "Select Installation Type" page, select "Custom Installation".
-
On the "Select StarOffice 6.0 Modules" page open the node "Optional Components" and
a) de-select "Adabas Database" for this is not covered by this HowTo yet.
b) de-select "Java Environment Installation" if you want to detect/select the java version yourself.
c) de-select "CDE Integration" (default on Linux) even if you want the integration to be included in your package.
d) de-select "GNOME Integration" (default on Solaris) if you want to do the GNOME 1.4 integration yourself.
e) Linux only: de-select "KDE Integration" if you want to do the KDE 2 integration yourself.
-
Choose the directory to install to, e.g. /opt/staroffice6.0, and install.
B. Create the package file list(s)
Before you start to scan the directory tree you should decide if you want to create one single package containing all files or if you prefer two packages, a binary and a language one. The second way has the advantage of saving a lot of disk space if you are going to provide packages for different languages on the same disc.
To split the file list into two, you should include all files in <path-to-staroffice-root>/program/resource and the <path-to-staroffice-root>/share tree into the language package list and the rest into the binary package list.
Note: if you don't want a CDE integration at
all, you can remove the <path-to-staroffice-root>/share/cde
subtree from your installation before creating the file lists.
C. CDE integration
StarOfficeTM supports two different ways to integrate with your CDE: a system wide panel integration and a user based fallback. In our senario the user based fallback will not work because we have deselected CDE integration during the setup.
To include the system wide CDE integration in your package, you should call the <path-to-staroffice-root>/share/cde /dtappintegrate script with the parameters <path-to-staroffice-root> StarOffice 6.0 en from the post-installation section of your package. Note: when you install StarOffice in a different language than english, you will have to replace "en" with the ISO language code of the language you install for ( e.g. "de" for german ).
For proper deinstallation, you should invoke
/usr/dt/bin/dtappintegrate with the parameters -u -s <path-to-staroffice-root>
and rm -rf <path-to-staroffice-root>/dt from the pre-deinstallation
section of your package.
D. GNOME 1.4 integration
The GNOME 1.4 integration of StarOfficeTM consists of a set of zip files containing the menu integration files and a small binary that does the user space filetype registration. As you may want the GNOME integration to be system wide, you can only take the corresponding files as templates, but have to provide your own set of files.
To find the files provided by StarOfficeTM go back to your installation set and lookup the following strings in the setup.ins file: group_pngs.zip, writer_pngs.zip, calc_pngs.zip, draw_pngs.zip, impress_pngs.zip for the icons and gnomeappgroup.zip, gnomeappwriter.zip, gnomeappcalc.zip, gnomeappdraw.zip, gnomeappimpress.zip for the .desktop templates. The "PackedName" you will find close to the names stated above is the name of the f_xxxx zip file archieve that includes the content of the original zip files. You can either rename the files (e.g. f_0531 -> group_pngs.zip) or try to unzip the f_xxxx files directly.
If you want to register the StarOfficeTM file types, you may will find a list of them here. Note that there is currently a problem with Nautilus 1.x with the XML file formats: Nautilus recognizes them as zip files (which is correct), but does not offer a way to override this detection result for specific extensions.
E. GNOME 2 integration
In the upcoming 2.0 release
GNOME will probably switch to UTF-8 encoding for the NLS strings
in the .desktop file, so you may use the KDE integration files as templates.
F. KDE integration
The KDE 2.x integration of StarOfficeTM consists
of two sets of zip files containing the menu integration files and the mime
registration files. These files contain a bunch of placeholders you will
have to replace before using them. You may also think about changing the menu
structure from being document based to be application based for the document
based structure has the following drawbacks: One sees a document (e.g. Textdocument)
in the "Open with" list of the context menu of a StarOffice
TM file and the application launch feedback also shows a document
name instead of an application.
To find the files provided by StarOfficeTM go back to your installation set and lookup the following strings in the setup.ins file: kdeappgroup.zip, kdeappwrite.zip, kdeappcalc.zip, kdeappdraw.zip, kdeappimpress.zip for the menu .desktop templates and kdeappgroup.zip, kdeappwriter.zip, kdeappcalc.zip, kdeappdraw.zip, kdeappimpress.zip for the icons and the file type registration files. The "PackedName" you will find close to the names stated above is the name of the f_xxxx zip file archieve that includes the content of the original zip files. You can either rename the files (e.g. f_0546 -> kdeappgroup.zip) or try to unzip the f_xxxx files directly.
G. Java setup
coming soon ..