Hi everyone! New to Endeavour OS. Just did a fresh install and first thing I did was to set up the nvidia drivers using instructions here. I installed optimus manager too and it’s currently on hybrid mode.
My 15.6" laptop supports 4k @ 3840 x 2160 but since this is too small for me, I ended up using 2560x1440 at 150% scaling.
Everything is okay so far but I can’t seem to get SDDM / log in screen to change resolution/DPI at all. It is still showing as 4k so text is very tiny.
Typing xdpyinfo | grep -B2 resolution shows the below
screen #0:
dimensions: 2560x1440 pixels (676x380 millimeters)
resolution: 96x96 dots per inch
Things I have tried after searching around:
“Apply plasma settings” in SDDM settings
I initially tried this to change the background image, but noticed this would only apply once and reset every time I restart (it would go back to default image). So I just changed background according to theme.conf.user file as stated here.
Changing to another theme asides from the default breeze didn’t work either. In either case it never changed the resolution/DPI.
2. Adding
[X11]
ServerArguments=-nolisten tcp -dpi 96
to a number of different files: /etc/sddm.conf - was intially blank /etc/sddm.conf.d/dpi.conf - didn’t exist, tried creating the file /etc/sddm.conf.d/hidpi.conf - didn’t exist, tried creating the file /etc/sddm.conf.d/kde_settings.conf - changed the DPI /usr/lib/sddm/sddm.conf.d/default.conf - along with setting EnableHiDPI=true
Undo all your changes, to start from a clean start.
The proper way to apply custom SDDM settings is as a drop-in file in this folder, with .conf extension
/etc/sddm.conf.d/
Don’t use /etc/sddm.conf. Delete it.
Check your full set of active settings:
for conf in /usr/lib/sddm/sddm.conf.d/*.conf /etc/sddm.conf.d/*.conf /etc/sddm.conf ; do if [[ -r $conf ]]; then echo -e "\n### From $conf"; grep . "$conf" | grep -v '#';fi;done
Look for overridden settings (same setting in more than one file)
Read man sddm.conf for info about each setting.
Change one thing at a time and test.
Read log files, to see differences in messages. Log files paths for sessions are showed in settings files. Xorg logs and journal logs would help.
SDDM is a user on its own, so you can check its $HOME for any usefull setting, or logs in the path /var/lib/sddm/ . Example:
I have followed your advice and made an sddm.conf file in /etc/sddm.conf.d/. I just copied over the [X11] portion from /usr/lib/sddm/sddm.conf.d/default.conf and made changes to the DPI portion, and it worked! Login screen now showing at proper scale.
However - noticed nvidia optimus manager was no longer running. The sddm.conf was conflicting with 20-optimus-manager.conf, and once I followed instructions as indicated here, optimus works again but then it doesn’t pass the correct DPI option I set.
If they are just scripts, would you mind posting contents of them?
If not, any info about usage might help (man page, command help, etc.).
I assume there must be a way to pass dpi setting in the configuration files being used/swaped with optimus-manager usage (toggling state).
Added:
I guess the relevant files (scripts) are here (xsetup-* is the equivalent of the SDDM Xsetup scripts, one for each mode, and the rest are for customized optimus commands).
Comment out dpi_str = config["nvidia"]["dpi"] and replace with dpi_str = "188"
To add for future reference: Am using integrated mode and also tried messing with the respective conf file as mentioned here but this didn’t work. Only editing the python file did.
And with that my DPI problem with SDDM + Optimus manager is finally solved