Can someone clarify to me the two display power management features existing in XFCE 4?
* One is xscreensaver, which is the legacy screen saver program that also supports DPMS display sleep/power off .
* The other is the newer xfce4-power-manager
Both have an option for timeout for screen blanking and power off, but they two seems to compete with each other. Which one should I use?
I found a thread in which someone stated (post #4) that xfce-power-manager deliberately does not blank the screen if a screensaver is installed. IDK if that is true - and the thread is 3½ years old - but it does sound sensible. You might get some use out of said thread, so here is the link:
I, like you, am curious about what is the accepted correct way of configuring these two things when the user has both installed.
I wish one of the xfce4 developers would answer us.
I decided to delve into the source code. I would speak for xfce 4.8, which is in Debian Wheezy. Not sure about newer versions, but probably they are not going to be that different.
1) xfce4 screen locking: it uses whatever software is available: xflock4, gnome screensaver, xscreensaver, ... ; see subroutine xfpm_lock_screen() in xfpm-common.c. If none of these is found, screen locking won't work.
2) display suspend/off: it uses dpms (src/xfpm-dpms.c) -- so it basically serves as a GUI/automatic adjuster of X DPMS settings.
So, xfce power manager itself does not have the ability to do all these in itself; it relies on existing infrastructure. I think this is what supposed to be done for a lightweight GUI/Desktop system.
I have checked that the DPMS settings (via command: xset -q) are set accordingly if I tweak with the screen suspend/off timer in XFPM.
However, I notice one problem here. Both xscreensaver and XFPM have their own thoughts on the how long the timeouts are for the display standby/suspend/off. You can see this by alternating the invocation of xscreensaver-demo (to set up the xscreensaver parameters) and xfce4-power-manager-settings (XFPM settings). Whichever invoked the last time, that's what eventually sets the DPMS settings. But this is not the whole story. If, in xfpm settings dialog, the timeout settings are not changed (ie. the values are the same upon closing the dialog box), then no changes were done on the DPMS settings, so it did not get applied. I think I need to bring this up to xfce community--I don't know if anyone else cares?
I decided to delve into the source code.
xfce power manager itself does not have the ability to do all these in itself; it relies on existing infrastructure. I think this is what supposed to be done for a lightweight GUI/Desktop system.
If, in xfpm settings dialog, the timeout settings are not changed (ie. the values are the same upon closing the dialog box), then no changes were done on the DPMS settings, so it did not get applied.
That, too, makes sense - for a change to be applied, something generally needs to actually be changed. But it might be considered to be somewhat counterintuitive. IDK if there is an easy way to address this or not. One way I can think of to deal with it - and I agree that in situations where two or more components that address the same function but which have different settings for that function... should probably get some attention - is for a check to be done to see if there are other components that have those differing settings and, if so, to mirror them. If/when they are mirrored, there is no longer a conflict, and then if the user makes a change, the act of doing so causes a change in the behavior of the thing that is changed (as it apparently does now).
But IDK how much effort that would involve, nor do I know how much is available. I've gotten the impression that unlike some linux projects, Xfce might be 100% volunteer-driven - with even the main developers working in their spare time. Which is nice in concept, of course, but it almost certainly means that their number-one priority must be to provide food/shelter for their spouses and children and to manage to spend enough time with same to be able to remember what they look like, lol.
I think I need to bring this up to xfce community--I don't know if anyone else cares?
Almost certainly, someone cares.
I knew that there was a developer mailing list. I just realized that there are others as well. Perhaps posting your findings/concerns to the developer (or another) list might be appropriate - and helpful?
https://mail.xfce.org/mailman/listinfo/xfce - Xfce general discussion list
https://mail.xfce.org/mailman/listinfo/xfce4-dev - Xfce development list
https://mail.xfce.org/mailman/listinfo/ - All the public mailing lists on mail.xfce.org
I am starting to think that this forum isn't the primary Xfce communications medium, but instead merely one for people who don't like mailing lists.
I posted a bug report last night, here:
I hope this will get the ball rolling.
My previous thread about this was http://forum.xfce.org/viewtopic.php?id=8118
Anyway, on my setup I've disabled monitor power management in xfce power manager and I use xscreensaver for this.
Otherwise xfce power manager does not lock screen "when idle" like xscreensaver does.
Drawback is that on my netbook I cannot set different timeouts for ac power and battery (xscreensaver doesn't deal with this).
Yes, I could do something like a script that runs when power changes and modifies xscreensaver setup... But up to now I had no time to check that.
In my opinion, as I said in my previous forum post, a solution could be xfce power manager having not only an option to lock screen when suspend-hybernate, but also an option to "lock when idle" , using xflock4 ...