Posts mit dem Label Firefox werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Firefox werden angezeigt. Alle Posts anzeigen

22.11.18

Firefox Extensions im JSON Format parsen

Ich suche ein bestimmtes Addon. Zunächst die komplette Anzeige

jq -r '.'  ~/.mozilla/firefox/xead1hks.default/extensions.json
 (Pfad zu den Extensions entsprechend anpassen)

 Alle Pfade zu den installierten Extensions ausgeben

jq -r '.addons[]| "\(.id) \(.path) \(.locales[0].name)"' ~/.mozilla/firefox/xead1hks.default/extensions.json

Suche nach einer bestimmten Extension.
Um eine Variable zu übergeben, muss diese als Argument an jq übergeben werden:
Beispiel: Suche nach Namen => $1 in Bash => $v1 in jq

found_ext=$(jq -r --arg v1 "$1" '.addons[] | select(.locales[0].name == $v1) | .path'  $extension_path)

 

 

IP-Adressen von Amazon parsen:

{
  "syncToken": "1640134401",
  "createDate": "2021-12-22-00-53-21",
  "prefixes": [
    {
      "ip_prefix": "3.5.140.0/22",
      "region": "ap-northeast-2",
      "service": "AMAZON",
      "network_border_group": "ap-northeast-2"
    },
 

wget -qO-  https://ip-ranges.amazonaws.com/ip-ranges.json | jq '.prefixes[] | .ip_prefix' -r

 

14.9.15

Addon für Firefox entwickeln - Quick steps

Ziel: Ich möchte ein einfaches Addon für den Firefox entwickeln. Diese Kurzanleitung basiert auf
https://developer.mozilla.org/en-US/Add-ons/SDK/Tools/jpm#Installation.
Achtung: Ab Version 43 des FF werden unsignierte Addons nicht mehr ausgeführt (https://support.mozilla.org/de/kb/Add-on-Signierung-in-Firefox?as=u&utm_source=inproduct)


Auf einem Linux-System mit Root-Rechten ausführen (hier Ubuntu):

NPM-Paketmanager installieren

apt-get install npm

Installieren von jpm

npm install jpm --global


Jetzt kann man sich die Befehle anzeigen lassen mit

jpm



Bei Auftauchen der Fehlermeldung

/usr/bin/env: node: Datei oder Verzeichnis nicht gefunden


hilft ein

ln -s /usr/bin/nodejs /usr/bin/node

Dann neues Addon starten

mkdir my-addon
cd my-addon
jpm init
Damit wird das Grundgerüst erstellt. Um das Addon zu testen, gibt man ein

jpm run -b /usr/bin/firefox

-b bedeutet der Pfad zum Binary des FF.

Zum Erstellen eingeben

jpm xpi

 Wenn etwas getestet werden muss


jpm test

Optional: -v => verbose, erweiterte Ausgabe. 
Dadurch konnte ich feststellen, dass jpm Firefox bei mir unter /usr/lib64/firefox sucht.
Durch 

sudo mkdir /usr/lib64
sudo ln -s /usr/bin/firefox /usr/lib64/firefox

muss ich den Pfad zum Binary nun nicht mehr angeben.
 
 

19.8.13

Firefox - Plugin Entwicklung

An dieser Stelle möchte ich beschreiben, wie man ein Firefox-Plugin entwickeln kann.
Ich weiß, dass es schon einige Anleitungen in dieser Form gibt, vielleicht aber kann man auch hier etwas lernen ; )
Das Beispiel soll ein Plugin sein, welches eine Whois-Abfrage zu einer Domain oder IP-Adresse durchführt.

Was das Plugin leisten soll:

  • Der mit der Maus selektierte Text (IP oder Domain) soll ausgewertet und an eine bestimmte URL geschickt werden
  • Die Antwort mit den Whois-Informationen soll in einem neuen Div erscheinen; alternativ: neues Tab


Was muss ich vorher machen?


Der Code:

exports.main = function() {
   
    var contextMenu = require("context-menu");
    var tabs = require("tabs");
    var selection = require("selection");
    var Request = require('request');
   
    var menuItem = contextMenu.Item({
        label: "Whois Auskunft",
        context: contextMenu.SelectionContext(),
        contentScript: 'self.on("click", function() {'+
                            'var text = window.getSelection().toString();'+
                            'self.postMessage(text);'+
                            '});',
        onMessage: function(text) {
                        tabs.open("http://whois.domaintools.com/"+text);
                    }                       
        }) ;
  

    };

Tipps:

  • Debuggen → Fehlerkonsole vom Firefox
    Console.log(„Nachricht“);



to be continued....

Openhab und Ecoflow Max - API Anbindung

 Ich wollte die neu erworbene Powerstation in Openhab einbinden, um den aktuellen Status (Ladestand etc.) über Openhab auswerten zu können. ...