Samsung Odyssey G9 on QubesOS

After months of careful consideration I pulled the trigger on a Samsung Odyssey G9, a personal Christmas present!

This screen is very impressive at 49" with an extreme curve. I couldn’t wait to get it set up.

QubesOS had quite the difficulty remembering the Display settings for this monitor, I had to reconfigure it every time I booted or unlocked my screen. It also defaulted to 3840x1080 which just resulted in a black screen until the resolution was flipped to [email protected] Instead of using QubesOS Display settings to position the monitors, I opted for the more permanent Xorg configuration.

Typically you’d generate the modelines via gtf or cvt, however, those didn’t work and resulted in a lot of screen flicker. I decided to use the modeline from the Xorg.0.log file:

[250743.850] (II) NOUVEAU(0): Modeline "5120x1440"x60.0 468.99 5120 5168 5200 5280 1440 1443 1453 1481 +hsync -vsync (88.8 kHz e)

I have a few monitors connected so I had to create a /etc/X11/xorg.conf.d/10-monitors.conf file with the following content:

Section "Monitor"
  Identifier "DP-1"
  Modeline "5120x1440_60.00" 468.99  5120 5168 5200 5280  1440 1443 1453 1481 +hsync -vsync
  Option "PreferredMode" "5120x1440_60.00"
  Option "DPMS" "true"
  Option "Position" "1921 611"
  Option "Primary" "true"
EndSection

Section "Monitor"
  Identifier "DVI-I-1"
  Option "PreferredMode" "1920x1080"
  Option "Position" "0 1080"
  Option "DPMS" "true"
EndSection

Section "Monitor"
  Identifier "HDMI-1-1"
  Option "PreferredMode" "1920x1080"
  Option "Position" "0 0"
  Option "DPMS" "true"
EndSection

Once this file is created you can just kill the X process or issue systemctl restart lightdm.

You’ll also have to increase the video memory allocated to each qube to prevent the internal desktop resizing from failing. This manifests itself as certain portions of windows not working correctly (typing, for example) and was very perplexing before finding the right documentation. See this.


Illustration of Vince

Vince Hillier is the President and Founder of Revenni Inc. He is an opensource advocate specializing in system engineering and infrastructure. Outside of building solid infrastructure that doesn't break the bank, he's interested in information security, privacy, and performance.