ubuntu--anfaenger
Anmeldungsdatum: 12. Oktober 2013
Beiträge: 1088
|
Hallo, Desktop i3-wm Seitdem ich mir einen 2ten Bildschirm angeschafft habe, habe ich nach dem start das Problem, das xrandr nicht richtig läuft, Hintergrundbild verwackelt, und der 2te Bildschirm ist nicht um 90° gedreht. xrandr: exec_always xrandr --output DP-1 --auto --right-of HDMI-1
exec_always xrandr --output HDMI-1 --rotate left Wenn ich dann ca 3x die Desktop Oberfläche reset: exec i3-msg restart dann pendelt sich alles ein und es läuft, ich habe mir deswegen 3scripte angelegt, etwa so: #!/bin/bash
sleep 1
exec i3-msg restart jedes script startet eine sec später Zeitversetzt, wenn ich die Befehle in einem script zb so zusammenfasse: #!/bin/bash
sleep 1
exec i3-msg restart
sleep 2
exec i3-msg restart
sleep 3
exec i3-msg restart Habe ich das Problem das ich in einer Endlosschleife hänge, und mein /home mit .corexxxx vollgespamt wird. Wie kann ich sowas vernünftig regeln? lg,
|
Marant--
Anmeldungsdatum: 4. April 2022
Beiträge: 680
|
Test, was ist wenn Du das per Hand eingibst: xrandr --output DP-1 --auto --right-of HDMI-1
xrandr --output HDMI-1 --rotate left Die Zeilen nacheinander ausführen. Kann mir nicht vorstellen, das Du das 3* machen müsstest.
|
ChickenLipsRfun2eat
Supporter
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12070
|
Hallo! Zunächst würde ich mal versuchen die Probleme zu lösen. Im Idealfall zweimal DP (evtl DaisyChain) und HDMI abschaffen. Je nach Grafikkarte wäre da auch noch was möglich → „Grafik, Tastatur und Maus“. Du könntest auch mal sway versuchen, also i3 auf Wayland. Die i3-Konfiguration kann übernommen werden, du kannst da auch gleich dein Display richtig einstellen (output HDMI-1 transform 90). Die .core deuten auf einen Crash hin ⇨ journalctl Was das Kombinieren der Scripte angeht: In deinem Beispiel wartest du insgesamt 6 Sekunden anstatt 3. Also musst du die Sleeps+Exec entweder im Hintergrund ausführen oder jeweils sleep 1 nutzen. Also | sleep 1 # wartet 1 Sekunde
exec i3-msg restart
sleep 2 # wartet 2 Sekunden nachdem exec ausgeführt wurde
exec i3-msg restart
sleep 3 # wartet 3 Sekunden…
exec i3-msg restart
|
Beispiel für Hintergrund: #!/bin/sh
(sleep 1 && echo "1 Sekunde") &
(sleep 5 && echo "5 Sekunden") & # wird erst nach Ende des Scriptes ausgegeben
(sleep 3 && echo "3 Sekunden") &
(sleep 4 && echo "4 Sekunden") Idealerweise gibt es aber eine scriptbare Möglichkeit festzustellen, wann sich „alles eingependelt hat“. Du könntest parallel mal dbus-monitor und udevadm monitor mitloggen. Eventuell gibt es da Events auf die du lauschen kannst.
|
Marant--
Anmeldungsdatum: 4. April 2022
Beiträge: 680
|
Glaube, habe etwas falsch verstanden.(i3-msg)
|
ubuntu--anfaenger
(Themenstarter)
Anmeldungsdatum: 12. Oktober 2013
Beiträge: 1088
|
ChickenLipsRfun2eat schrieb:
Zunächst würde ich mal versuchen die Probleme zu lösen. Im Idealfall zweimal DP
Der 2te Monitor ist ein bisschen älter, der hat nur HDMI 😳 Das Problem ist nur durch den 2ten Monitor, ist der nicht angeschlossen, brauch ich die 2 randr Befehle gar nicht.
Du könntest auch mal sway versuchen, also i3 auf Wayland. Die i3-Konfiguration kann übernommen werden, du kannst da auch gleich dein Display richtig einstellen (output HDMI-1 transform 90).
Müsste ich mir mal anschauen, ansonsten komm ich mit i3 ganz gut klar.
Idealerweise gibt es aber eine scriptbare Möglichkeit festzustellen, wann sich „alles eingependelt hat“. Du könntest parallel mal dbus-monitor und udevadm monitor mitloggen. Eventuell gibt es da Events auf die du lauschen kannst.
Ok danke,da brauch ich ein bisschen Zeit um das mal an zu schauen und was das so macht..melde mich dann nochmal. lg,
|
ChickenLipsRfun2eat
Supporter
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12070
|
ubuntu--anfaenger schrieb: Der 2te Monitor ist ein bisschen älter, der hat nur HDMI 😳
Nicht schlimm. Sind ja nur Vorschläge gewesen. Hatte auch lange HDMI/DP gemischt. …sway…
Müsste ich mir mal anschauen, ansonsten komm ich mit i3 ganz gut klar.
Ändert sich nicht viel, außer das du mit output deine Bildschirme konfigurierst, anstatt mit xrandr , xset & Co. Und mit input die Eingabegeräte. Falls du Hilfe brauchst, mach nen Thema in „andere Fenstermanager“ auf. Ok danke,da brauch ich ein bisschen Zeit um das mal an zu schauen und was das so macht..melde mich dann nochmal.
Ich hab Geduld mit deinem Problem 😀 Viel Erfolg 😉
|
ubuntu--anfaenger
(Themenstarter)
Anmeldungsdatum: 12. Oktober 2013
Beiträge: 1088
|
ChickenLipsRfun2eat schrieb:
Ändert sich nicht viel,
Ich hatte es mir mal angeschaut, ich glaube sway lässt sich aus gnome heraus als container starten.
Du könntest parallel mal dbus-monitor und udevadm monitor mitloggen. Eventuell gibt es da Events auf die du lauschen kannst.
Die Frage ist, wie muss ich d-bus abfragen, den Schalter --monitor kann ich doch weglassen? Ich bin auch nicht sicher was ich einfügen muss, .TypingMonitor? pattes@pattes-tty:~$ dbus-monitor "type='signal',sender='i3.TypingMonitor',interface='i3.TypingMonitor'"
signal time=1653410512.323608 sender=org.freedesktop.DBus -> destination=:1.70 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
string ":1.70"
signal time=1653410512.323619 sender=org.freedesktop.DBus -> destination=:1.70 serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
string ":1.70" lg,
|
ChickenLipsRfun2eat
Supporter
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12070
|
Für ne D-Bus-Einführung wird es hier etwas knapp. Kurzversion: Das ist ein Bus, der Interprozesskommunikation ermöglicht, also den Datenaustausch von verschiedenen Anwendungen. Je nach installierten Anwendungen unterscheidet sich, was über diesen Bus läuft. Bspw. werden Änderungen am Akkustand versendet, Benachrichtigungen, Sensorenaktivitäten, etc. Unterteilt ist das ganze in den SystemBus (für alle Nutzer) und den UserBus (SessionBus) der nur Daten enthält, die den Nutzer betreffen. In deinem Fall reicht also dbus-monitor --session --monitor . Da die beiden Optionen aber Standard sind, reicht dbus-monitor ohne Argumente. Du kannst aber auch mal dbus-monitor --system verwenden, da einen neuen Monitor anschliessen ein systemweites Ereignis ist. UDEV ist die „Geräteverwaltung“, wenn du bspw. einen USB-Stick einsteckst, etc. Ob und was da bezüglich des Monitors passiert, siehst du dann da. Zusätzlich gäbe es noch monitor-sensor . Das ist ein Programm zur Analyse von diversen Sensoren wie Lagesensor, Winkelmesser, etc. und bedingt iio-sensor-proxy , wenn du bspw. automatische Rotation hast/haben willst, ist aber für den aktuellen Fall uninteressant. // Nachtrag: Eintippen musste da gar nichts. Der loggt nur mit was gerade passiert.
|
ubuntu--anfaenger
(Themenstarter)
Anmeldungsdatum: 12. Oktober 2013
Beiträge: 1088
|
ChickenLipsRfun2eat schrieb:
Für ne D-Bus-Einführung wird es hier etwas knapp.
Nee Alles gut, deswegen schrieb ich auch das ich erst was Zeit brauche um das mal Durchzulesen. d-bus Erschlägt mich mit Informationen, wenn ich i3 neu starte, zeigt d-bus alles an was passiert, pulseaudio, die shellscripte die neu gestartet werden usw.. Das sieht aus wie c code. lg,
|
ChickenLipsRfun2eat
Supporter
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12070
|
ubuntu--anfaenger schrieb: d-bus Erschlägt mich mit Informationen…
Prima. Ich würde mir oftmals mehr Signale wünschen 😉 Aber ich verstehe was du meinst. Manche Kleinigkeiten lösen richtige Lawinen aus. Leider kann ich dir keinen sinnvollen Filter nennen, der eventuell als Ansatz herhalten kann.
Das sieht aus wie c code.
C? Sollte eigentlich nicht sein. An sich spuckt der Zeilen wie die o.g. oder XML aus. Bei mir sieht das so aus: | # Signal
signal time=1653499147.365784 sender=:1.7 -> destination=(null destination) serial=11217 path=/VirtualKeyboard; interface=org.kde.kwin.VirtualKeyboard; member=visibleChanged
# Funktionsaufruf
method call time=1653499147.367355 sender=:1.26 -> destination=org.kde.KWin serial=9755 path=/VirtualKeyboard; interface=org.freedesktop.DBus.Properties; member=Get
string "org.kde.kwin.VirtualKeyboard"
string "visible"
|
Sender ist leider oftmals nur eine Abkürzung. Man kann aber rausfinden, wer das ist. Stell dir einfach vor, das Doppelpunkt-Zahl-Punkt-Zahl[en] ein Name sei^^ Zumindest sehe ich hier nur eine vereinfachte Darstellung ohne XML & Co.
|
ubuntu--anfaenger
(Themenstarter)
Anmeldungsdatum: 12. Oktober 2013
Beiträge: 1088
|
Bei mir gibt der sowas raus: signal time=1653500448.665245 sender=:1.10 -> destination=(null destination) serial=1390 path=/org/freedesktop/NetworkManager/IP6Config/4; interface=org.freedesktop.DBus.Properties; member=PropertiesChanged
string "org.freedesktop.NetworkManager.IP6Config"
array [
dict entry(
string "Addresses"
variant array [
… Aber wie gesagt das Problem lässt sich einfach Einkreisen, ist der 2te Monitor nicht eingesteckt, habe ich dieses Problem nicht.
|
ChickenLipsRfun2eat
Supporter
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12070
|
Ja, das sind deine IP-Adressdaten vom NetworkManager. Dessen Einträge kannst du getrost ignorieren. Achte mehr auf Signale, die den Bildschirm betreffen. Kann dir leider nur Plasma-Beispiele nennen, die wirken aber noch mehr verwirrend. Destination, Path und Interface sind die interessanten Punkte. Die Werte selbst kannst du dann nachgucken, wenn was passt. Idealerweise startest du dbus-monitor just bevor du den zweiten Bildschirm anschaltest. Dann ist die Wahrscheinlichkeit höher, das was brauchbares dabei ist.
|
ubuntu--anfaenger
(Themenstarter)
Anmeldungsdatum: 12. Oktober 2013
Beiträge: 1088
|
Idealerweise startest du dbus-monitor just bevor du den zweiten Bildschirm anschaltest. Dann ist die Wahrscheinlichkeit höher, das was brauchbares dabei ist.
Alles klar, aber es steht eh bald eine neue Installation an, das System hier läuft schon seit 17.10. Ich muss halt nur schauen das ich die sleep Abstände in dem script nicht zu kurz mache, müssen +-2sec Unterschied sein, sonst habe ich halt den corexxx crash.
|