Hi, hat jemand ne Idee, wie man das Home-Verzeichnis einer Mozilla-Installation finden kann? Ich brauche das für ein Start-Skript, was zu einem RPM gehören soll. Ich habe folgendes Snipplet von jemanden bekommen, was jedoch voraussetzt, dass Mozilla immer unter /usr/lib/ installiert ist, was ja gerade bei SuSE selten der Fall ist. if [ -z "$MOZILLA_HOME" -o ! -d "$MOZILLA_HOME" ] ; then MOZILLACMD=`which mozilla 2> /dev/null` if [ -z "$MOZILLACMD" ] ; then MOZILLACMD=mozilla fi if [ -x "$MOZILLACMD" ] ; then MOZILLA_VERSION=`$MOZILLACMD -v | cut -d "," -f 1 | cut -d " " -f 2` MOZILLA_HOME=/usr/lib/mozilla-${MOZILLA_VERSION} fi fi MfG Kay
Kay Patzwald schrieb:
Hi,
hat jemand ne Idee, wie man das Home-Verzeichnis einer Mozilla-Installation finden kann? Ich brauche das für ein Start-Skript, was zu einem RPM gehören soll. Ich habe folgendes Snipplet von jemanden bekommen, was jedoch voraussetzt, dass Mozilla immer unter /usr/lib/ installiert ist, was ja gerade bei SuSE selten der Fall ist.
if [ -z "$MOZILLA_HOME" -o ! -d "$MOZILLA_HOME" ] ; then MOZILLACMD=`which mozilla 2> /dev/null` if [ -z "$MOZILLACMD" ] ; then MOZILLACMD=mozilla fi if [ -x "$MOZILLACMD" ] ; then MOZILLA_VERSION=`$MOZILLACMD -v | cut -d "," -f 1 | cut -d " " -f 2` MOZILLA_HOME=/usr/lib/mozilla-${MOZILLA_VERSION} fi fi
Warum ist das OT? Also erstmal kannst Du prüfen ob es gesetzt ist: echo $MOZILLA_HOME Oder eben: [ -z "$MOZILLA_HOME" -o ! -d "$MOZILLA_HOME" ] Wenn $MOZILLA_HOME leer/ungesetzt oder kein Verzeichnis ist... Wenn nicht, dann sucht sich das script den mozilla und findet ihn, sofern er irgendwo in einem Verzeichnis ist das in der Variablen $PATH steht ( `which mozilla' ) Du musst $MOZILLA_HOME also nicht unbedingt gesetzt haben. Es reicht z.B wenn in /usr/bin ein Link auf Mozilla vorhanden ist. Die Frage ist, wozu brauchst Du das? In dem script musst Du tatsächlich den Pfad /usr/lib... ändern auf den Pfad in dem Mozilla ist und zusätzlich müsste das Verzeichnis dann auch noch mozilla-${MOZILLA_VERSION} heissen (z.B: mozilla-1.7.10) Und jedesmal, wenn Du eine neue Version installierst, musst Du das wieder anpassen Du hast die Möglichkeit das einzutragen: Für alle User, wird aber bei updates evtl. überschrieben. /etc/profile deshalb ist es besser das in /etc/profile.local einzutragen (einfach erstellen, wenn nicht vorhanden) . Für einen User: $HOME/.profile Zusätzlich für alle zukünftigen User: /etc/skel/.profile Eintragen musst Du: export MOZILLA_HOME="/dein/pfad/zu/mozilla"
MfG Kay
Gruss Bernd
On Sun, 31 Jul 2005 11:51:32 +0200, Bernd Obermayr <lists@bobermayr.de> wrote:
Kay Patzwald schrieb:
[..]
Warum ist das OT?
Naja, hat ja nicht direkt was mit SuSE Linux zu tun.
Also erstmal kannst Du prüfen ob es gesetzt ist: echo $MOZILLA_HOME Oder eben: [ -z "$MOZILLA_HOME" -o ! -d "$MOZILLA_HOME" ] Wenn $MOZILLA_HOME leer/ungesetzt oder kein Verzeichnis ist...
Wenn nicht, dann sucht sich das script den mozilla und findet ihn, sofern er irgendwo in einem Verzeichnis ist das in der Variablen $PATH steht ( `which mozilla' ) Du musst $MOZILLA_HOME also nicht unbedingt gesetzt haben. Es reicht z.B wenn in /usr/bin ein Link auf Mozilla vorhanden ist.
Ich brauche jedoch nicht die ausführbare Datei, sondern das gesamte Verzeichnis.
Die Frage ist, wozu brauchst Du das?
Ich bin für das RPM für RSSOwl zuständig (www.rssowl.org). Damit der interne HTML-Betrachter (auf Mozilla-Basis) funktioniert, muss die Umgebungsvariable MOZILLA_FIVE_HOME gesetzt sein. Der interne Browser verwendet Bibliotheken von Mozilla, nicht Mozilla selber.
In dem script musst Du tatsächlich den Pfad /usr/lib... ändern auf den Pfad in dem Mozilla ist und zusätzlich müsste das Verzeichnis dann auch noch mozilla-${MOZILLA_VERSION} heissen (z.B: mozilla-1.7.10) Und jedesmal, wenn Du eine neue Version installierst, musst Du das wieder anpassen
Du hast die Möglichkeit das einzutragen: Für alle User, wird aber bei updates evtl. überschrieben. /etc/profile deshalb ist es besser das in /etc/profile.local einzutragen (einfach erstellen, wenn nicht vorhanden) . Für einen User: $HOME/.profile Zusätzlich für alle zukünftigen User: /etc/skel/.profile
Eintragen musst Du: export MOZILLA_HOME="/dein/pfad/zu/mozilla"
Da das Skript für ein RPM ist, was auf möglichst vielen RPM-Systemen laufen soll, bringt das nicht viel. Die Umgebungsvariable soll schon vom Skript gesetzt werden. Folgendes passiert, wenn Mozilla gefunden wurde: if [ -d "$MOZILLA_HOME" ] ; then export MOZILLA_FIVE_HOME=${MOZILLA_HOME} export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${MOZILLA_FIVE_HOME} fi MfG Kay
Kay Patzwald schrieb:
On Sun, 31 Jul 2005 11:51:32 +0200, Bernd Obermayr <lists@bobermayr.de> wrote:
Kay Patzwald schrieb:
[..]
Warum ist das OT?
Naja, hat ja nicht direkt was mit SuSE Linux zu tun. Finde ich nicht :)
[...]
Eintragen musst Du: export MOZILLA_HOME="/dein/pfad/zu/mozilla"
Da das Skript für ein RPM ist, was auf möglichst vielen RPM-Systemen laufen soll, bringt das nicht viel. Die Umgebungsvariable soll schon vom Skript gesetzt werden. Folgendes passiert, wenn Mozilla gefunden wurde: if [ -d "$MOZILLA_HOME" ] ; then export MOZILLA_FIVE_HOME=${MOZILLA_HOME} export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${MOZILLA_FIVE_HOME} fi
Okay auch kein Problem ;) Ich bin mit RPM bauen nicht fit. Also deshalb nur mal so ins Blaue.. Es gibt doch diesen Postinstall Mechanismus. hier musst Du dafür sorgen, dass MOZILLA_HOME irgendwo gesetzt wird, z.B: /etc/profile.local (SuSE) Dann hast Du ja in dem RPM einen Installationspfad festgelegt, den musst Du in obigem Schnipsel eintragen. Wenn der Mozilla-Pfad nicht bekannt ist, müsstest evtl. via find oder rpm danach suchen. rpm Abhängigkeit wäre vielleicht auch ein Weg, würde aber z.B bei mir auf den Bauch fallen, da ich den Mozilla immer aus einem tar installiere. Es gibt hier in der Liste Leute, die sich mit rpm hervorragend auskennen ;)
MfG Kay
-- Gruss Bernd
On Sun, 31 Jul 2005 17:07:12 +0200, Bernd Obermayr <lists@bobermayr.de> wrote:
Kay Patzwald schrieb:
[...]
Eintragen musst Du: export MOZILLA_HOME="/dein/pfad/zu/mozilla"
Da das Skript für ein RPM ist, was auf möglichst vielen RPM-Systemen laufen soll, bringt das nicht viel. Die Umgebungsvariable soll schon vom Skript gesetzt werden. Folgendes passiert, wenn Mozilla gefunden wurde: if [ -d "$MOZILLA_HOME" ] ; then export MOZILLA_FIVE_HOME=${MOZILLA_HOME} export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${MOZILLA_FIVE_HOME} fi
Okay auch kein Problem ;) Ich bin mit RPM bauen nicht fit. Also deshalb nur mal so ins Blaue.. Es gibt doch diesen Postinstall Mechanismus. hier musst Du dafür sorgen, dass MOZILLA_HOME irgendwo gesetzt wird, z.B: /etc/profile.local (SuSE)
Hmm, so genau kenne ich mich da auch nicht aus. Vielleicht hat ja hier noch jemand ne Idee.
Dann hast Du ja in dem RPM einen Installationspfad festgelegt, den musst Du in obigem Schnipsel eintragen. Wenn der Mozilla-Pfad nicht bekannt ist, müsstest evtl. via find oder rpm danach suchen. rpm Abhängigkeit wäre vielleicht auch ein Weg, würde aber z.B bei mir auf den Bauch fallen, da ich den Mozilla immer aus einem tar installiere.
Es ist nicht unbedingt notwendig, dass MOzilla installiert ist. Das Programm läuft auch so, wenn auch die HTML-Ansicht nicht funktioniert.
Es gibt hier in der Liste Leute, die sich mit rpm hervorragend auskennen ;)
MfG Kay
participants (2)
-
Bernd Obermayr
-
Kay Patzwald