You are not logged in.
Pages: 1
Hi All,
I recently gave my mother's PC a new monitor. The old one had an optimal resolution of 1280x1024 and the new one needs 1920x1080.
Unfortunately, XFCE does not remember this setting. If you set it correctly, it will be wrong again after the next reboot. I even created a monitor profile with the correct settings, but it is ignored after a reboot. This is quite annoying.
Does anyone know how to improve this situation?
In general, it would be interesting to know where XFCE remembers all these defaults. On my work laptop, for example, I have the problem that the fonts are always much too large after restarting. In the dialog Appearance/Fonts the correct value is shown, but the result is not correct.
Ideal would be about 9pt. But I have to select a different value at the top field "Default Font", e.g. 10pt first and save it (and then change it back if necessary), so that the font size is correct for the desktop.
It could be that I spoiled something when I first installed XFCE on this laptop. At that time, XFCE didn't have scaling and I had to use various guides from the Internet to get all the components bigger one by one, because at a Full HD resolution on a 15" display, everything is unusably tiny.
Any help is greatly appreciated!
Thanks!
Thomas
Last edited by conne116 (2022-01-30 10:26:41)
Offline
Hello and welcome to our forum!
Does anyone know how to improve this situation?
In general, it would be interesting to know where XFCE remembers all these defaults.
Most if not all of Xfce4's configuration data is stored in Xfconf. Screen settings in particular are stored in ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml. It's been asked many times already. Try following the steps described in this post.
Remember to edit the subject of your topic to include the [SOLVED] tag once you're satisfied with the answers or have found a solution (in which case, don't forget to share it as well), so that other members of the community can quickly refer to it and save their time. Pretty please!
Offline
Most if not all of Xfce4's configuration data is stored in Xfconf. Screen settings in particular are stored in ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml. It's been asked many times already. Try following the steps described in this post.
Thanks for your answer! I followed the instructions in the linked post, but unfortunately that doesn't change anything at all!
For whatever reason, there are *two* of these files per user on my mother's computer:
/home/[user]/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml
and
/home/[user]/.config/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml
I renamed all of them to displays.old.xml. After reboot it was the same as before: 1280x1024.
I find it interesting that when you go to Settings / Display and expand the list of available resolutions, the desired resolution 1920x1080 is marked with an asterisk. So obviously X knows that this is the correct resolution for this monitor!
Cheers,
Thomas
Last edited by conne116 (2022-01-29 14:01:37)
Offline
The second pathname doesn't seem right.
Anyway, try removing ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml but make sure to log out, change to any virtual terminal and kill the xfconfd process before doing so. Reboot is not required. Follow the exact steps described in that post.
Last edited by KBar (2022-01-29 14:09:23)
Remember to edit the subject of your topic to include the [SOLVED] tag once you're satisfied with the answers or have found a solution (in which case, don't forget to share it as well), so that other members of the community can quickly refer to it and save their time. Pretty please!
Offline
The second pathname doesn't seem right.
I think so too.
Anyway, try removing ~/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml but make sure to log out, change to any virtual terminal and kill the xfconfd process before doing so. Reboot is not required. Follow the exact steps described in that post.
That's what I did:
"log off" from XFCE;
SHIFT-CTRL-F2 --> console;
login as root;
check for xfconfd:
systemctl status xfconfd
and
ps ax | grep xfconfd
==> nothing !!!;
rename all occurences of displays.xml;
reboot;
The freshly created file actually contains the correct information:
<channel name="displays" version="1.0">
<property name="ActiveProfile" type="string" value="Default"/>
<property name="Default" type="empty">
<property name="HDMI1" type="string" value="Dell Inc. 23"">
<property name="Active" type="bool" value="true"/>
<property name="EDID" type="string" value="7eccc2c5030e212dac374633ac8e822781a60893"/>
<property name="Resolution" type="string" value="1920x1080"/>
<property name="RefreshRate" type="double" value="60.000000"/>
<property name="Rotation" type="int" value="0"/>
<property name="Reflection" type="string" value="0"/>
<property name="Primary" type="bool" value="false"/>
<property name="Scale" type="empty">
<property name="X" type="double" value="1.000000"/>
<property name="Y" type="double" value="1.000000"/>
</property>
<property name="Position" type="empty">
<property name="X" type="int" value="0"/>
<property name="Y" type="int" value="0"/>
</property>
</property>
</property>
Nowhere does it say anything about 1280x1024. Nevertheless, this setting is in fact selected!
I just don't understand what's going wrong.
Cheers,
Thomas
Last edited by conne116 (2022-01-29 14:31:20)
Offline
change to any virtual terminal and kill the xfconfd process
I just double checked:
# systemctl status xconfd
Unit xconfd.service could not be found.
The service doesn't seem to exist at all!
Even if XFCE is active, it's not there:
# ps ax | grep xconfd
23591 pts/0 S+ 0:00 grep xconfd
???
By the way, this is also the case on the mentioned laptop. Maybe that's part of the problem?
Last edited by conne116 (2022-01-29 14:49:11)
Offline
Right. You mistyped its name. It's xfconfd, NOT xconfd.
Remember to edit the subject of your topic to include the [SOLVED] tag once you're satisfied with the answers or have found a solution (in which case, don't forget to share it as well), so that other members of the community can quickly refer to it and save their time. Pretty please!
Offline
Right. You mistyped its name. It's xfconfd, NOT xconfd.
You are right! Sorry, sometimes one is a little blind!
New test:
if I'm logged in into XFCE session, xfconfd ist running...
...otherwise not
After removing displays.xml and rebooting, the new displays.xml is almost empty (few lines only)
after setting display settings using GUI dialog, it has the supposedly correct content (see above)
but: XFCE is working on 1280x1024 again after startup... damn!
Offline
Hmm, that's strange.
Could you post the full output of the following:
xfconf-query --channel displays --list --verbose
…before and after changing the resolution manually?
Remember to edit the subject of your topic to include the [SOLVED] tag once you're satisfied with the answers or have found a solution (in which case, don't forget to share it as well), so that other members of the community can quickly refer to it and save their time. Pretty please!
Offline
Hmm, that's strange.
Could you post the full output of the following:
xfconf-query --channel displays --list --verbose
…before and after changing the resolution manually?
Before (after deleting old displays.xml):
content of new displays.xml:
<?xml version="1.0" encoding="UTF-8"?>
<channel name="displays" version="1.0">
<property name="ActiveProfile" type="string" value="Default"/>
</channel>
call of xfconf-query:
$ xfconf-query --channel displays --list --verbose
/ActiveProfile Default
After setting display properties by GUI:
content of displays.xml:
<?xml version="1.0" encoding="UTF-8"?>
<channel name="displays" version="1.0">
<property name="ActiveProfile" type="string" value="Default"/>
<property name="Default" type="empty">
<property name="HDMI1" type="string" value="Dell Inc. 23"">
<property name="Active" type="bool" value="true"/>
<property name="EDID" type="string" value="7eccc2c5030e212dac374633ac8e822781a60893"/>
<property name="Resolution" type="string" value="1920x1080"/>
<property name="RefreshRate" type="double" value="60.000000"/>
<property name="Rotation" type="int" value="0"/>
<property name="Reflection" type="string" value="0"/>
<property name="Primary" type="bool" value="false"/>
<property name="Scale" type="empty">
<property name="X" type="double" value="1.000000"/>
<property name="Y" type="double" value="1.000000"/>
</property>
<property name="Position" type="empty">
<property name="X" type="int" value="0"/>
<property name="Y" type="int" value="0"/>
</property>
</property>
</property>
<property name="Fallback" type="empty">
<property name="HDMI1" type="string" value="Dell Inc. 23"">
<property name="Active" type="bool" value="true"/>
<property name="EDID" type="string" value="7eccc2c5030e212dac374633ac8e822781a60893"/>
<property name="Resolution" type="string" value="1920x1080"/>
<property name="RefreshRate" type="double" value="60.000000"/>
<property name="Rotation" type="int" value="0"/>
<property name="Reflection" type="string" value="0"/>
<property name="Primary" type="bool" value="false"/>
<property name="Scale" type="empty">
<property name="X" type="double" value="1.000000"/>
<property name="Y" type="double" value="1.000000"/>
</property>
<property name="Position" type="empty">
<property name="X" type="int" value="0"/>
<property name="Y" type="int" value="0"/>
</property>
</property>
</property>
</channel>
call of xfconf-query:
$ xfconf-query --channel displays --list --verbose
/ActiveProfile Default
/Default/HDMI1 Dell Inc. 23"
/Default/HDMI1/Active true
/Default/HDMI1/EDID 7eccc2c5030e212dac374633ac8e822781a60893
/Default/HDMI1/Position/X 0
/Default/HDMI1/Position/Y 0
/Default/HDMI1/Primary false
/Default/HDMI1/Reflection 0
/Default/HDMI1/RefreshRate 60,000000
/Default/HDMI1/Resolution 1920x1080
/Default/HDMI1/Rotation 0
/Default/HDMI1/Scale/X 1,000000
/Default/HDMI1/Scale/Y 1,000000
/Fallback/HDMI1 Dell Inc. 23"
/Fallback/HDMI1/Active true
/Fallback/HDMI1/EDID 7eccc2c5030e212dac374633ac8e822781a60893
/Fallback/HDMI1/Position/X 0
/Fallback/HDMI1/Position/Y 0
/Fallback/HDMI1/Primary false
/Fallback/HDMI1/Reflection 0
/Fallback/HDMI1/RefreshRate 60,000000
/Fallback/HDMI1/Resolution 1920x1080
/Fallback/HDMI1/Rotation 0
/Fallback/HDMI1/Scale/X 1,000000
/Fallback/HDMI1/Scale/Y 1,000000
Last edited by conne116 (2022-01-29 15:46:12)
Offline
It looks like you might have set it somewhere at a lower level and forgot about it.
Do the usual startup. Let the resolution remain at 1280x1024 and don't change it. Run the following:
xrandr --verbose --query
…and share the full output here.
Post the listing of the ~/.config/autostart directory:
ls -1 ~/.config/autostart
Search for the '1280x1024' string in /etc/X11 like so:
grep --recursive --ignore-case --binary-files=without-match '1280x1024' /etc/X11 2>/dev/null
Also in your home directory:
grep --recursive --ignore-case --binary-files=without-match '1280x1024' "$HOME"
Remember to edit the subject of your topic to include the [SOLVED] tag once you're satisfied with the answers or have found a solution (in which case, don't forget to share it as well), so that other members of the community can quickly refer to it and save their time. Pretty please!
Offline
Thanks! Success!
It looks like you might have set it somewhere at a lower level and forgot about it.
Post the listing of the ~/.config/autostart directory:
ls -1 ~/.config/autostart
That was the reason:
At ~/.config/autostart there was a file "ArandR Einstellungen.desktop" (or something like that, don't remember exactly), containing a "Exec" statement, pointing to ~/.screenlayout/standard.sh:
#!/bin/sh
xrandr --output VIRTUAL1 --off --output DP2 --off --output DP1 --off --output HDMI2 --off --output HDMI1 --mode 1280x1024 --pos 0x0 --rotate normal --output LVDS1 --off --output VGA1 --off
Then it was quite clear! But: I'm pretty sure that wasn't me!
I removed the ArandR item at "Session and Startup" / "Application Autostart" and it now works as desired!
Cheers,
Thomas
Offline
Pages: 1
[ Generated in 0.017 seconds, 7 queries executed - Memory usage: 609.95 KiB (Peak: 626.79 KiB) ]