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

Written by max on April 7, 2010

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

Intro

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 : http://warped.org/blog/2009/03/04/chown3d-part-2-gtk-and-glib-in-your-own-home-directory/ where you’ve setup a script called config_gapp.

Downloads

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

Building

  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: libfreetype.so.6()(64bit) 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:

     #!/bin/sh
     
    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*
    ./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/libnpjp2.so .

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

Share and Enjoy!