ch0wned – Adding Open Office 3.x and Java on EL4 for X86_64 in your homedir

Written by max on 2010-04-07

ch0wned. adj. This is the state when you are a Linux user and don't have root access.


Continuing my install series, here’s how you get OpenOffice 3 and Java w/ the Browser plugin working out of your homedirectory on an old linux install (EL4) without root access. I assume you already have a working 64-bit firefox compiled.

This guide assumes you’re leaving off from my previous post : where you’ve setup a script called config_gapp.


  • OOo_3.2.0_LinuxX86-64_install_wJRE_en-US.tar.gz
  • jdk-6u19-linux-x64.bin


  1. Open Office

    After unpackaging open office run ./setup in the directory it creates. Select $HOME/share/oo-3.2 as a destination and now you will run into your first error:

     error: can't create transaction lock on /var/lock/rpm/transaction

    This is due to a janky version of RPM that comes with EL4 and maybe EL5. Create the file ~/.rpmmacros with the following line :

    %_rpmlock_path %{_dbpath}/__db.000

    Now go run ./setup again. Choose Advanced, uncheck “Gnome Integration”. Here you will run into the second error :

    Package Name: ooobasis3.2-core04-3.2.0-9483.x86_64.rpm 
    rpm --upgrade --ignoresize -vh --relocate /opt=/home/$USER/share/oo --dbpath /home/$USER/share/oo/.RPM_OFFICE_DATABASE OOO320_m12_native_packed-1_en-US.9483/RPMS/ooobasis3.2-core04-3.2.0-9483.x86_64.rpm 
    Returns: 1 
    Error during installation  
    error: Failed dependencies: is needed by ooobasis3.2-core04-3.2.0-9483.x86_64

    But since we know we already have this dependency installed in from my previous ch0wned post in $HOME, we can work around this. Create a file $HOME/bin/rpm that will override this for the time being:

    exec /bin/rpm --nodeps "$@"

    And now you can re-run setup a 3rd time, select advanced, deselect gnome integration and GO. Last step is to create some symlinks to the sbase / scalc / sdraw / swriter / smath / soffice executables in your $HOME/bin directory. You may need to create a small wrapper that calls them with run_gapp. Be sure to remove that $HOME/bin/rpm script when you’re done.

  2. Java x86_64 w/ Firefox Plugin

    Download the .bin copy of the JDK.

    chmod +x jdk*
    mv jdk* $HOME/share 
    cd $HOME/bin && ln -s $HOME/share/jdk*/bin/j* .

    Now for the browser plugin part

    cd ~/.mozilla/plugins
    ln -s ~/share/jdk*/jre/lib/amd64/ .

    Restart your browser and go to “about:plugins” et viola.