Iceweasel


Vorwort

Das ist der Firefox Browser von Debian. Er heisst aber Iceweasel

Namensgebung

Für Einstellungen und Bedienung kann man gut die Firefox Anleitungen benützen.

Command Line

Summary Command Line

ICEWEASEL(1)                                                           Linux User's Manual                                                           ICEWEASEL(1)

NAME
       iceweasel - a Web browser for X11 derived from the Mozilla browser

SYNOPSIS
       iceweasel [OPTIONS] [URL]

       /usr/lib/iceweasel/iceweasel [OPTIONS] [URL]

DESCRIPTION
       Iceweasel is an open-source web browser, designed for standards compliance, performance and portability.

USAGE
       If there is an Iceweasel browser already running, iceweasel will arrange for it to create a new browser window; otherwise it will start a new instance.

OPTIONS
       A summary of the options supported by iceweasel is included below.

   X11 options
       --display=DISPLAY
              X display to use

       --sync Make X calls synchronous

       --no-xshm
              Don't use X shared memory extension

       --xim-preedit=STYLE

       --xim-status=STYLE

       --g-fatal-warnings
              Make all warnings fatal

   Mozilla options
       -h, -help
              Show summary of options.

       -v, -version
              Print Iceweasel version.

       -P [profile]
              Start with profile. When no profile is given, displays the Profile Manager. May require -no-remote, see below.

       -migration
              Start with migration wizard. May require -no-remote, see below.

       -ProfileManager
              Start with profile manager. May require -no-remote, see below.

       -no-remote
              Don't  connect  to  a  running Iceweasel instance. This option can be necessary in conjunction to several of the options above, that won't have any
              effect when an Iceweasel instance is running unless -no-remote is used at the same time.

       -UILocale locale
              Start with locale resources as User Interface locale. By default, it is guessed from environment and available locales for Iceweasel.

       -safe-mode
              Starts Iceweasel in safe mode, i.e. disabling all extensions and showing a bit more debugging messages.

       -jsconsole
              Start with Javascript Console

       -new-window URL
              Open URL in a new window in an already running Iceweasel process.

       -new-tab URL
              Open URL in a new tab in an already running Iceweasel process.

       -chrome url
              Load the specified chrome.


ENVIRONMENT
       MOZILLA_DISABLE_PLUGINS - when set, totally disables loading browser plugins (the ones that appear at the about:plugins url)

FILES
       /usr/bin/iceweasel - symbolic link to /usr/lib/iceweasel/iceweasel.

       /usr/lib/iceweasel/iceweasel - Iceweasel executable.

       /usr/lib/iceweasel/firefox-bin - Legacy executable.

BUGS
       To report a bug, please visit http://bugzilla.mozilla.org/ and/or report bugs to the Debian Bug Tracking System, as usual.

AUTHORS
       The Mozilla Organization
              http://www.mozilla.org/about.html

iceweasel                                                                November 4, 2004                                                            ICEWEASEL(1)

Anwenungsbeispiel Iceweasel/Firefox Start-Scripts

Vorwort - Fehlende cmd Befehle

Es sind leider ein paar Command Line Befehle nicht vorhanden im Iceweasel/Firefox, darum wird der automatische Start etwas komplizierter als angedacht.

Pobleme: Einmal öffnet es mir die Seite von der vorhergehenden Sitzung mit, mal nicht, mal ein Restore wegen killall iceweasel etc....

Wenn möglich sollte man immer mit wmctrl -c (close gracefully) die Anwendung schliessen. Aber auch dann kommt noch ein TAB about:session restore, egal. Lieber das als zweimal meine Seite, die etwas rumrendert (CPU/MEM). Auch shutdown/reboot PC Befehle würde ich zuerst über ein wmctrl -c fahren. Und bei 24 Stunden 7 Tage Betrieb, am besten ein crontab cache cleaner.

Nachtrag: Bei Iceweasel Einstellung Leere Seite anzeigen und die Startseite leer lasen, keine Eintrag, oder rauslöschen setzen, und im Script etwas warten nach dem wmctrl -c und killall (killall ist zur Sicherheit nur). Dann funktioniert es, ohne das alte TAB's oder about:session_restore nicht wieder starten. Das Cache mal von Hand Alles löschen (auch Oflline Daten etc....). Die Scripte unten sind dafür angepasst.

Vermisst wird:

Meine Beispiele mit smsloop ruft man für den start ungefähr so auf in einem autostart Script. Das schmeisst es an in den Hintergrund und wird selbständig.

smsloop & disown

Für den stop genügt:

smsloop stop

Iceweasel Aufruf

Zu dem iceweasel Aufruf kann man noch sagen, laufe mit weniger wichtigen Priorität, mach mich als eigenen Hintergrund Prozess etc.. Bei mir ist es besser, wenn ich weniger Prioträt gebe, weil das Hauptprogramm zuerst seine Daten eher sauber fertig bauen kann.

Irgendwas davon könnt ihr mal versuchen:

# Standardaufruf, evt. in Hintergrund
iceweasel -new-window "http://example.org/example.html" >/dev/null 2>&1 &
iceweasel -new-window "http://example.org/example.html" >/dev/null 2>&1 & disown

# Mit exec, evt. in Hintergrund
exec /usr/bin/iceweasel --new-window "http://example.org/seite1.html" >/dev/null 2>&1 &
exec /usr/bin/iceweasel --new-window "http://example.org/setie1.html" >/dev/null 2>&1 & disown

# Weniger Prioträt, evt. in Hintergrund
nice -n 5 /usr/bin/iceweasel --new-window "http://example.org/seite1.html" >/dev/null 2>&1 &
nice -n 5 /usr/bin/iceweasel --new-window "http://example.org/seite1.html" >/dev/null 2>&1 & disown

Gespiegelter Monitor mal ja mal nein

HDMI1 ist immer on, und so alle ca. 30 Sekungen, gucke ich nach ob HDMI2 läuft, wenn ja, spiegle ich es dahin mit xrandr. Wer seine Anschlüsse nicht kennt auf der Grafikkarte, nimmt ein Terminal und tippt xrandr mal ein.

Bei der Zeile while [ -z $icew1win ];do icew1win=wmctrl -lp | grep Raster | cut -d " " -f 1;done müsst ihr selber gucken, nach was grep suchen soll, also wie eure Seite heisst. In einem Terminal von Hand wmctrl -lp zeigt die übersicht der geöffneten Fenster, um herauszufinden was man bei grep einsetzen soll als Suchkriterium.

/!\ Das erste Zeichen darf kein Leerzeichen sei beim speichern, wiki bedingt.

  #!/bin/sh
# scriptname: smsloop (set my screen in loop mode) 
# chmod 755 /usr/local/bin/smsloop
#
# Set display for Multiple Grafic Head Virtualbox Client

# VBOX0 is Main Display, thatsway is no set_pos needed.
#vbox0_set_pos="--left-of VBOX1"
#vbox0_set_pos="--right-of VBOX1"
vbox0_set_pos=""
vbox0_rate=60
vbox0_resolution=1360x768
#vbox0_resolution=1920x1080i

#vbox1_set_pos="--left-of VGA1"
vbox1_set_pos="--right-of VGA1"
vbox1_rate=6
vbox1_resolution=1360x768
#vbox1_resolution=1920x1080i

# Script
#--------------------------------------------------------------

cmd="start"
if [ -n "$1" ];then cmd="$1";fi

case "$cmd" in
start)

for pid in `cat /run/lock/$USER"-smsloop".pid 2>/dev/null`;do kill -9 $pid >/dev/null 2>&1;done;rm /run/lock/$USER"-smsloop".pid
pid=`echo $$`;echo $pid >> /run/lock/$USER"-smsloop".pid

icew1win=""
for win in `cat /run/lock/$USER"-iceweasel1".win 2>/dev/null`;do wmctrl -i -c $win >/dev/null 2>&1;done;rm /run/lock/$USER"-iceweasel1".win >/dev/null 2>&1
sleep 5;killall iceweasel;sleep 2
iceweasel -new-window "http://example.org/example.html" >/dev/null 2>&1 &
while [ -z $icew1win ];do icew1win=`wmctrl -lp | grep Raster | cut -d " " -f 1`;done
echo $icew1win >> /run/lock/$USER"-iceweasel1".win
wmctrl -i -R $icew1win -b add,fullscreen


while true; do

#####################
# HDMI1
xrandr | grep HDMI1 >/dev/null 2>&1; if [ $? -eq 0 ];then
#vbox0_resolution=`xrandr -q | grep -A 1 HDMI1 | tail -n 1 | cut -d " " -f 4`
#echo "HDMI1: "$vbox0_resolutionx
xrandr --output HDMI1 --mode $vbox0_resolution $vbox0_set_pos --primary

else
#xmessage -center -timeout 1 "HDMI1 Monitor not connected"
:
fi

########################
# HDMI2
xrandr | grep HDMI2 >/dev/null 2>&1; if [ $? -eq 0 ];then
#vbox1_resolution=`xrandr -q | grep -A 1 HDMI2 | tail -n 1 | cut -d " " -f 4`
#echo "HDMI2: $vbox1_resolution"
xrandr --output HDMI2 --mode $vbox1_resolution --rate $vbox1_rate $vbox1_set_pos --same-as HDMI1


else
#xmessage -center -timeout 1 "HDMI2 Monitor not connected"
:
fi
sleep 30
done
;;

stop)
for pid in `cat /run/lock/$USER"-smsloop".pid 2>/dev/null`;do kill -9 $pid >/dev/null 2>&1;done;rm /run/lock/$USER"-smsloop".pid
for win in `cat /run/lock/$USER"-iceweasel1".win 2>/dev/null`;do wmctrl -i -c $win >/dev/null 2>&1;done;rm /run/lock/$USER"-iceweasel1".win >/dev/null 2>&1
sleep 5;killall iceweasel;sleep 2
;;

esac

exit 0

Erweiterter Monitor mal ja mal nein

DVI-0 ist immer an (seite1.html). HDMI-0 ist gelegentlich an, und bekommt auch eine andere Seite (seite2.html) als auf DVI-0. So alle 30 Sekunden wird das geprüft.

Bei der Zeile while [ -z $icew1win ];do icew1win=wmctrl -lp | grep Raster | cut -d " " -f 1;done müsst ihr selber gucken, nach was grep suchen soll, also wie eure Seite heisst. In einem Terminal von Hand wmctrl -lp zeigt die übersicht der geöffneten Fenster, um herauszufinden was man bei grep einsetzen soll als Suchkriterium.

/!\ Das erste Zeichen darf kein Leerzeichen sei beim speichern, wiki bedingt

 #!/bin/bash
# scriptname: smsloop (set my screen in loop mode) 
# chmod 755 /usr/local/bin/smsloop
#
# Set display for Multiple Grafic Head Virtualbox Client

# VBOX0 is Main Display, thatsway is no set_pos needed.
#vbox0_set_pos="--left-of VBOX1"
#vbox0_set_pos="--right-of VBOX1"
vbox0_set_pos="--primary"
vbox0_rate=60
#vbox0_resolution=1360x768
vbox0_resolution=1920x1080

#vbox1_set_pos="--left-of VGA1"
#vbox1_set_pos="--same-as DVI-0"
vbox1_set_pos="--right-of DVI-0"
vbox1_rate=60
#vbox1_resolution=1360x768
vbox1_resolution=1920x1080


# Script
#--------------------------------------------------------------

cmd="start"
if [ -n "$1" ];then cmd="$1";fi

case "$cmd" in
start)
for pid in `cat /run/lock/$USER"-smsloop".pid 2>/dev/null`;do kill -9 $pid >/dev/null 2>&1;done;rm /run/lock/$USER"-smsloop".pid
pid=`echo $$`;echo $pid >> /run/lock/$USER"-smsloop".pid


for win in `cat /run/lock/$USER"-iceweasel1".win 2>/dev/null`;do wmctrl -i -c $win >/dev/null 2>&1;done;rm /run/lock/$USER"-iceweasel1".win >/dev/null 2>&1
for win in `cat /run/lock/$USER"-iceweasel2".win 2>/dev/null`;do wmctrl -i -c $win >/dev/null 2>&1;done;rm /run/lock/$USER"-iceweasel2".win >/dev/null 2>&1
sleep 5;killall iceweasel;sleep 2

while true; do


#####################
# DVI-0
state=`xrandr | grep DVI-0 | cut -d " " -f 2`
if [ "$state" = "connected" ];then
        vbox0_resolution=`xrandr -q | grep -A 1 DVI-0 | tail -n 1 | cut -d " " -f 4`
        #echo "DVI-0: "$vbox0_resolution;exit 0
        xrandr --output DVI-0 --mode $vbox0_resolution --rate $vbox0_rate $vbox0_set_pos >/dev/null 2>&1
        if [ ! -f /run/lock/$USER"-iceweasel1".win ];then
                exec /usr/bin/iceweasel --new-window "http://example.org/seite1.html" >/dev/null 2>&1 &
                icew1win=""
                while [ -z $icew1win ];do icew1win=`wmctrl -lp | grep Shop | cut -d " " -f 1`;done
                echo $icew1win >> /run/lock/$USER"-iceweasel1".win
                wmctrl -i -R $icew1win -b remove,fullscreen
                sleep 1
                wmctrl -i -r $icew1win -e 0,100,100,1700,800
                sleep 1
                wmctrl -i -R $icew1win -b add,fullscreen
#               sleep 3

        fi
else
        for win in `cat /run/lock/$USER"-iceweasel1".win 2>/dev/null`;do wmctrl -i -c  $win >/dev/null 2>&1;done;rm /run/lock/$USER"-iceweasel1".win >/dev/null 2>&1
        #xmessage -center -timeout 1 "DVI-0 Monitor not connected"
        :
fi

########################
# HDMI-0
state=`xrandr | grep HDMI-0 | cut -d " " -f 2`
if [ "$state" = "connected" ];then
        #vbox1_resolution=`xrandr -q | grep -A 1 HDMI-0 | tail -n 1 | cut -d " " -f 4`
        #echo "HDMI-0: "$vbox1_resolution;exit 0
        xrandr --output HDMI-0 --mode $vbox1_resolution --rate $vbox1_rate $vbox1_set_pos >/dev/null 2>&1
        if [ ! -f /run/lock/$USER"-iceweasel2".win ];then
#               sleep 3
                exec /usr/bin/iceweasel --new-window  "http://example.org/seite2.html" >/dev/null 2>&1 &
                icew2win=""
                while [ -z $icew2win ];do icew2win=`wmctrl -lp | grep TankeV | cut -d " " -f 1`;done
                echo $icew2win >> /run/lock/$USER"-iceweasel2".win
                wmctrl -i -R $icew2win -b remove,fullscreen
                sleep 1
                wmctrl -i -r $icew2win -e 0,2020,100,1700,800
                sleep 1
                wmctrl -i -R $icew2win -b add,fullscreen
#               sleep 3
        fi
else
        for win in `cat /run/lock/$USER"-iceweasel2".win 2>/dev/null`;do wmctrl -i -c $win >/dev/null 2>&1;done;rm /run/lock/$USER"-iceweasel2".win >/dev/null 2>&1
        #xmessage -center -timeout 2 "HDMI-0 Monitor not connected"
        :
fi
sleep 30
done
;;

stop)
for win in `cat /run/lock/$USER"-iceweasel1".win 2>/dev/null`;do wmctrl -i -c $win >/dev/null 2>&1;done;rm /run/lock/$USER"-iceweasel1".win >/dev/null 2>&1
for win in `cat /run/lock/$USER"-iceweasel2".win 2>/dev/null`;do wmctrl -i -c $win >/dev/null 2>&1;done;rm /run/lock/$USER"-iceweasel2".win >/dev/null 2>&1
for pid in `cat /run/lock/$USER"-smsloop".pid 2>/dev/null`;do kill -9 $pid >/dev/null 2>&1;done;rm /run/lock/$USER"-smsloop".pid
sleep 5;killall iceweasel;sleep 2
;;

esac

exit 0

Shutdown / Reboot

Dazu ersellt man sich am besten zwei kleine Scipte. Diese linkt man dann mit alacarte und legt sie noch zu Favoriten in den Desktop.

/!\ Das erste Zeichen darf kein Leerzeichen sei beim speichern, wiki bedingt

 #!/bin/bash
# Scriptname: do_shutdown
# Installation: Save to /usr/local/bin/do_shutdown and chmod 755 /usr/local/bin/do_shutdown

smsloop stop
sudo /sbin/shutdown -h now
exit 0

 #!/bin/bash
# Scriptname: do_reboot
# Installation: Save to /usr/local/bin/do_reboot and chmod 755 /usr/local/bin/do_reboot

smsloop stop
sudo /sbin/reboot
exit 0

Iceweasel Cache leeren bei Dauerbetrieb

Ich schmeisse alle 5 Minuten das Browser Cache weg. Bei einem System (knappe CPU und Memeory), schaukelt sich die Cache Verwaltung vom Iceweasel irgendwann hoch nach ein paar Stunden Betrieb. Und mein Load geht hoch. Versuch mit Iceweasel/Firefox Einstellungen Cache auf 100MB fix zu stellen, sind gescheittert, es checkt doch noch zuviele Dateien durch im Browser. (Ich vermute mal das) . Darum bin ich zurück auto automatisch wie Standard ist für das Cache und mache es händisch, wirklich mal wieder nen blanken Ordner, so kann der Browser seinen internen Variablen wieder mal etwas rausputzen.

Also als USER starte ich da crontab -e und trage ein alle 5 Minuten remove ein. USER müsst ihr anpassen, und das Profildingsnamen da.

*/5 * * * * rm /home/USER/.cache/mozilla/firefox/Profildings_m5kegw4b.default/cache2/entries/* > /dev/null 2>&1

Besser ist vermutlich: (alle 30 Minuten die letzen 20 Minuten löschen, 10 Minuten stehen lassen)

*/30 * * * * find /home/USER/.cache/mozilla/firefox/Profildings_m5kegw4b.default/cache2/entries/* -type f -amin +20 -exec rm "{}" \; > /dev/null 2>&1

Iceweasel (zuletzt geändert am 2016-06-25 09:57:16 durch 178-82-198-142)