Einfach nur die Dateien
firefox/update.test
firefox/updates/0/update.test
leer zu erstellen scheint auszureichen.
---------------------------------------------------------------
Soll das firefox-2 (2.0.0.*) von mozilla systemweit verwendet werden,
kann auch bei einem normalen User der Update-Check laufen
ohne daß er Schreibzugriff auf die Dateien selbst hat.
Das tar.gz entpacken, zBsp nach /opt/firefox, und dann:
Code: Alles auswählen
chown -R root:root firefox/
chmod 1777 firefox/ firefox/updates/0/
(Das Sticky-Bit verhindert Änderungen an den Dateien durch den User.)
Beim Update selbst mittels 'sudo firefox' hinterher sicherheitshalber
Code: Alles auswählen
chown -R $USER ~/.mozilla/
Eine Alternative zu 'sudo firefox' wäre
Code: Alles auswählen
chown -R $USER /opt/firefox/
firefox das Update machen lassen - als User.
chown -R root:root /opt/firefox/
-----------------------------------------
EDIT 20071009
Besser als das Herumgewurschtel mit den Rechten ist doch ein fcron-Job:
(das wget könnte/sollte als nobody gemacht werden)
Code: Alles auswählen
#!/bin/bash
TMPDIR=`mktemp -dt ffu.XXXXXX`
FFDIR=$1; FF_REPO=$2
cp $FF_REPO/updater $TMPDIR # Damit kann ein Firefox aufgesetzt werden, auch wenn es sich um ein leeres $FFDIR handelt
OS=linux-i686; LOC=de; MAR=partial.mar # Defaults; im Fehlerfall wird complete.mar geladen
ls $FFDIR/firefox.exe && OS=win32 # der Linux-updater kann auch die Archive für win32 bearbeiten
ls $FFDIR/chrome/en-GB.jar && LOC=en-GB
ls $FFDIR/chrome/en-US.jar && LOC=en-US
GET() {
mkdir -p $FF_REPO/$OS/$LOC/
cd $FF_REPO/$OS/$LOC/
wget -q --timestamping ftp://ftp.mozilla.org/pub/firefox/releases/latest/update/$OS/$LOC/*$MAR # Fehlerbehandlung über zusätzliche Parameter
ln -sf `ls -1 *$MAR | tail -1` $TMPDIR/update.mar
}
DO() {
cd $FFDIR # nur im aufrufenden Verzeichnis wird das Update ausgeführt
$TMPDIR/updater $TMPDIR 0
}
GET; DO
grep succeeded $TMPDIR/update.status && { rm -rf $TMPDIR; exit 0; }
MAR=complete.mar
EXTEN=$FFDIR/extensions
CREATE="$EXTEN/inspector@mozilla.org $EXTEN/{972ce4c6-7e08-4474-a285-3208198ce6fd}"
# falls nicht vorhanden: DOM-Inspektor + Default-Theme
# vielleicht noch "$EXTEN/talkback@mozilla.org" ?
mkdir -p $CREATE
GET; DO
grep succeeded $TMPDIR/update.status || exit 1
rm -rf $TMPDIR