Programe beim starten einer Arbeitsfläche zuordnen

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
lewendi
Beiträge: 62
Registriert: 17.01.2012 18:07:55
Wohnort: Rosenheim

Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von lewendi » 25.11.2024 14:53:20

Debian 12 Cinnamon

Servus zusammen,
ich habe unter "Systen-Einstellungen" -> "Startprograme" folgende Programe eingerichtet.

1. Dolphin
2. Thunderbird
3. Brave-Browser

diese möchte ich den einzelnen Arbeitsflöchen zuordnen, so dass beim Progromstart Dolphin auf der Arbeitsfläche 2 , Tunderbird auf 3 und Brave auf 4 liegt, Arbeitsfläche 1 bleibt frei.
Unter KDE war das eine super Sache, ist das unter Cinnamon auch möglich, im Netz habe ich leider nix gefunden.

Ich hoffe jemand kann mir da weiter helfen.

Gruß
lewendi

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 25.11.2024 16:25:30

Zutaten:
Debianx11-utils daraus das Programm xwininfo
und Debiandevilspie2

Lieratur:
https://www.gusnan.se/scite/devilspie2/manual.php/
https://github.com/dsalt/devilspie2

Beispiel einer Steuerdatei Das Verzeichnis ist zwingend :

Code: Alles auswählen

~$ cat ~/.config/devilspie2/Firefox.lua 
if (get_window_name()=="Mozilla Firefox") then
        -- x,y, xsize, ysize
        set_window_geometry(200,400,2500,1500);
        set_window_workspace(2)
        change_workspace(2)

end
Der Übersichtlichkeit halber habe ich einzelne Dateien für jedes Programm.
Man kann auch alles in eine Datei schreiben
Beim Autostart darf natürlich das "change_workspace(2)" nicht drin stehen.

lewendi
Beiträge: 62
Registriert: 17.01.2012 18:07:55
Wohnort: Rosenheim

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von lewendi » 25.11.2024 17:16:26

@ thunder11
Danke für die Hilfe, leider stehe ich auf dem Schlauch.
Muß ich das in eine Datei einfügen oder wie funktioniert das; schnalle das mit meinen 84 Jahren nicht so.

Gruß
lewendi

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 25.11.2024 17:42:55

Muß ich das in eine Datei einfügen oder wie funktioniert das; schnalle das mit meinen 84 Jahren nicht so.
Alle Achtung, da bin ich noch eine Dekade von entfernt :roll:

Also erstmal installieren. --> devilspie2 in den Autostart
dann das Verzeichnis ~/.config/devilspie2/ anlegen
dann eine Datei (z.b. firefox.lua) anlegen
und dann meine Firefox.lua als Vorlage nehmen.
Mal ein Beispiel für Firefox und den Dialog in xwininfo :

Code: Alles auswählen

~$ xwininfo

xwininfo: Please select the window about which you
          would like information by clicking the
          mouse in that window.

xwininfo: Window id: 0x5e00031 "Neue Registerkarte – Mozilla Firefox"

  Absolute upper-left X:  216
  Absolute upper-left Y:  520
  Relative upper-left X:  8
  Relative upper-left Y:  60
  Width: 2484
  Height: 1432
  Depth: 32
  Visual: 0x7e
  Visual Class: TrueColor
  Border width: 0
  Class: InputOutput
  Colormap: 0x5e00030 (not installed)
  Bit Gravity State: NorthWestGravity
  Window Gravity State: NorthWestGravity
  Backing Store State: NotUseful
  Save Under State: no
  Map State: IsViewable
  Override Redirect State: no
  Corners:  +216+520  -1140+520  -1140-208  +216-208
  -geometry 2484x1432+208+460
Natürlich stimmen die vorgegebenen Werte (s.O.)nicht zu 100 % überein. Aber auf jeden Fall stimmt die
Workspace und die Abmessungen sind in für mich tolerierbaren Bereich.

EDIT:

Achtung: hier kann es eventuell Probleme geben, da man es wohl nicht steuern kann,
ob devilspie vor deinen Lieblingen startet.
Sonst müsste man wohl einen "Sammelstarter" anlegen.
Zuletzt geändert von thunder11 am 25.11.2024 18:16:19, insgesamt 1-mal geändert.

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 25.11.2024 18:11:56

lewendi hat geschrieben: ↑ zum Beitrag ↑
25.11.2024 17:16:26
Muß ich das in eine Datei einfügen oder wie funktioniert das
Das funktioniert so:
devilspie2 ist im Autostart und agiert dann als Dämon, der
in seinem Verzeichnis ~/.config/devilspie2/ nachschaut, für welche Programme er aktiv sein muss.
Wenn eins der dort aufgeführten Programm startet, tritt er in Aktion, und
tut das Gewünschte.
Bei mir schon seit Ewigkeiten sehr zuverlässig.

lewendi
Beiträge: 62
Registriert: 17.01.2012 18:07:55
Wohnort: Rosenheim

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von lewendi » 26.11.2024 12:03:28

@ thunder11
Leider funktioniert es nicht, :( kannst Bitte mal schauen ob ich da noch einen "Wurm" drin habe

Ich habe mal die Datei so abgeändert.

Code: Alles auswählen

~$ cat ~/.config/devilspie2/Brave-Web-Browser.lua 
if (get_window_name()=="Brave-Web-Browser") then
        -- x,y, xsize, ysize
        set_window_geometry(200,400,2500,1500);
        set_window_workspace(4)
end 
Die Zeile
change_workspace(2)

habe ich entfernt.


Im Startmenü schaut es so aus:


Bild

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 26.11.2024 13:53:26

Du hast das Prinzip noch nicht verstanden:

Devilspie2 muss über den Autostart gestartet werden.
Danach beobachtet der Dämon (Devilsie2), ohne dein Zutun, welche Programme gestartet werden.
Wenn eines davon (Window id) in der ~/.config/devilspie2/ bezeichnet ist, wird er aktiv,
stellt die richtige (in der *.lua verlangte) Fenstergröße ein und platziert das Fenster
wie gewünscht.
Den Startbefehl für Brave zu bearbeiten ist also grundsätzlich falsch.
Da gehört - wie vorher - der normale Startbefehl rein. Also /usr/bin/irgendwas. :!:

Ich kann dir also nur weiterhelfen, wenn du mir die Terminal - Ausgabe von

Code: Alles auswählen

xwininfo
hier einstellst.

Dafür ist es notwendig, z.B. den Brave auf die richtige Fenstergröße und Position (wie du es haben willst) zu ziehen, und dann xwininfo im Terminal zu starten.
-----------------------------------------------------------------------------------------------------------------------
Listening to: 'Diamond Dust' from 'Blow By Blow (Mastersound SBM)' by 'Jeff Beck' with JRiver Media Center 33

lewendi
Beiträge: 62
Registriert: 17.01.2012 18:07:55
Wohnort: Rosenheim

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von lewendi » 26.11.2024 14:28:24

Startbefehl geändert.
Den Startbefehl für Brave zu bearbeiten ist also grundsätzlich falsch.
Da gehört - wie vorher - der normale Startbefehl rein. Also /usr/bin/irgendwas. :!:
in:

Code: Alles auswählen

/usr/bin/brave-browser
walter@debian12:~$ xwininfo

xwininfo: Please select the window about which you
would like information by clicking the
mouse in that window.

xwininfo: Window id: 0x4000004 "debianforum.de - Antwort erstellen - Brave"

Absolute upper-left X: 0
Absolute upper-left Y: 0
Relative upper-left X: 0
Relative upper-left Y: 0
Width: 2560
Height: 1380
Depth: 32
Visual: 0x6a3
Visual Class: TrueColor
Border width: 0
Class: InputOutput
Colormap: 0x4000003 (not installed)
Bit Gravity State: NorthWestGravity
Window Gravity State: NorthWestGravity
Backing Store State: NotUseful
Save Under State: no
Map State: IsViewable
Override Redirect State: no
Corners: +0+0 -0+0 -0-60 +0-60
-geometry 2560x1380+0+0

walter@debian12:~$
Es kommt der Browser aber auf Arbeitsfläche 1 ist aber auf 4 eingestellt.

Code: Alles auswählen

~$ cat ~/.config/devilspie2/brave-browser.lua 
if (get_window_name()=="brave-browser") then
        -- x,y, xsize, ysize
        set_window_geometry(200,400,2500,1500);
        set_window_workspace(4)
end 

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 26.11.2024 15:10:38

Willst du den Browser wirklich quasi im Vollbild Modus betreiben ?
dann starte ihn nochmal ohne irgendwelche offenen Fenster, bzw. wie es bei dir Standard ist.
da scheint ja nur "Brave" in der Titelleiste zu stehen ?

Dann vergleich die Zeile

Code: Alles auswählen

set_window_geometry(200,400,2500,1500);
mit dem, was xwininfo bei dir ausgibt.
Dann schreibe da deine Werte rein und nicht meine :!:
Zuerst kommen die Werte für die obere Ecke
also:

Code: Alles auswählen

Absolute upper-left X: 0
Absolute upper-left Y: 0
wenn das so bleiben soll.

Code: Alles auswählen

Dann die Werte für 
-geometry 2560x1380

lewendi
Beiträge: 62
Registriert: 17.01.2012 18:07:55
Wohnort: Rosenheim

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von lewendi » 26.11.2024 15:30:16

Habe die Werte angeglichen, aber der Browser kommt immer auf der Arbeitsfläche 1

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 26.11.2024 15:51:03

thunder11 hat geschrieben: ↑ zum Beitrag ↑
26.11.2024 13:53:26
Devilspie2 muss über den Autostart gestartet werden.
:?: :?: :?:

lewendi
Beiträge: 62
Registriert: 17.01.2012 18:07:55
Wohnort: Rosenheim

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von lewendi » 27.11.2024 10:57:31

thunder11 hat geschrieben: ↑ zum Beitrag ↑26.11.2024 13:53:26
Devilspie2 muss über den Autostart gestartet werden.
Das habe ich gemacht, leider ohne Erfolg, der Browser kommt immer in der 1. Arbeitsfläche.

Ich habe auch für Dolphin und Thunderbird eine Prozedure, natürlich mit geänderten Daten, erstellt. Auch diese kommen auf der Arbeitsfläche 1.

Gibt es noch eine Möglichkeit den Fehler einzugrenzen?

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 27.11.2024 11:04:48

lewendi hat geschrieben: ↑ zum Beitrag ↑
27.11.2024 10:57:31
Ich habe auch für Dolphin und Thunderbird eine Prozedure, natürlich mit geänderten Daten, erstellt. Auch diese kommen auf der Arbeitsfläche 1.
Sind die alle auch im Autostart ? Wenn ja, kannst du die verzögert starten lassen ?

Zeig nochmal die Ausgabe von
xwininfo
und die dazugehörige *.lua Datei

lewendi
Beiträge: 62
Registriert: 17.01.2012 18:07:55
Wohnort: Rosenheim

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von lewendi » 27.11.2024 11:11:06

Code: Alles auswählen

walter@debian12:~$ xwininfo

xwininfo: Please select the window about which you
          would like information by clicking the
          mouse in that window.

xwininfo: Window id: 0x600024 "Programe beim starten einer Arbeitsfläche zuordnen - debianforum.de - Brave"

  Absolute upper-left X:  -56
  Absolute upper-left Y:  -10
  Relative upper-left X:  -56
  Relative upper-left Y:  -10
  Width: 2321
  Height: 1416
  Depth: 32
  Visual: 0x6a3
  Visual Class: TrueColor
  Border width: 0
  Class: InputOutput
  Colormap: 0x600003 (not installed)
  Bit Gravity State: NorthWestGravity
  Window Gravity State: NorthWestGravity
  Backing Store State: NotUseful
  Save Under State: no
  Map State: IsViewable
  Override Redirect State: no
  Corners:  +-56+-10  -295+-10  -295-34  +-56-34
  -geometry 2321x1416+-56+-10

walter@debian12:~$ 

Die Verzögerung habe ich eingestellt.
Browser 1sec.
Dolphin 2 sec.
Tunderbird 3 sec.

brave.lua

Code: Alles auswählen

$ cat ~/.config/devilspie2/brave-browser.lua 
if (get_window_name()=="brave-browser") then
        -- x,y, xsize, ysize
        set_window_geometry(0,0,2187,1418);
        set_window_workspace(4)
end 
dolphin.lua

Code: Alles auswählen

~$ cat ~/.config/devilspie2/dolphin.lua 
if (get_window_name()=="dolphin") then
        -- x,y, xsize, ysize
        set_window_geometry(0,0,2187,1418);
        set_window_workspace(2)
end

thunderbird.lua

Code: Alles auswählen

~$ cat ~/.config/devilspie2/thunderbird.lua 
if (get_window_name()=="thunderbird") then
        -- x,y, xsize, ysize
        set_window_geometry(0,0,2187,1418);
        set_window_workspace(3)
end

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 27.11.2024 11:30:50

lewendi hat geschrieben: ↑ zum Beitrag ↑
27.11.2024 11:11:06

Code: Alles auswählen

Window id: 0x600024 "Programe beim starten einer Arbeitsfläche zuordnen - debianforum.de - Brave"
Da steht nirgends etwas von "brave-browser" sondern lediglich Brave
Korrigieren. :!:
Bei mir steht bei thunderbird.lua

Code: Alles auswählen

if (get_window_name()=="Mozilla Thunderbird") then
Was bei mir funktioniert.

Was hat du denn für eine Bildschirm Auflösung ?

lewendi
Beiträge: 62
Registriert: 17.01.2012 18:07:55
Wohnort: Rosenheim

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von lewendi » 27.11.2024 12:35:58

Window id: 0x600024 "Programe beim starten einer Arbeitsfläche zuordnen - debianforum.de - Brave"
Den Eintrag "debianforum.de - Brave" kann ich nicht ändern, bzw. ich weis nicht wo.

Code: Alles auswählen

if (get_window_name()=="thunderbird") then
ergibt den Fehler

Code: Alles auswählen

bash: Syntaxfehler beim unerwarteten Symbol »=="thunderbird"«
Bildschirmauflösung:

Code: Alles auswählen

 Display: x11 server: X.Org v: 1.21.1.7 with: Xwayland v: 22.1.9 driver: X: loaded: amdgpu
    unloaded: fbdev,modesetting,vesa dri: radeonsi gpu: amdgpu display-ID: :0 screens: 1
  Screen-1: 0 s-res: 2560x1440 s-dpi: 96
  Monitor-1: DP-1 mapped: DisplayPort-0 model: Idek Iiyama PL2792Q res: 2560x1440 dpi: 109
    diag: 685mm (27")
Wenn ich in der Konsole bash thunderbird-lua eingebe kommt das:

Code: Alles auswählen

walter@debian12:~/.config/devilspie2$ bash thunderbird.lua 
cat ~/.config/devilspie2/thunderbird.lua 
if (get_window_name()=="thunderbird") then
        -- x,y, xsize, ysize
        set_window_geometry(0,0,2187,1418);
        set_window_workspace(3)
end
thunderbird.lua: Zeile 2: Syntaxfehler beim unerwarteten Symbol »=="thunderbird"«
thunderbird.lua: Zeile 2: `if (get_window_name()=="thunderbird") then'
walter@debian12:~/.config/devilspie2$ 

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 28.11.2024 08:43:26

hmm
ich weiß langsam nicht mehr, wie ich dir das erklären soll.
Grundsätzlich.
Der Eintrag in der *. lua Datei muss mit der Ausgabe von xwininfo übereinstimmen.
Das gerade zufällig geöffnete Fenster hat in dem Eintrag in der *.lua
nichts zu suchen.
Darauf habe ich dich nun mehrmals hingewiesen.
thunder11 hat geschrieben: ↑ zum Beitrag ↑
27.11.2024 11:30:50
Da steht nirgends etwas von "brave-browser" sondern lediglich Brave
Korrigieren. :!:
Das du da im Terminal veranstaltest, kann ich nicht nachvollziehen.

Ich würde erstmal die Autostart- Einträge von den drei Programmen deaktivieren, und nach der
Änderung in der brave-browser.lua den brave per Hand starten.
und dann sehen, ob es funktioniert oder nicht.

juribel
Beiträge: 331
Registriert: 20.06.2023 10:17:01

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von juribel » 28.11.2024 10:13:11

Das ist ja alles ziemlich kompliziert hier.

Nur meine 2 Cents: Ich weiss nicht, wie es in anderen Benutzeroberflächen funktioniert, aber zumindest Xfce stellt die meisten Anwendungsfenster beim Booten in denjenigen Arbeitsflächen wieder her, auf denen sie beim Herunterfahren geöffnet waren. Zumindest mit dem Dateimanager thunar, mit Terminal-Fenstern und mit Firefox/Thunderbird funktioniert das einwandfrei, und zwar automatisch. Da muss man nix programmieren oder metertief in irgendwelchen Dateien herumwerkeln.

Benutzeravatar
thunder11
Beiträge: 2147
Registriert: 19.04.2023 09:08:30

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von thunder11 » 28.11.2024 11:51:19

juribel hat geschrieben: ↑ zum Beitrag ↑
28.11.2024 10:13:11
Nur meine 2 Cents: Ich weiss nicht, wie es in anderen Benutzeroberflächen funktioniert, aber zumindest Xfce stellt die meisten Anwendungsfenster beim Booten in denjenigen Arbeitsflächen wieder her, auf denen sie beim Herunterfahren geöffnet waren
Das halte ich nach über 10 Jahren XFCE für ein Gerücht. Es sei denn, man speichert die Sitzung beim Runterfahren.
Das mache ich nicht. Ganz im Gegenteil - ich schließe alle Programme, bevor ich runterfahre.
Genau aus diesem Grund nutze ich seit Jahren Debiandevilspie2.
So schwer ist das nun auch nicht.
Einmal das Prinzip erkannt, geht das wie das Brezelbacken.

juribel
Beiträge: 331
Registriert: 20.06.2023 10:17:01

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von juribel » 28.11.2024 12:08:46

Kann sein, dass ich mal das automatische Speichern der Sitzung eingestellt habe. Auf jeden Fall muss ich da nichts manuell speichern. Bei meinen 12 Arbeitsflächen ist das wirklich hilfreich.

Brezeln hab ich (leider) noch keine gebacken. Da bringst du mich auf eine tolle Idee, das wär auch mal 'ne schöne Massnahme :D

lewendi
Beiträge: 62
Registriert: 17.01.2012 18:07:55
Wohnort: Rosenheim

Re: Programe beim starten einer Arbeitsfläche zuordnen

Beitrag von lewendi » 28.11.2024 14:34:32

So Ende und Aus.

Ich habe die Schauze voll, will mich in meinen letzten Jahren nicht unnötig aufregen mit den Schmarren. :mrgreen:

Danke für Alle die mir geholfen haben, werde auch Brezen backen. :) :)

Gruß
lewendi

Antworten