Cannot change screen resolution in X11

On my LG GRAM 16, in KDE, the standard resolution is 2560x1600, and I’m using scaling 175%.
I wanted to try a lower resolution, but I’ve just realized that that’s the only resolution available in the “Displays” setting!

This is also the output of xrandr:

Screen 0: minimum 8 x 8, current 2560 x 1600, maximum 32767 x 32767
eDP1 connected primary 2560x1600+0+0 (normal left inverted right x axis y axis) 340mm x 220mm
   2560x1600     59.99*+
DP1 disconnected (normal left inverted right x axis y axis)
DP2 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

I have the same problem in GNOME… but I tried to start GNOME with Wayland instead of X11 and surprise: I have all the resolutions available both in the settings and in xrandr:

Screen 0: minimum 16 x 16, current 1920 x 1200, maximum 32767 x 32767
XWAYLAND0 connected primary 1920x1200+0+0 (normal left inverted right x axis y axis) 340mm x 220mm
   1920x1200     59.86*+
   1600x1200     59.82  
   1440x1080     59.87  
   1400x1050     59.86
...

I haven’t experienced this problem in Kubuntu or Manjaro… is there anything specific from EndeavourOS (I’ve been using this distribution for only a few weeks now).

Thanks in advance

You can add a missing/custom resolution in X11:

https://wiki.archlinux.org/title/xrandr#Adding_undetected_resolutions

Thanks! But I’d like to know whether this does not work automatically in EndeavourOS, as I said, it works in Kubuntu: xrandr finds all the resolutions… So I’d like to understand why.

The differences I found up to now are with inxi -G.

This is EndeavourOS:

Graphics:
  Device-1: Intel TigerLake-LP GT2 [Iris Xe Graphics] driver: i915 v: kernel
  Device-2: Realtek LG Camera type: USB driver: uvcvideo
  Display: x11 server: X.Org 1.21.1.3 driver: loaded: intel
    unloaded: modesetting resolution: 2560x1600~60Hz
  OpenGL: renderer: Mesa Intel Xe Graphics (TGL GT2) v: 4.6 Mesa 21.3.4

while this is Kubuntu:

Graphics:  Device-1: Intel TigerLake-LP GT2 [Iris Xe Graphics] driver: i915 v: kernel 
           Device-2: Realtek LG Camera type: USB driver: uvcvideo 
           Display: x11 server: X.Org 1.20.13 driver: loaded: modesetting unloaded: fbdev,vesa 
           resolution: 2560x1600~60Hz 
           OpenGL: renderer: Mesa Intel Xe Graphics (TGL GT2) v: 4.6 Mesa 21.2.2 

besides the different X.Org version, I see that Kubuntu has driver: loaded: modesetting, while EndeavourOS has driver: loaded: intel unloaded: modesetting. So is this a driver problem? Maybe that’s related to this Troubles with screenshots - #3 by lorebett that is xf86-video-intel? Is there a way to force modesetting instead of intel?

Thanks again in advance

Have you tried setting modesetting?

/etc/X11/xorg.conf.d/20-intel.conf

Section "Device"
   Identifier  "Intel Graphics"
   Driver      "modesetting"
EndSection

What does program ChangeDisplayResolution show?
And does it work?

I’ll try to create that file and see what happens… I’ll also try to remove xf86-video-intel again

Here’s the result, as you see, only one resolution is available:

image

OK, I tried that and xrandr now correctly shows several resolutions :slight_smile:

However, from what I understand, that’s the same result I could achieve by removing xf86-video-intel and then I get uglier widgets, as I said in Troubles with screenshots - #3 by lorebett

For example, this is a screenshot without using modesetting

with xf86-video-intel

and this is with modesetting (that is, not using xf86-video-intel):

without xf86-video-intel

I don’t think it’s my impression: the second screenshot is much uglier menus and widgets are not well spaced and everything looks much more compact (but ugly, IMHO).

Note that in Kubuntu, where, as I said above, modesetting is being used (without any configuration), the layout is still nice:

kubuntu-modesetting

So I guess it’s really a problem somewhere in EndeavourOS…

I’m not sure which one you mean is the second picture. But the bottom one (middle) looks better to me. You can’t really tell looking at these pictures what it actually looks like on your screen.

Did you try it with the xorg file change and also removing the intel driver?

What is the reason you are using 175% scaling? Have you tried setting another resolution without changing the scaling first?

@lorebett
I’ve been looking around and it seems that supposedly Linux does not take the scaling into account for the --left-of option. Maybe using xrandr you can set it up. Not sure if this will work on KDE.

There are 3 screenshots:

  • the first one is without modesetting, and it looks great to me, with widgets well-spaced
  • the second one is with modesetting and it doesn’t look good to me: widgets and menus entries are all “compressed” and less spaces. While you say this one looks good to you?
  • the third one is from Kubuntu that uses modesetting, and it still looks OK to me because everything looks well-spaced

I could also try to remove the intel driver, but as I said, that is something I had already tried in the past, achieving the same “compressed” layout.

The second one looks good to me as these are just images and i can’t really tell what it actually looks like on your screen at the resolution and settings you are using and it’s not the same monitor and settings that i would have. So i can’t really judge it. I like smaller size or more compressed than most people.

So I tried removing also xf68-video-intel, and, as expected, the result is the same…

I was using 175% scaling with 2560x1600 and KDE seems to be the only one to handle this. Everything under 175% with this resolution just hurts my eyes :wink: However, this seems to work seamlessly only in Kubuntu. In EndeavourOS, to use this, I should really use xf68-video-intel, otherwise, I have the ugly widgets…

I now tried to change the resolution to 1920x1200 and 150% scaling factor. Everything looks nice (like it used to be with xf68-video-intel).

Of course, everything is more blurred… but for the time being, I’ll stick with that.

I’m still taking some time to understand whether it’s better to go back to Kubuntu (where, as I said, modesetting is used and everything still looks nice even with 175% scaling with 2560x1600). I can’t test it right now, but I’m pretty sure I remember this used to work in Manjaro as well…

1 Like

You should go with your priorities. If your priority is what pleases your eyes and you cannot get this result in EnOS, it’s really good decision to go to another distro.

Although… FWIW Archlinux/EnOS provide newer driver releases than Ubuntu-based systems.
It might just be that your system needs some configuration that is specific to your specific hardware and personal preference.
Archwiki has several such potential settings/configuration that might “fix” your display’s appearance to your needs. Most of the advice is presented with “IFs”, which suggests that not every system requires one or any of them. When trying to find a best setting, you have to try some of those advices. They seem easy to apply, with very good and detailed instructions.
I suggest you do that and if you find it difficult, just ask here for some help.

For example,

  • remove the xf68-video-intel package and remove any Xorg file at /etc/X11/xorg.conf.d/*.conf (except for keyboard layout). Test.
  • add i915 intel_agp in the MODULES array in /etc/mkinitcpio.conf, recreate kernel images (sudo mkinitcpio -P) and reboot to test
  • take each wiki advice one by one, apply, test
    and so on…

Have you tried lts kernel? Just wondering. Could also be newer plasma and fractional scaling, could try 200% instead and use smaller fonts. I also run an Intel Xe iris, but xfce and resolution can be changed and nothing scales oddly. But ran into problems with newer kernel a while ago while lts was ok.

@petsam @Zircon34 and others, thank you all for your suggestions.

200% might be OK, but some applications do not work correctly (mainly, Eclipse, which I use everyday).

I’ll also try the lts kernel, even because I’m pretty sure that when I installed EndeavourOS I was using 5.15 while now the latest one is 5.16. I’m also pretty sure that resolutions could be changed when I installed EndeavourOS and xf86-video-intel was already there by default

If it’s a gtk app and you are scaling plasma based on qt, this can normally be fixed in your .profile by appending some options.

See point 3 in my ten tweaks Ten tweaks for EOS i3 wm on lenovo with high dpi

In that case you would only add entries for gtk and scale to your liking (down or up). You will need to logout and back in for changes to take effect. Example:

export GDK_SCALE=2
export GDK_DPI_SCALE=0.5

I have the same problem on xfce (gtk) when I run qtcreator based and have to scale qt based apps.

Good luck!