Autostart mehrere Chromium-Fenster positionieren

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo,

    mein Ziel ist es drei Webseiten auf zwei Monitoren darzustellen. Auf einem Monitor sollen zwei Webseiten mit gleicher Größe, nebeneinander, dargestellt werden und auf einem weiteren Monitor, eine Webseite im Fullscreen Mode/ Kiosk Mode.

    Die bereits definierte Fenster Größe sowie Position werden auch übergeben. Alle drei Chromium Fenster übernehmen die Position und Größe des ersten Parameteraufrufs, ignorieren den individuelle übergebenen Parameter und überlagern sich dadurch.

    Wenn ich die einzelnen Befehle jedoch über die Kommandozeile eingebe, öffnet sich jedes Fenster mit seinen individuellen Parametern.

    Über eure Hilfe würde ich mich sehr freuen.

    Grüße Max


    Autostart Webseite Monitor 1 rechts

    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite1
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=chromium-browser --app="<URL>" --window-position=961,0 --window-size=959,1080

    Autostart Webseite Monitor 1 Links

    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite2
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=chromium-browser --app="<URL>" --window-position=0,0 --window-size=960,1080

    Autostart Webseite Monitor 2 Fullscreen/ Kiosk Mode

    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite3
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=chromium-browser --app="<URL>" --window-position=0,1081 --window-size=1920,1080 --kiosk --force-device-scale-factor=1.10
    • Offizieller Beitrag

    Hallo Max_Sch!

    Sieh mal hier:

    Optionen übergeben

    Beim Aufruf eines Programms über die Zeile Exec=... ist die Übergabe von Optionen mit zwei Bindestrichen in der Form PROGRAMM --OPTION nicht möglich, während PROGRAMM -OPTION bzw. ein Bindestrich kein Problem ist. Falls zwei Bindestriche erforderlich sind, bedient man sich des folgenden Konstrukts:

    Code
    Exec=sh -c "PROGRAMM --OPTION"

    ;)

    Davon abgesehen ist imho --app= beim Chromium-Browser nicht nötig. Folgendes sollte funktionieren:

    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite1
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c "chromium-browser --window-position=961,0 --window-size=959,1080 <URL>"
  • Danke für deine schnelle Antwort.

    Ich habe jetzt deinen Vorschlag probiert, leider jedoch ohne Erfolg. Es werden scheinbar nicht die gegebenen Parameter ausgelesen. Das Fenster öffnet im Kiosk sowie mit einer Größe von 1920x1080.

    Grüße Max


    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite1
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c "chromium-browser --window-position=961,0 --window-size=959,1080 https://youtube.com"
  • Edit: Das Problem besteht leider immer noch. Es werden zufällig die Parameter ausgelesen, was die Größe und Position angeht. An dieser Überlagern sie sich dann wieder.

    Ich bin langsam echt am verzweifeln :( :wallbash:

    • Offizieller Beitrag

    Ich habe gerade mal mit 2 Seiten getestet. Beide Seiten werden bei mir im selben Fenster in 2 Tabs geöffnet. Mit der Option --new-window sind es schon mal 2 Fenster, die sich aber auch überlagern. :conf: Mal sehen ob ich da noch etwas brauchbares finde.

    //Edit:

    Max_Sch Oder Du bist vielleicht auch schneller: https://peter.sh/experiments/chromium-command-line-switches/

  • Ich jetzt den Tag über verschiedene Sachen, wie zum Beispiel

    Code
    --process-per-tab

    probiert.

    Ebenfalls habe ich noch

    Zitat

    --process-per-site

    probiert, führte aber leider ebenfalls nicht zum erfolg.

    :wallbash::wallbash:

    Grüüüße Max

  • In der aktuellen Raspian Version hat sich zur Vorversion im 2-Monitor Betrieb einiges geändert (siehe ->)

    Und unter Linux war der Mehr-Monitor Betrieb, der im Grunde von der Anzahl der Bildschirm-Karten abhängig ist, umfangreich konfigurierbar. Auf welche Konfigurationen die light Verdion des Display Managers eingeschränkt ist, weiss ich nicht

    Eine gemeinsame Display-Arbeitsfläche über 2 Monitore (Ein X-Server, X:0)

    Zwei (oder mehrere) getrennte Display-Arbeitsflächen, jeder Monitor bekommt seinen X-Server (X:0, X:1,...)

    Was bei Dir läuft und möglich ist, kannst Du allenfalls aus den /var/log/Xorg* Logfiles entnehmen.

    Wenn die drei Browserfenster Anzeigen auf zwei Bildschirmen hauptsächlich die einzige Anwendung ist, kannst Du auch das ganze Window-/Display Management weglassen und in die Textkonsole starten. Dann mit xinit 2 X-Server starten und jedem sein Programm zuweisen. Siehe < man xinit >

    Ins Grafiksystem kommst Du trotzdem, allerdings (nach beenden der beiden xinit ) mit Trxtkonsoleneingabe "startx".

    [Zu bedenken ist auch, dass nicht beide Monitore im HD Modus mit 60 Mhz arbeiten können, der zweite ist auf 30 MHz zu bremsen.]

    Servus !

    RTFM = Read The Factory Manual, oder so

    • Offizieller Beitrag

    Das ist echt zum Mäusemelken. Manuell funktionieren die Positionierungen der Fenster, aber im Autostart überlagern die sich einfach. Laufen die in der selben Instanz oder anders gefragt, wie könnte man das in einem Skript trennen? :conf: Auch der Aufruf jedes Fensters über verschiedene Skripte bringen übrigens dasselbe Ergebnis.

    Max_Sch Sorry! Ich bleibe dran, aber das ist mir z.Zt. auch ein Rätsel.

  • Auch der Aufruf jedes Fensters über verschiedene Skripte bringen übrigens dasselbe Ergebnis.

    So versuche ich es die ganze Zeit, der Übersichtlichkeit halber schon.

    Ich bin ratlos. Mein guter Freund google bringt mich auch nicht mehr weiter.:helpnew:

    • Offizieller Beitrag

    Oh man, eine Schwere Geburt... :shy: Vielen Dank an Linus, der mir dabei den richtigen Tipp gab!

    Die Lösung versteckt sich in den Optionen:

    Code
    --new-window --user-data-dir=/tmp

    Wobei sich pro Browseraufruf / *.desktop-Datei das --user-data-dir ändern muss.

    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite1
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c 'chromium-browser --new-window --user-data-dir=/tmp/browser-1 --window-position="0,0" --window-size="959,1080" https://duckduckgo.com'
    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite2
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c 'chromium-browser --user-data-dir=/tmp/browser-2 --new-window --window-position="961,0" --window-size="959,1080" https://google.de'
    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite3
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c 'chromium-browser --user-data-dir=/tmp/browser-3 --new-window --window-position="0,1081" --window-size="1920,1080" --kiosk --force-device-scale-factor=1.10 https://www.startpage.com/'

    Bei der dritten Datei bin ich mir, weil mit den zusätzlichen Optionen ungetestet, nicht sicher. ;)

  • Ich danke dir erstmal von ganzem Herzen. Ich bin leider aktuell nicht zuhause, weshalb ich es nicht testen kann. Ich werde Montag Rückmeldung geben. Ich wünsche dir erstmal noch eine schöne Woche bzw. baldiges Wochenende.

    Gruß

    Max

    Oh man, eine Schwere Geburt... :shy: Vielen Dank an Linus, der mir dabei den richtigen Tipp gab!

    Die Lösung versteckt sich in den Optionen:

    Code
    --new-window --user-data-dir=/tmp

    Wobei sich pro Browseraufruf / *.desktop-Datei das --user-data-dir ändern muss.

    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite1
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c 'chromium-browser --new-window --user-data-dir=/tmp/browser-1 --window-position="0,0" --window-size="959,1080" https://duckduckgo.com'
    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite2
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c 'chromium-browser --user-data-dir=/tmp/browser-2 --new-window --window-position="961,0" --window-size="959,1080" https://google.de'
    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite3
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c 'chromium-browser --user-data-dir=/tmp/browser-3 --new-window --window-position="0,1081" --window-size="1920,1080" --kiosk --force-device-scale-factor=1.10 https://www.startpage.com/'

    Bei der dritten Datei bin ich mir, weil mit den zusätzlichen Optionen ungetestet, nicht sicher. ;)

  • Oh man, eine Schwere Geburt... :shy: Vielen Dank an Linus, der mir dabei den richtigen Tipp gab!

    Die Lösung versteckt sich in den Optionen:

    Code
    --new-window --user-data-dir=/tmp

    Wobei sich pro Browseraufruf / *.desktop-Datei das --user-data-dir ändern muss.

    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite1
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c 'chromium-browser --new-window --user-data-dir=/tmp/browser-1 --window-position="0,0" --window-size="959,1080" https://duckduckgo.com'
    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite2
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c 'chromium-browser --user-data-dir=/tmp/browser-2 --new-window --window-position="961,0" --window-size="959,1080" https://google.de'
    Code
    [Desktop Entry]
    Type=Application
    Name=Webseite3
    Comment=Chromium Webbrowser
    NoDisplay=false
    Exec=sh -c 'chromium-browser --user-data-dir=/tmp/browser-3 --new-window --window-position="0,1081" --window-size="1920,1080" --kiosk --force-device-scale-factor=1.10 https://www.startpage.com/'

    Bei der dritten Datei bin ich mir, weil mit den zusätzlichen Optionen ungetestet, nicht sicher. ;)

    Mega Dank, es funktioniert supi.:danke_ATDE::bravo2:

    Jedoch stehe ich jetzt vor der nächsten Herausforderung, dass die Ad-ons bzw Erweiterungen wie Tampermonkey bei jedem Start wieder verschwunden sind. Gibt es dafür vielleicht noch eine Möglichkeit, wie diese erhalten bleiben? Die zwei Grunderweiterungen "uBlock Origin" und "h264ify" sind die beiden alleinigen noch existierenden nach dem neustart.:wallbash:
    Ich bin dir bisher aber auf jeden Fall schon einmal mega dankbar für deine Hilfe.

    Grüße Max

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!