nx-libs
nx-libs copied to clipboard
(x2go-)Bug with screensaving?
(09:58:28) eoli3n: i have a strange bug (09:58:59) eoli3n: after a while, if i keep my session open on x2go but don't use it, it seems to freeze (09:59:15) eoli3n: but i can see that desktop clock is running, so i just can't operate in my session (09:59:28) eoli3n: i occurs with linux and windows x2goclient (09:59:55) eoli3n: i can't define what triggers this, i think about after some minutes not using it (10:00:35) eoli3n: with xfce4 DE (11:44:30) egy: unfortunately i don't know about that. someone more knowledgeable in the channel might reply (11:48:41) eoli3n: i found what fails (11:48:47) eoli3n: its screensaver (11:49:00) eoli3n: i'm trying to run "xset s off" at the start of each session (11:49:16) eoli3n: i added a 98custom file in /etc/x2go/xsessions.d/ dir (11:49:20) eoli3n: but it doesn't work (11:49:30) eoli3n: the line isn't run (11:49:46) eoli3n: because when i query the value with "xset q" i can still see that screensaver is on (11:49:57) eoli3n: i created a dir xinitrc.d (11:50:10) eoli3n: and move my script into it, chmod +x but still not run (11:50:21) eoli3n: how to run a script for each sessions ? (11:56:34) eoli3n: /etc/x2go/Xsession seems not executed (11:56:50) eoli3n: the lack of documentation and a good issue tracker is really not helpful... (11:56:55) eoli3n: x2go is A MESS (11:57:12) eoli3n: its a shame in 2020 (12:32:24) akik: eoli3n: there's another place for those scripts (12:34:56) akik: eoli3n: /usr/lib64/x2go/extensions (12:43:18) eoli3n: thanks lets try (13:31:33) eoli3n: problem was not Xsession, it was xset command i run was overrided by xfce4-power-manager (13:31:34) eoli3n: ... (13:34:12) akik: eoli3n: so xsessions.d worked too? (13:35:15) eoli3n: it does, i saw this by grep -i xsession /var/log/syslog
I had something similar today and could debug it. It is tied to this Code in Handlers.c:
233 /*
234 * Slow down the agent if the session is not connected to a valid
235 * display.
236 */
237
238 if (NXDisplayError(nxagentDisplay) == 1 && nxagentShadowCounter == 0 && nxagentOption(SleepTimeMillis) > 0)
239 {
240 #ifdef TEST
241 fprintf(stderr, "nxagentBlockHandler: sleeping for %d milliseconds for slowdown.\n",
242 nxagentOption(SleepTimeMillis));
243 #endif
244 usleep(nxagentOption(SleepTimeMillis) * 1000);
245
246 now = GetTimeInMillis();
247 }
After setting SleepTimeMillis to 0 using a debugger the session became usable again. So a feasible workaround is to add X2GO_NXOPTIONS="sleep=0"
to /etc/x2go/x2goagent.options
This is basically the same problem as described in #903. However, it is unclear what made NXDisplayError() return True in this case because the session was still up.
We have a fix for #903, we will see if that helps for this issue once that fix is merged. The mentioned fix is #977