Für alle Benutzer auf Ihrem Computer: Schreiben in/usr/bin

Für alle Benutzer auf Ihrem Computer: Schreiben in/usr/bin

Ich habe Firefox heruntergeladen, aber wenn ich es firefoxin Alt+F2(Gnome 3.4.2) ausführe, wird stattdessen Iceweasel ausgeführt. Ich habe den typeBefehl verwendet, um die Datei zu finden, die anscheinend dafür verantwortlich ist:

#!/bin/sh

FIREFOX="$(which $0)"
[ -x "$FIREFOX.real" ] && exec "$FIREFOX.real" "$@"

exec iceweasel "$@"

Eine einfache Lösung besteht darin, die letzte Zeile durch Folgendes zu ersetzen:

exec [location of downloaded firefox] "$@"

Gibt es eine andere Möglichkeit, es so einzurichten, dass firefoxmeine heruntergeladene Kopie von Firefox statt ausgeführt wird iceweasel?

Antwort1

Für alle Benutzer auf Ihrem Computer: Schreiben in/usr/bin

Das Skript selbst schlägt eine Methode vor, die eine Alternative zu iceweasel bietet. Ich gehe davon aus, dass das Skript heißt /usr/bin/firefox. Daher lautet die Zeile

FIREFOX="$(which $0)"

würde FIREFOXauf gesetzt /usr/bin/firefox. Somit $FIREFOX.realwäre /usr/bin/firefox.real. Die Zeile

[ -x "$FIREFOX.real" ] && exec "$FIREFOX.real" "$@"

prüft, ob eine ausführbare Datei mit einem .realSuffix vorhanden ist, und führt diese aus. Wenn sie nicht gefunden wird, greift sie auf zurück iceweasel. Um dies zu umgehen, iceweaselmüssen Sie also Folgendes erstellen firefox.real:

sudo ln -sT "$location_to_firefox" /usr/bin/firefox.real

Beachten Sie, dass zum Schreiben in Root-Berechtigungen erforderlich sind /usr/bin.

Nur für dich selbst: Schreiben Sie an~/bin

Wenn Sie Firefox irgendwo in Ihr Home-Verzeichnis heruntergeladen haben, verwenden Sie diese Methode. Debian ist standardmäßig so eingerichtet, dass es Ihrem Pfad ein Verzeichnis voranstellt, wenn Sie ein binVerzeichnis in Ihrem Verzeichnis haben. Sie müssen also nur Folgendes tun:$HOME

mkdir -p ~/bin && ln -sT "$location_to_firefox" ~/bin/firefox

Sobald dieser symbolische Link vorhanden ist, wird er überschrieben /usr/bin/firefox. Melden Sie sich ab und wieder an, damit die Änderungen wirksam werden. Führen Sie zur Bestätigung den Befehl aus command -v firefoxund stellen Sie sicher, dass der Pfad zum Firefox in Ihrem ~/binVerzeichnis ausgegeben wird.

Antwort2

Speziell für Gnome gibt es eine alternative Debian-Konfiguration namens gnome-www-browser. Alternativen unter Debian bieten eine Möglichkeit, eine Reihe möglicher Site-weiter Alternativen für eine bestimmte Funktionalität zu definieren. Im Fall des Gnome-Browsers ist dies einfach ein symbolischer Link zum Browser, der vom Desktop gestartet wird, wenn ein Browser benötigt oder aufgerufen wird.

Mit (8) können Sie Optionen konfigurieren, auflisten und hinzufügen oder entfernen /usr/sbin/update-alternatives. Zum Beispiel:

# update-alternatives --list gnome-www-browser
/usr/bin/chromium
/usr/bin/iceweasel
/usr/bin/opera

Stellen Sie sich also vor, Sie haben gerade die neuesten Binärdateien von Firefox installiert /opt/firefoxund möchten diesen als Standardbrowser für alle Gnome-Benutzer einrichten. Sie müssten zuerst die neue Binärdatei zu Ihrer Liste der verfügbaren Browser hinzufügen:

# update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser /opt/firefox/firefox 100

# update-alternatives --list gnome-www-browser
/opt/firefox/firefox
/usr/bin/chromium
/usr/bin/iceweasel
/usr/bin/opera

# update-alternatives --display gnome-www-browser
gnome-www-browser - auto-mode
  link currently points to /usr/bin/opera 
/opt/firefox/firefox - prority 100
/usr/bin/chromium - priority 40
/usr/bin/iceweasel - priority 70
  slave gnome-www-browser.1.gz: /usr/share/man/man1/iceweasel.1.gz
/usr/bin/opera - priority 200
  slave gnome-www-browser.1.gz: /usr/share/man/man1/opera.1.gz
Current 'best' version is '/usr/bin/opera'

Wie Sie sehen, ist jede Option an eine bestimmte Priorität gebunden, die, wenn die Alternative funktioniert,Automode, definiert, welche Option gewählt wird. Sie können auch sehen, dass ich die Priorität für Firefox auf 100 festgelegt habe und dass das Opera-Paket mit einer Priorität von 200 (!) installiert wird, was es zur Standardeinstellung im Auto-Modus macht. Sie können diese Entscheidung überschreiben, indem Sie festlegen, welche Option Sie übernehmen möchten:

# /usr/bin/update-alternatives --set gnome-www-browser /opt/firefox/firefox

# update-alternatives --display gnome-www-browser
gnome-www-browser - manual-mode
  link currently points to /opt/firefox/firefox 
/opt/firefox/firefox - prority 100
/usr/bin/chromium - priority 40
/usr/bin/iceweasel - priority 70
  slave gnome-www-browser.1.gz: /usr/share/man/man1/iceweasel.1.gz
/usr/bin/opera - priority 200
  slave gnome-www-browser.1.gz: /usr/share/man/man1/opera.1.gz
Current 'best' version is '/usr/bin/opera'

Sie sehen, dass sowohl der Link als auch der Modus aktualisiert wurden.

Als Bonus müssen Sie es nicht firefoxmehr starten alt-F2.

verwandte Informationen