Git Product home page Git Product logo

umonitor's People

Contributors

rliou92 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

beorn-

umonitor's Issues

Umonitor suddenly stopped working

Hi again ;) Umonitor suddenly stopped working from one day to another ?

$ ~ umonitor -l portable                                                                                                                              
[1]    3319 segmentation fault (core dumped)  umonitor -l portable
$ ~ umonitor --version                                                                                                                                
umonitor 20170805
Written by Ricky Liou

H: run custom cmd if the daemon detects a change

Hi again. I was wondering if there is anny way to issue a custom cmd such as .config/polybar/launch.sh when the daemon detects a change? It would be a pretty neat feature to have instead of running the cmd manually everytime the daemon recognizes a change.

An error on "make"

Any dependency packages? I'm running it on Ubuntu 18.04

mlim@linux:~/umonitor-master$ make
gcc -Wall -c src/screen.c -o obj/screen.o
In file included from src/screen.c:1:0:
src/common.h:5:10: fatal error: libconfig.h: No such file or directory
#include <libconfig.h>
^~~~~~~~~~~~~
compilation terminated.
Makefile:33: recipe for target 'obj/screen.o' failed
make: *** [obj/screen.o] Error 1

Wrong rotation and WM crash

My setup:

  • First monitor: DVI-D-0 (AOC 2490W1) - Rotated right
  • Second monitor: HDMI-A-0 (AOC 2476WM) - Primary, not rotated

Config:

main : 
{
  Screen : 
  {
    width = 3000;
    height = 1920;
    widthMM = 794;
    heightMM = 508;
  };
  Monitors : 
  {
    HDMI-A-0 : 
    {
      EDID = "AOC 2476WM";
      resolution : 
      {
        x = 1920;
        y = 1080;
      };
      pos : 
      {
        x = 1080;
        y = 840;
      };
      rotation = 1;
      primary = 1;
    };
    DVI-D-0 : 
    {
      EDID = "AOC 2490W1";
      resolution : 
      {
        x = 1920;
        y = 1080;
      };
      pos : 
      {
        x = 0;
        y = 0;
      };
      rotation = 8;
    };
  };
};
vert-only : 
{
  Screen : 
  {
    width = 1080;
    height = 1920;
    widthMM = 286;
    heightMM = 508;
  };
  Monitors : 
  {
    DVI-D-0 : 
    {
      EDID = "AOC 2490W1";
      resolution : 
      {
        x = 1920;
        y = 1080;
      };
      pos : 
      {
        x = 0;
        y = 0;
      };
      rotation = 8;
      primary = 1;
    };
  };
};
  1. Launched and moved second monitor through arandr - nothing turned off or on

./umonitor --verbose --listen

Connected to server
Autoloading
Number of profiles: 2
Trying to find which profile matches current setup
Current connected outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Looping over profile main
Configuration outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Profile main matches current setup
Done loading values from configuration file
Loading profile main
Num outputs per profile main: 2
Trying to find matching setting for DVI-D-0 (AOC 2490W1)
Found output in configuration file that matches DVI-D-0 (AOC 2490W1)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 79
Queing up crtc to load: 79
Crtc settings: x:0, y:0, rotation: 8, is_primary: 0, mode_id: 86, output: DVI-D-0
Trying to find matching setting for HDMI-A-0 (AOC 2476WM)
Found output in configuration file that matches HDMI-A-0 (AOC 2476WM)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 80
Queing up crtc to load: 80
Crtc settings: x:1080, y:840, rotation: 1, is_primary: 1, mode_id: 86, output: HDMI-A-0
Does any of queued crtc match currently loaded crtc 80?
Crtc: x:1080, y:840, rotation: 1, mode_id: 86, output: HDMI-A-0
Queued crtc 80 matches! Remove duplicate crtc 80 from ll
Does any of queued crtc match currently loaded crtc 79?
Crtc: x:0, y:0, rotation: 8, mode_id: 86, output: DVI-D-0
Queued crtc 79 matches! Remove duplicate crtc 79 from ll
Does any of queued crtc match currently loaded crtc 81?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: HDMI-A-0
No crtcs to disable or enable. Profile main is currently active
*

Looping over profile vert-only
Configuration outputs: DVI-D-0 (AOC 2490W1) 

---------------------------------
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 0
Time of event: 246959979
Screen change event detected
Now I should load
Number of profiles: 2
Trying to find which profile matches current setup
Current connected outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Looping over profile main
Configuration outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Profile main matches current setup
Done loading values from configuration file
Loading profile main
Num outputs per profile main: 2
Trying to find matching setting for DVI-D-0 (AOC 2490W1)
Found output in configuration file that matches DVI-D-0 (AOC 2490W1)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 79
Queing up crtc to load: 79
Crtc settings: x:0, y:0, rotation: 8, is_primary: 0, mode_id: 86, output: DVI-D-0
Trying to find matching setting for HDMI-A-0 (AOC 2476WM)
Found output in configuration file that matches HDMI-A-0 (AOC 2476WM)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 80
Queing up crtc to load: 80
Crtc settings: x:1080, y:840, rotation: 1, is_primary: 1, mode_id: 86, output: HDMI-A-0
Does any of queued crtc match currently loaded crtc 80?
Crtc: x:1080, y:0, rotation: 1, mode_id: 86, output: HDMI-A-0
Queing disable crtc 80
Does any of queued crtc match currently loaded crtc 79?
Crtc: x:0, y:0, rotation: 8, mode_id: 86, output: DVI-D-0
Queued crtc 79 matches! Remove duplicate crtc 79 from ll
Does any of queued crtc match currently loaded crtc 81?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: HDMI-A-0
Disabling this crtc: 80
Change screen size here
Enable crtc 80
*

Looping over profile vert-only
Configuration outputs: DVI-D-0 (AOC 2490W1) 

---------------------------------
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 247947955
Time of event: 247947894
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 247947955
Time of event: 247947910
Screen change event detected
Waiting for event
  1. Second run, turn primary off

./umonitor --verbose --listen

Connected to server
Autoloading
Number of profiles: 2
Trying to find which profile matches current setup
Current connected outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Looping over profile main
Configuration outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Profile main matches current setup
Done loading values from configuration file
Loading profile main
Num outputs per profile main: 2
Trying to find matching setting for DVI-D-0 (AOC 2490W1)
Found output in configuration file that matches DVI-D-0 (AOC 2490W1)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 79
Queing up crtc to load: 79
Crtc settings: x:0, y:0, rotation: 8, is_primary: 0, mode_id: 86, output: DVI-D-0
Trying to find matching setting for HDMI-A-0 (AOC 2476WM)
Found output in configuration file that matches HDMI-A-0 (AOC 2476WM)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 80
Queing up crtc to load: 80
Crtc settings: x:1080, y:840, rotation: 1, is_primary: 1, mode_id: 86, output: HDMI-A-0
Does any of queued crtc match currently loaded crtc 80?
Crtc: x:1080, y:840, rotation: 1, mode_id: 86, output: HDMI-A-0
Queued crtc 80 matches! Remove duplicate crtc 80 from ll
Does any of queued crtc match currently loaded crtc 79?
Crtc: x:0, y:0, rotation: 8, mode_id: 86, output: DVI-D-0
Queued crtc 79 matches! Remove duplicate crtc 79 from ll
Does any of queued crtc match currently loaded crtc 81?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: HDMI-A-0
No crtcs to disable or enable. Profile main is currently active
*

Looping over profile vert-only
Configuration outputs: DVI-D-0 (AOC 2490W1) 

---------------------------------
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 0
Time of event: 247947955
Screen change event detected
Now I should load
Number of profiles: 2
Trying to find which profile matches current setup
Current connected outputs: DVI-D-0 (AOC 2490W1) 
Looping over profile main
Configuration outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 

Looping over profile vert-only
Configuration outputs: DVI-D-0 (AOC 2490W1) 
Profile vert-only matches current setup
Done loading values from configuration file
Loading profile vert-only
Num outputs per profile vert-only: 1
Trying to find matching setting for DVI-D-0 (AOC 2490W1)
Found output in configuration file that matches DVI-D-0 (AOC 2490W1)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 80
Queing up crtc to load: 80
Crtc settings: x:0, y:0, rotation: 8, is_primary: 1, mode_id: 86, output: DVI-D-0
Does any of queued crtc match currently loaded crtc 80?
Crtc: x:0, y:0, rotation: 1, mode_id: 86, output: DVI-D-0
Queing disable crtc 80
Does any of queued crtc match currently loaded crtc 79?
Crtc: x:0, y:0, rotation: 8, mode_id: 0, output: HDMI-A-0
Does any of queued crtc match currently loaded crtc 81?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: HDMI-A-0
Disabling this crtc: 80
Change screen size here
Enable crtc 80
*

---------------------------------
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248049143
Time of event: 247947955
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248049143
Time of event: 248048906
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248049143
Time of event: 248048942
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248049143
Time of event: 248048942
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248049143
Time of event: 248048980
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248049143
Time of event: 248048980
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248049143
Time of event: 248049048
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248049143
Time of event: 248049048
Screen change event detected
Waiting for event
  1. Third run, turn primary back on

./umonitor --verbose --listen

Connected to server
Autoloading
Number of profiles: 2
Trying to find which profile matches current setup
Current connected outputs: DVI-D-0 (AOC 2490W1) 
Looping over profile main
Configuration outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 

Looping over profile vert-only
Configuration outputs: DVI-D-0 (AOC 2490W1) 
Profile vert-only matches current setup
Done loading values from configuration file
Loading profile vert-only
Num outputs per profile vert-only: 1
Trying to find matching setting for DVI-D-0 (AOC 2490W1)
Found output in configuration file that matches DVI-D-0 (AOC 2490W1)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 80
Queing up crtc to load: 80
Crtc settings: x:0, y:0, rotation: 8, is_primary: 1, mode_id: 86, output: DVI-D-0
Does any of queued crtc match currently loaded crtc 80?
Crtc: x:0, y:0, rotation: 8, mode_id: 86, output: DVI-D-0
Queued crtc 80 matches! Remove duplicate crtc 80 from ll
Does any of queued crtc match currently loaded crtc 79?
Crtc: x:0, y:0, rotation: 8, mode_id: 0, output: HDMI-A-0
Does any of queued crtc match currently loaded crtc 81?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: HDMI-A-0
No crtcs to disable or enable. Profile vert-only is currently active
*

---------------------------------
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 0
Time of event: 248049143
Screen change event detected
Now I should load
Number of profiles: 2
Trying to find which profile matches current setup
Current connected outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Looping over profile main
Configuration outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Profile main matches current setup
Done loading values from configuration file
Loading profile main
Num outputs per profile main: 2
Trying to find matching setting for DVI-D-0 (AOC 2490W1)
Found output in configuration file that matches DVI-D-0 (AOC 2490W1)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 80
Queing up crtc to load: 80
Crtc settings: x:0, y:0, rotation: 8, is_primary: 0, mode_id: 86, output: DVI-D-0
Trying to find matching setting for HDMI-A-0 (AOC 2476WM)
Found output in configuration file that matches HDMI-A-0 (AOC 2476WM)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 0
Candidate crtc will not work, using 79 instead
Queing up crtc to load: 79
Crtc settings: x:1080, y:840, rotation: 1, is_primary: 1, mode_id: 86, output: HDMI-A-0
Does any of queued crtc match currently loaded crtc 80?
Crtc: x:0, y:0, rotation: 8, mode_id: 86, output: DVI-D-0
Queued crtc 80 matches! Remove duplicate crtc 80 from ll
Does any of queued crtc match currently loaded crtc 79?
Crtc: x:1920, y:0, rotation: 1, mode_id: 86, output: HDMI-A-0
Queing disable crtc 79
Does any of queued crtc match currently loaded crtc 81?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: HDMI-A-0
Disabling this crtc: 79
Change screen size here
Enable crtc 79
*

Looping over profile vert-only
Configuration outputs: DVI-D-0 (AOC 2490W1) 

---------------------------------
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248153317
Time of event: 248049143
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248153317
Time of event: 248153020
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248153317
Time of event: 248153020
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248153317
Time of event: 248153060
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248153317
Time of event: 248153074
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248153317
Time of event: 248153074
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248153317
Time of event: 248153175
Screen change event detected
Waiting for event
Event type: 89
screen change masked: 1
output change masked: 0
Last time of configuration: 248153317
Time of event: 248153175
Screen change event detected
Waiting for event
  1. Now it's broken, First monitor isn't rotated, and looks shifted

./umonitor --verbose

Connected to server
Number of profiles: 2
Trying to find which profile matches current setup
Current connected outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Looping over profile main
Configuration outputs: HDMI-A-0 (AOC 2476WM) DVI-D-0 (AOC 2490W1) 
Profile main matches current setup
Done loading values from configuration file
Loading profile main
Num outputs per profile main: 2
Trying to find matching setting for DVI-D-0 (AOC 2490W1)
Found output in configuration file that matches DVI-D-0 (AOC 2490W1)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 80
Queing up crtc to load: 80
Crtc settings: x:0, y:0, rotation: 8, is_primary: 0, mode_id: 86, output: DVI-D-0
Trying to find matching setting for HDMI-A-0 (AOC 2476WM)
Found output in configuration file that matches HDMI-A-0 (AOC 2476WM)
Trying match up the configuration resolution with the mode id
Found matching mode id: 86
Candidate crtc for this output: 79
Queing up crtc to load: 79
Crtc settings: x:1080, y:840, rotation: 1, is_primary: 1, mode_id: 86, output: HDMI-A-0
Does any of queued crtc match currently loaded crtc 79?
Crtc: x:1080, y:840, rotation: 1, mode_id: 86, output: HDMI-A-0
Queued crtc 79 matches! Remove duplicate crtc 79 from ll
Does any of queued crtc match currently loaded crtc 80?
Crtc: x:0, y:0, rotation: 1, mode_id: 86, output: DVI-D-0
Queing disable crtc 80
Does any of queued crtc match currently loaded crtc 81?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: HDMI-A-0

Looping over profile vert-only
Configuration outputs: DVI-D-0 (AOC 2490W1) 

Unknown profile*
---------------------------------

./umonitor

main
vert-only
Unknown profile*
---------------------------------
  1. Load run fixed it

./umonitor --load main

Profile main loaded!
---------------------------------
main*
vert-only
---------------------------------
  1. After couple turn on and offs without umonitor restart WM(Mutter/Gala) crashes
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
gnome-session[19212]: ** (gala:19444): CRITICAL **: plank_drawing_service_load_icon: assertion 'names != NULL' failed
gnome-session[19212]: ** (gala:19444): CRITICAL **: plank_drawing_service_load_icon: assertion 'names != NULL' failed
gnome-session[19212]: ** (gala:19444): CRITICAL **: plank_drawing_service_load_icon: assertion 'names != NULL' failed
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
gnome-session[19212]: **
gnome-session[19212]: mutter:ERROR:backends/meta-monitor-manager.c:260:make_logical_config: assertion failed: (output->crtc->logical_monitor != NULL)
gnome-session[19212]: gnome-session-binary[19212]: WARNING: Application 'gala.desktop' killed by signal 6
gnome-session-binary[19212]: WARNING: Application 'gala.desktop' killed by signal 6
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
gnome-session[19212]: QXcbConnection: XCB error: 148 (Unknown), sequence: 1549, resource id: 0, major code: 140 (Unknown), minor code: 20
gnome-session[19212]: QXcbConnection: XCB error: 148 (Unknown), sequence: 3910, resource id: 0, major code: 140 (Unknown), minor code: 20
gnome-session[19212]: (gala:25276): Gtk-WARNING **: Theme parsing error: gtk.css:2663:13: 'min-width' is not a valid property name
gnome-session[19212]: (gala:25276): Gtk-WARNING **: Theme parsing error: gtk.css:2663:13: 'min-width' is not a valid property name
gnome-session[19212]: (gala:25276): Gtk-WARNING **: Theme parsing error: gtk.css:2663:13: 'min-width' is not a valid property name
gnome-session[19212]: Window manager warning: Trying to re-add keybinding "switch-to-workspace-last".
gnome-session[19212]: Window manager warning: Trying to re-add keybinding "move-to-workspace-last".
gnome-session[19212]: ** (gala:25276): CRITICAL **: plank_drawing_service_load_icon: assertion 'names != NULL' failed
gnome-session[19212]: ** (gala:25276): CRITICAL **: plank_drawing_service_load_icon: assertion 'names != NULL' failed
gnome-session[19212]: ** (gala:25276): WARNING **: Preferences.vala:192: '/usr/share/themes/Arc-Dark/plank/dock.theme' is read-only!
gnome-session[19212]: ** (gala:25276): WARNING **: Preferences.vala:382: Missing key 'CascadeHide' for group 'PlankDrawingDockTheme' in preferences file '/usr/share/themes/Arc-Dark/plank/dock.theme' - using default value
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
gnome-session[19212]: ** (gala:25276): CRITICAL **: plank_drawing_service_load_icon: assertion 'names != NULL' failed
gnome-session[19212]: ** (gala:25276): CRITICAL **: plank_drawing_service_load_icon: assertion 'names != NULL' failed
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
gnome-session[19212]: QXcbConnection: XCB error: 148 (Unknown), sequence: 4495, resource id: 0, major code: 140 (Unknown), minor code: 20
gnome-session[19212]: QXcbConnection: XCB error: 148 (Unknown), sequence: 2055, resource id: 0, major code: 140 (Unknown), minor code: 20
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] 2476WM: [Block 0] 
kernel: [drm] 2476WM: [Block 1] 
kernel: [drm] dc_link_detect: manufacturer_id = E305, product_id = 2476, serial_number = 1D7, manufacture_week = 12, manufacture_year = 27, display_name = 2476WM, speaker_flag = 1, audio_mode_count = 1
kernel: [drm] dc_link_detect: mode number = 0, format_code = 1, channel_count = 2, sample_rate = 7, sample_size = 7
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
gnome-session[19212]: QXcbConnection: XCB error: 148 (Unknown), sequence: 4511, resource id: 0, major code: 140 (Unknown), minor code: 20
gnome-session[19212]: QXcbConnection: XCB error: 148 (Unknown), sequence: 2067, resource id: 0, major code: 140 (Unknown), minor code: 20
gnome-session[19212]: ** (gala:25276): CRITICAL **: plank_drawing_service_load_icon: assertion 'names != NULL' failed
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}
kernel: [drm] {1920x1080, 2200x1125@148500Khz}

gnome-session[19212]: **
gnome-session[19212]: mutter:ERROR:backends/meta-monitor-manager.c:260:make_logical_config: assertion failed: (output->crtc->logical_monitor != NULL)
gnome-session[19212]: gnome-session-binary[19212]: WARNING: Application 'gala.desktop' killed by signal 6
gnome-session[19212]: gnome-session-binary[19212]: WARNING: App 'gala.desktop' respawning too quickly

gnome-session-binary[19212]: WARNING: Application 'gala.desktop' killed by signal 6
gnome-session-binary[19212]: WARNING: App 'gala.desktop' respawning too quickly
gnome-session-binary[19212]: Unrecoverable failure in required component gala.desktop
gnome-session[19212]: gnome-session-binary[19212]: CRITICAL: We failed, but the fail whale is dead. Sorry....
gnome-session-binary[19212]: CRITICAL: We failed, but the fail whale is dead. Sorry....
gnome-session[19212]: ICE default IO error handler doing an exit(), pid = 19518, errno = 11

Umonitor doesn't apply rotation

I don't know if this is a feature which is not implemented but every time I load my profile I have to use xrandr to roate my screen in order to get in in portrait mode.

[Feature request] Setting dpi value

I would like to suggest adding support for setting the dpi value. So far -- afaik -- this is not touched.

Motivation

Personal

I use different dpi values on my laptop screen and on my external screen.
So far umonitor does the changing of the resolution but I always have to press my key combination to set the dpi value accordingly. This somehow undercuts the use of umonitor.

Abstract

Adapt to switching screens actually consists at least of setting

  • the resolution and
  • the scaling factor (dpi) that relates the resolution to the actual physical size of the screen.

Not having to touch the dpi value is actually the special case of changing the resolution on the same screen or by coincidence having two different screens with comparable pixel densities.

Thanks a lot!

Lid open/close events

Is there currently support for lid open/close events?

Let's say when you open the lid of your notebook and the screen becomes active, umonitor switches to a dual screen setup. When the lid is closed, it goes to a single external monitor setup.

Tried it but but seems not to work. (using a HP Elitebook G3)

Profile switching not possible with daemon running

I'm submitting a…

[x] Bug
[x] Feature Request
[ ] Documentation Request
[ ] Other (Please describe in detail)

Current Behavior

When I have the umonitor daemon running (umonitor -n), I can't switch the profile via the -l flag ...

~> umonitor -l mobile
umonitor process already running.
Please stop the existing process and try again.
If umonitor is not running, remove the lock file called .umonitor.lock underneath your home directory.

... and by using my xrandr binds, umonitor switches immediately back.

I have to pkill umonitor first in order to use umonitor -l mobile.

Desired Behavior (Suggestion)

Say, I have two profiles, docked and mobile and the umonitor daemon runs with identified profile docked. When I execute umonitor -l mobile but mobile is not being identified as the current setup, the daemon stores the current setup with the settings from profile mobile as a temporary profile until the setup changes (and switches to the to the setup corresponding profile then).

Rational

I have my laptop in / on my wall mount (closed) and docked 95 % of the time I'm using it at home. But on a video conference, I need the camera and microphone and the laptop screen then physically blocks my external screen. Hence I want switch to the laptop screen but keep it docked for all the peripherals and Ethernet. That is currently not possible without killing umonitor first.

Compilation fails with Python 3.9

Python 3.9 removed tp_print from PyTypeObject, resulting in

gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=x86-64 -mtu
ne=generic -O3 -pipe -fno-plt -fno-semantic-interposition -march=x86-64 -mtune=generic -O3 -pip
e -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fPIC -I/usr/include/python3.9 -c um
onitor/screen.c -o build/temp.linux-x86_64-3.9/umonitor/screen.o
umonitor/screen.c: In function ‘__Pyx_modinit_type_init_code’:
umonitor/screen.c:7248:38: error: ‘PyTypeObject’ {aka ‘struct _typeobject’} has no member named
 ‘tp_print’
 7248 |   __pyx_type_8umonitor_6screen_Screen.tp_print = 0;
      |                                      ^

This means umonitor no longer compiles. This breaks umonitor on Arch, as they've upgrade Python to 3.9

See https://bugzilla.redhat.com/show_bug.cgi?id=1791745

AUO unknown, Unknown profile*

On boot, umonitor -n fails:

~> umonitor 
docked
mobile
Unknown profile*
---------------------------------
~> umonitor --verbose
Connected to server
Number of profiles: 2
Trying to find which profile matches current setup
Current connected outputs: eDP1 (AUO unknown) DP1-2 (AOC U3277WB) 
Looping over profile docked
Configuration outputs: eDP1 (AUO unknown) DP1-2 (AOC U3277WB) 
Profile docked matches current setup
Done loading values from configuration file
Loading profile docked
Num outputs per profile docked: 2
Trying to find matching setting for DP1-2 (AOC U3277WB)
Found output in configuration file that matches DP1-2 (AOC U3277WB)
Trying match up the configuration resolution with the mode id
Found matching mode id: 512
Candidate crtc for this output: 64
Queing up crtc to load: 64
Crtc settings: x:0, y:0, rotation: 1, is_primary: 1, mode_id: 512, output: DP1-2
Trying to find matching setting for eDP1 (AUO unknown)
Found output in configuration file that matches eDP1 (AUO unknown)
Trying match up the configuration resolution with the mode id
No need to find mode id, just let this output be disabled later
Does any of queued crtc match currently loaded crtc 63?
Crtc: x:0, y:0, rotation: 1, mode_id: 77, output: eDP1
Queing disable crtc 63
Does any of queued crtc match currently loaded crtc 64?
Crtc: x:0, y:0, rotation: 1, mode_id: 78, output: DP1-2
Queing disable crtc 64
Does any of queued crtc match currently loaded crtc 65?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: eDP1
Does any of queued crtc match currently loaded crtc 66?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: VIRTUAL1

Looping over profile mobile
Configuration outputs: eDP1 (AUO unknown) 

Unknown profile*
---------------------------------

After manually setting

xrandr --output eDP1 --off --output DP1-2 --mode 3840x2160 --rate 60 --dpi 144 --set "Broadcast RGB" "Full" --primary
~> umonitor --verbose
Connected to server
Number of profiles: 2
Trying to find which profile matches current setup
Current connected outputs: eDP1 (AUO unknown) DP1-2 (AOC U3277WB) 
Looping over profile docked
Configuration outputs: eDP1 (AUO unknown) DP1-2 (AOC U3277WB) 
Profile docked matches current setup
Done loading values from configuration file
Loading profile docked
Num outputs per profile docked: 2
Trying to find matching setting for DP1-2 (AOC U3277WB)
Found output in configuration file that matches DP1-2 (AOC U3277WB)
Trying match up the configuration resolution with the mode id
Found matching mode id: 512
Candidate crtc for this output: 64
Queing up crtc to load: 64
Crtc settings: x:0, y:0, rotation: 1, is_primary: 1, mode_id: 512, output: DP1-2
Trying to find matching setting for eDP1 (AUO unknown)
Found output in configuration file that matches eDP1 (AUO unknown)
Trying match up the configuration resolution with the mode id
No need to find mode id, just let this output be disabled later
Does any of queued crtc match currently loaded crtc 64?
Crtc: x:0, y:0, rotation: 1, mode_id: 512, output: DP1-2
Queued crtc 64 matches! Remove duplicate crtc 64 from ll
Does any of queued crtc match currently loaded crtc 63?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: eDP1
Does any of queued crtc match currently loaded crtc 65?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: eDP1
Does any of queued crtc match currently loaded crtc 66?
Crtc: x:0, y:0, rotation: 1, mode_id: 0, output: VIRTUAL1
No crtcs to disable or enable. Profile docked is currently active
*

Looping over profile mobile
Configuration outputs: eDP1 (AUO unknown) 

---------------------------------
~> umonitor
docked*
mobile
---------------------------------

it detects the profile again.

Segment Fault (core dumped)

It is probably me doing something wrong here.
I installed umonitor from AUR and used arandr to generate a config. Then I tried to save the config with umonitor

[danile@danile-pc ~]$ umonitor --save .screenlayout/home.sh 
Segmentation fault (core dumped)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.