BITTE BEACHTEN SIE

BITTE BEACHTEN SIE

Ich möchte mein unbeaufsichtigtes Skript verbessern, indem ich ein Firefox-Add-On hinzufüge, aber ich finde den Weg nicht,

Kann jemand helfen, herauszufinden, wie das geht?

Beispiel: (Möchten Sie das AdblockPlus-Plugin installieren und eine neue Standardwebseite festlegen)

wget https://addons.mozilla.org/firefox/downloads/latest/1865/addon-1865-latest.xpi
firefox -silent -install-global-extension addon-1865-latest.xpi -setDefaultBrowser www.google.es

Dank im Voraus.

Antwort1

Mit Ihrer Methode

gksudo firefox -install-global-extension addon-1865-latest.xpischeint bei Ihnen zu funktionieren. Dadurch wird die Erweiterung für alle Benutzer Ihres Systems installiert.

Um die Erweiterung nur für Ihren Benutzer zu installieren, verwenden Sie den Erweiterungspfad als Argument

firefox addon-1865-latest.xpi

Sie müssen Installjedoch trotzdem auf die Schaltfläche klicken!

Automatisieren der Installation

Firefoxbenötigt nicht den Dateinamen des Add-ons, sondern die Kennung des Add-ons als Paketnamen. Das bedeutet, dass Sie ein Add-on, wenn Sie es ohne Benutzereingriff installieren möchten, in einen Ordner mit dem Namen der Add-on-Kennungszeichenfolge extrahieren müssen, nicht mit dem Namen des Add-ons.

Die Identifikationszeichenfolge befindet sich in den ersten Zeilen der Manifestdatei zur Add-On-Installation install.rdfund sieht folgendermaßen aus: <em:id>{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}</em:id>. Alles darin {}(einschließlich der geschweiften Klammern) ist die Kennung.

Damit ein Add-on funktioniert, müssen Sie das Paket extrahieren, den Ordner, der die Dateien enthält, in die Add-on-Kennungszeichenfolge umbenennen und ihn entweder im globalen Add-on-Ordner oder im Benutzer-Add-on-Ordner platzieren.

Globale Add-On-Installation

Wenn Sie eine Erweiterung automatisch für alle Benutzer in Ihrem System installieren möchten, müssen Sie sie extrahieren, den Ordner, der das Add-on enthält, in die ID-Zeichenfolge des Add-ons umbenennen und in den firefoxglobalen Erweiterungsordner kopieren /usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/. Alles, was Sie dort verwenden, wird automatisch aufgerufen, wenn ein Benutzer es öffnet firefox.

Benutzerspezifische Installation

Wenn Sie eine Erweiterung automatisch für nur einen Benutzer in Ihrem System installieren möchten, müssen Sie sie extrahieren, den Ordner, der das Add-on enthält, in die ID-Zeichenfolge des Add-ons umbenennen und ihn in den firefoxOrdner „Erweiterungen“ des Benutzers kopieren /home/user_name/.mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/(erstellen Sie ihn, falls er noch nicht vorhanden ist). Alles, was Sie dort verwenden, wird automatisch aufgerufen, wenn ein Benutzer öffnet firefox.

So bereiten Sie ein Add-on für die automatische Installation vor – Beispiel

Erstellen Sie zu Hause einen extensionsOrdner und laden Sie das Add-on dorthin herunter

mkdir ~/extensions
cd ~/extensions
wget https://addons.mozilla.org/firefox/downloads/latest/1865/addon-1865-latest.xpi

Extrahieren Sie es und löschen Sie das Original

unzip ~/extensions/addon-1865-latest.xpi
rm ~/extensions/addon-1865-latest.xpi

Lesen Sie die erste Zeile in der install.rdfDatei, um die ID des Add-Ons zu erhalten (in diesem Fall ist es {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}). und erstellen Sie einen Ordner mit diesem Namen

mkdir ~/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}

Verschieben Sie alle Dateien in Ihrem extensionsOrdner in den neu erstellten ~/extensions/{d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}. Sie können die Installation durchführen {d10d0bf8-f5b5-c8b4-a8b2-2b9879e08c5d}, indem Sie den Ordner wie beschrieben für eine lokale oder eine globale Installation verschieben.

So legen Sie die Standard-Startseite fest

Um Ihre Homepage zu ändern, ohne die Einstellungen in Firefox zu verwenden, müssen Sie ~/.mozilla/firefox/*.default/prefs.js(wo *.defaultein Ordner ~/.mozilla/firefoxfür Ihren Benutzer erstellt wird) bearbeiten und diese Zeile am Ende hinzufügen

user_pref("browser.startup.homepage", "http://uptechtalk.com");

oder mit diesem Befehl

echo "user_pref("browser.startup.homepage", "http://uptechtalk.com");" >> ~/.mozilla/firefox/*.default/prefs.js

Sie müssen dies nach dem Schließen tun firefox, sonst überschreibt das Programm die Einstellung beim Beenden.

Wenn Ihr Benutzer noch nicht verwendet wurde firefoxund Sie die Homepage für alle neuen Benutzer festlegen möchten (Homepage global festlegen), verwenden Sie diesen Befehl

echo "user_pref("browser.startup.homepage", "http://uptechtalk.com");" >> /etc/xul-ext/ubufox.js

Anmerkungen zu deiner Frage

-silentnicht existiert, werden Sie xpitrotzdem aufgefordert, die Erweiterung zu installieren und müssen auf die Schaltfläche zum Installieren klicken.

-setDefaultBrowserwird Ihre Homepage nicht festlegen, sondern firefoxIhr Standardbrowser

Antwort2

Dies ist problematisch, da in verschiedenen Versionen von Firefox unterschiedliche Dinge funktionieren und in manchen gar nichts. Bei den neueren Versionen müssen Sie die .xpi-Datei einfach umbenennen <addon id>.xpiund in einem Erweiterungsordner ablegen. Wenn Sie Firefox anschließend starten, werden Sie aufgefordert, die Installation aller dort hinzugefügten Add-Ons zu akzeptieren.

Hier sind einige BASH-Funktionen, die Ihnen das Leben leichter machen.

EXTENSIONS_SYSTEM='/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/'
EXTENSIONS_USER=`echo ~/.mozilla/firefox/*.default/extensions/`

# -------------------------- xpi tools ---------------------------------

get_addon_id_from_xpi () { #path to .xpi file
    addon_id_line=`unzip -p $1 install.rdf | egrep '<em:id>' -m 1`
    addon_id=`echo $addon_id_line | sed "s/.*>\(.*\)<.*/\1/"`
    echo "$addon_id"
}

get_addon_name_from_xpi () { #path to .xpi file
    addon_name_line=`unzip -p $1 install.rdf | egrep '<em:name>' -m 1`
    addon_name=`echo $addon_name_line | sed "s/.*>\(.*\)<.*/\1/"`
    echo "$addon_name"
}

# Installs .xpi given by relative path
# to the extensions path given
install_addon () {
    xpi="${PWD}/${1}"
    extensions_path=$2
    new_filename=`get_addon_id_from_xpi $xpi`.xpi
    new_filepath="${extensions_path}${new_filename}"
    addon_name=`get_addon_name_from_xpi $xpi`
    if [ -f "$new_filepath" ]; then
        echo "File already exists: $new_filepath"
        echo "Skipping installation for addon $addon_name."
    else
        cp "$xpi" "$new_filepath"
    fi
}

Lassen Sie uns Adblock installieren..

wget https://addons.mozilla.org/firefox/downloads/latest/1865/addon-1865-latest.xpi
install_addon addon-1865-latest.xpi "$EXTENSIONS_USER"

Antwort3

Bei den neuesten Versionen von Firefox wurde das Verfahren erheblich vereinfacht!

  1. Entpackenextension.xpi
  2. Lesen applications.gecko.idvonmanifest.json
  3. Umbenennen extension.xpiin<ID>.xpi
  4. Kopieren Sie es in einen der aufgeführten StandardinstallationsordnerHier

Antwort4

BITTE BEACHTEN SIE

Ab Firefox 74 ist es NICHT MEHR MÖGLICH, diese Aufgabe auszuführen.

Verbringen Sie keine Stunden mehr damit, zu versuchen, dies zum Laufen zu bringen!

verwandte Informationen