eNotatki - jarek.blog.pyszny.eu

W celu zapoznania się z tym, co będzie w kolejnej wersji OpenOffice.org możemy sięgnąć po wersje testowe (Developer Snapshot). Jeśli nie tworzymy specjalnego środowiska testowego, to na ogół nie chcemy pozbywać się stabilnej wersji a testową zainstalować obok. Pod Linuksem możemy mieć równocześnie zainstalowaną wersje stabilną oraz testową z linii ooo-dev. Czasem jednak przydaje się możliwość dostępu do większej liczby alternatywnych instalacji. Za radą kolegi Quest-88 odwiedziłem stronę Wiki OpenOffice.org: How to run different OpenOffice.org versions in parallel, gdzie jest opisane jak sobie z tym problemem poradzić. Na podstawie tego opisu przygotowałem prosty skrypt w bashu, automatyzujący instalację. Dla pewności należy go jeszcze uzupełnić o testy nieprawidłowych wartości parametrów czy też obsługę sytuacji wyjątkowych.

Skrypt wymaga trzech parametrów:

  1. katalog docelowy instalacji
  2. nazwa bazowa:
    • ooo-dev - dla wersji developer snapshot
    • openoffice.org - dla wersji stabilnych
  3. plik *.tgz
Przykład dla DEV300m84 (OOo-Dev_DEV300m84_Linux_x86-64_install-rpm_en-US.tar.gz):
 insoo.sh /opt/oo33 ooo-dev /tmp/OOo-Dev_DEV300m84_Linux_x86-64_install-rpm_en-US.tar.gz 

Zawartość skryptu insoo.sh:
#!/bin/bash

# ustawienia
OOBASEDIR="$1"
OOBASENAME="$2"
OOTGZ="$3"
if [ ! -e "${OOTGZ}" ]
  then
    echo "Brak pliku tarball"
    exit -1
fi

OOFONTDIR=${OOBASENAME}/basis3.3/share/fonts
BOOTSTRAP=${OOBASENAME}3/program/bootstraprc
OOVERDIR=` tar tzf "${OOTGZ}"| head -n 1` 

# informacje
echo Instalacja OpenOffice.org
echo =========================
echo "Plik instalacyjny: ${OOTGZ}"
echo "Nazwa katalogu w tarball: ${OOVERDIR}"
echo "Katalog docelowy: ${OOBASEDIR}"
echo "Nazwa OpenOffice.org: ${OOBASENAME}"
echo ""

# instalacja
mkdir -p "${OOBASEDIR}"
pushd "${OOBASEDIR}" > /dev/null
tar xzf "${OOTGZ}"

for i in ${OOVERDIR}/RPMS/o*.rpm; do rpm2cpio "$i" | cpio -id; done

mv opt/* . 
rm -r opt   "${OOVERDIR}"

# przeniesienie katalogu z ustawieniami użytkownika
# do ${OOBASEDIR}/users
perl -pi -e 's|(UserInstallation=).*|\1\$ORIGIN/../..|' ${BOOTSTRAP}

# konfiguracja fontów, brakujące wpisy OO.org 3.3.x
mkdir -p "${OOFONTDIR}/type1"
mkdir -p user/fonts

cat > "${OOFONTDIR}/type1/fc_local.conf" << FONTCFG
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "/etc/fonts/conf.d/fonts.dtd">
<fontconfig>
</fontconfig>
FONTCFG

cat > user/fonts/fc_local.conf << FONTCFG
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "/etc/fonts/conf.d/fonts.dtd">
<fontconfig>
</fontconfig>
FONTCFG

popd > /dev/null
echo ""
echo "Wywołanie programu: ${OOBASEDIR}/${OOBASENAME}3/program/soffice"
# pierwszy start
${OOBASEDIR}/${OOBASENAME}3/program/soffice

Komentarze do wpisu "OpenOffice.org - wiele instalacji równoczesnie (Linux, rpm)":

Jeszcze nie ma żadnych komentarzy.

Dodaj komentarz

Markdown ( szczegółowy opis znaczników ):
*em* | 1. lista 2. numerowana | * lista wypunktowana | _strong_ | [link](http://) | | > cytat.
 
SPAMowi mówimy nie BYKOM-STOP - Poprawna pisownia i ortografia w Internecie