Jan 09 2008
Running OpenOffice headless on Debian
While installing Alfresco, it is advised to run Openoffice on the server in headless mode, so Alfresco can use the running Openoffice instance to read, analyse and convert certain types of documents. Most documents only tell you to “apt-get install xvfb openoffice.org”; which isn’t complete. This works on Debian Etch:
First of all, as any guide tells you, install xvfb and OpenOffice:
apt-get install openoffice.org xvfb
The need for Openoffice is clear, as this is the package we are looking for. The xvfb package is the “X Virtual FrameBuffer”, a method to run a X-session completely in memory, by using a framebuffer (this emulates the screen, and a X-server is run inside this virtual screen). This package also gives us the “xvfb-run” command we will need later to start a X-session on this framebuffer, and run a openoffice inside of this framebuffer.
But, when we will start the Xvfb, some errors will pop up.
First of all, we need fonts. The X server will not start if it can’t find some basic fonts, starting with the most basic font “fixed”. The solution is simple, we just install the packages which contain the fonts:
apt-get install xfonts-base xfonts-75dpi xfonts-100dpi
Accept the needed dependencies, and we will can move on… Now, Xvfb will start (run ‘Xvfb :99′, it should give some warnings and some notes, but it should not fail to start. Use Ctrl-C to stop it again).
When running OpenOffice in the Xvfb the server will complain it needs ‘xauth’. This little utility is part of xbase-clients. Lets install it:
apt-get install xbase-clients
After accepting the dependencies; all is done for the X environment. It still complains about a policy file, but it isn’t required (if you want to fix this, install ‘xserver-xorg-core’ and its dependancies).
If you want to run Openoffice headless, this should now work with the following command:
xvfb-run -a /usr/lib/openoffice/program/soffice -headless -nologo -norestore -nofirststartwizard
The following is specific to an alfresco setup, and involves running Openoffice listening at a TCP connection:
We will change the startup options of OpenOffice, and add the values for the TCP-listener. You can use startup options to OpenOffice through the command line, but I changed it in the Setup file, so we don’t have to worry about this when restarting the service by hand. To do this, edit the file located at /usr/lib/openoffice/share/registry/data/org/openoffice/Setup.xcu, and add the following section (I added it just below the “oor:name”-node start for “Office”):
<prop oor:name="ooSetupConnectionURL">
<value>socket,host=localhost,port=8100;urp;StarOffice.ServiceManager</value>
</prop>
Now, I tested the config, and started the xvfb-run, and then Alfresco.
And there was much rejoicing.
4 responses so far

I tried your method but I get
(process:28014): GLib-GObject-CRITICAL **: gtype.c:2240: initialization assertion failed, use IA__g_type_init() prior to this function
(process:28014): Gdk-CRITICAL **: gdk_screen_get_font_options: assertion `GDK_IS_SCREEN (screen)’ failed
every time i try and start it.
Latest version of open office will run headless without xvfb
apt-get openoffice.org-headless
Do you try to make your release just about this good post really touristed with the support of the article submit service? If no, I would offer to detect the article submission packages! Hope that my advice will help!
Some students have got a lot of deals but in spite of of it they have to compose the biography essay. But at this time they should not worry about that, simply because they will use your superb idea about this post as a sample for academic writing. Other way, that would be available to go to a buy essay service to buy the term papers. Furthermore, that is really easy.