EDIT: After asking on the Linux IRC channel on FreeNode,I found out that X11 doesn't support per-monitor scaling. My 4k embedded display is at 200% scaling, and my external 1080p monitor was also at 200% scaling. It was suggested that I switch to GNOME as GNOME on Wayland supports per monitor scaling. Unfortunately, it seems like my system is still defaulting to X11 when I choose GNOME at login. Apparently there should be two GNOME options, one "default" GNOME, and another for "GNOME on Xorg". I do NOT see that, I just have the "default" option.
The vast, vast majority of search results I've seen are for people trying to disable Wayland and go to Xorg. I have the Wayland packages that were installed when I installed the GNOME group: dnf group install "GNOME Desktop Environment"
QUESTIONS:
- How do I make Wayland the default windowing system?
ORIGINAL POST BELOW
I run Fedora 30 on my laptop with a Nvidia GTX 1050 Mobile dGPU. I've got an Intel i7-7700HQ CPU with an iGPU. I use Cinnamon DE.
I recently got Nvidia drivers installed and working and I'm able to have a second monitor work via my HDMI port, unfortunately, this monitor is being displayed at something like 980x540, whereas the monitor is 1920x1080.
xrandr -q
output shows that the external monitor is supposedly displaying at 1920x1080:
Screen 0: minimum 8 x 8, current 5760 x 2160, maximum 32767 x 32767
HDMI-0 connected 1920x1080+3840+0 (normal left inverted right x axis y axis) 476mm x 268mm
1920x1080 60.00*+
<other resolutions and refresh rates>
eDP-1-1 connected primary 3840x2160+0+0(normal left inverted right x axis y axis) 345mm x 194mm
3840x2160 60.02*+ 60.00 60.01 59.98 40.05 59.97
<other resolutions and refresh rates>
I've tried creating my own xorg.conf
files, using Xorg -configure
, using nvidia-xconfig
, the nvidia-settings
GUI, and the built-in display management GUI. I've read several posts here, Ubuntu guides, Arch guides, and Debian guides on this. At most I can get the external monitor to display correctly when the laptop lid is closed, or with the nvidia-xconfig
-produced xorg.conf
, but when that happens, the embedded monitor doesn't appear in xrandr -q
output at all. Xorg -configure
produces a xorg.conf
file, but complains that Number of created screens does not match number of detected devices. Configuration failed.
I have serveral attempt xorg.conf
files both generated and ones I wrote or composed with bits of generated files and my attempts. I'm not sure how to display all of them here without making a giant wall of text...
Questions:
- How do I make my external monitor display at the correct resolution and refresh rate - 1920x1080 60Hz
- I've heard in conversation with friends that Xorg is basically trash in implementation, but beautiful in concept. One friend in particular talked about it being possible for other clients to the X server being able to "see" the displays for other clients, basically data being able to leak through. Is this true; the data leak and the bit about it being a trash implementation of the X standard?
- Is there are a different windowing manager that I can/should use that is easier to work with or "better" than X? I don't know how to define better as I'm new to dealing with X. Or is there a "better" implementation of the X standard that I can use.
xrandr
. Your friend is wrong, answer is Yes. X is the name of protocol, it's not a "windowing manager".xrandr
is incorrectly showing that the monitor attached via the HDMI port is displaying at the correct resolution. How can I usexrandr
to fix what it doesn't think is broken?