Hello,
I have been trying to set up x2goserver on my Fedora 21 boxes, and gnome-terminal seems to be failing with symptoms similar to those described in #268.
It seems that x2goruncommand has been reworked a bit since that patch, and now attempts to force the forking programs to stay in the foreground by capturing their output to STDOUT. Unfortunately, this does not seem to work for gnome-terminal; the terminal window appears on the client for a second, then closes and the session is proclaimed to be finished. This can be fixed by explicitly setting IMEXIT="true" if called binary is gnome-terminal, which is done by the attached patch.
Regards, Rok
Package: x2goserver Version 4.0.1.19 Tag: patch Submitter: Rok Mandeljc <rok.mandeljc@gmail.com>
-------- Forwarded Message -------- Subject: [X2Go-Dev] Patch: x2goserver: x2goruncommand - set IMEXIT="true" for gnome-terminal Date: Mon, 16 Mar 2015 23:01:05 +0100 From: Rok Mandeljc <rok.mandeljc@gmail.com> To: x2go-dev@lists.x2go.org
Hello,
I have been trying to set up x2goserver on my Fedora 21 boxes, and gnome-terminal seems to be failing with symptoms similar to those described in #268.
It seems that x2goruncommand has been reworked a bit since that patch, and now attempts to force the forking programs to stay in the foreground by capturing their output to STDOUT. Unfortunately, this does not seem to work for gnome-terminal; the terminal window appears on the client for a second, then closes and the session is proclaimed to be finished. This can be fixed by explicitly setting IMEXIT="true" if called binary is gnome-terminal, which is done by the attached patch.
Regards, Rok
Control: submitter -1 Rok Mandeljc <rok.mandeljc@gmail.com> Thanks
On 17.03.2015 06:41 AM, Mihai Moldovan wrote:
I have been trying to set up x2goserver on my Fedora 21 boxes, and gnome-terminal seems to be failing with symptoms similar to those described in #268.
It seems that x2goruncommand has been reworked a bit since that patch, and now attempts to force the forking programs to stay in the foreground by capturing their output to STDOUT. Unfortunately, this does not seem to work for gnome-terminal; the terminal window appears on the client for a second, then closes and the session is proclaimed to be finished. This can be fixed by explicitly setting IMEXIT="true" if called binary is gnome-terminal, which is done by the attached patch.
This looked weird at first glance, because you've previously (two years ago) sent a patch to explicitly disable IMEXIT for GNOME Terminal.
However, Mike#1 changed the IMEXIT behavior with commit c3afe1c154dfeb0ba052f7506f0cadc5f6c62871 and that's also why it's now failing for GNOME Terminal.
I'll be adding IMEXIT="true" and your comment where gnome-terminal is defined, if that's OK with you?
Will craft and commit a patch tomorrow.
Thanks for contributing!
Mihai
N.B.: shouldn't this be also required for KDE4's konsole? Looks like it, but I'm not a KDE user, so... input welcome.
On 17. 03. 2015 07:02, Mihai Moldovan wrote:
Control: submitter -1 Rok Mandeljc <rok.mandeljc@gmail.com> Thanks
On 17.03.2015 06:41 AM, Mihai Moldovan wrote:
I have been trying to set up x2goserver on my Fedora 21 boxes, and gnome-terminal seems to be failing with symptoms similar to those described in #268.
It seems that x2goruncommand has been reworked a bit since that patch, and now attempts to force the forking programs to stay in the foreground by capturing their output to STDOUT. Unfortunately, this does not seem to work for gnome-terminal; the terminal window appears on the client for a second, then closes and the session is proclaimed to be finished. This can be fixed by explicitly setting IMEXIT="true" if called binary is gnome-terminal, which is done by the attached patch. This looked weird at first glance, because you've previously (two years ago) sent a patch to explicitly disable IMEXIT for GNOME Terminal.
However, Mike#1 changed the IMEXIT behavior with commit c3afe1c154dfeb0ba052f7506f0cadc5f6c62871 and that's also why it's now failing for GNOME Terminal.
Indeed :)
I'll be adding IMEXIT="true" and your comment where gnome-terminal is defined, if that's OK with you?
If you are talking about the if [ "$cmd" == "TERMINAL" ] switch, then I think it will not fix the case when session is "single command" and the "gnome-terminal" is manually entered as a binary (with or without path). I use such session definition on couple of workstations that have both KDE and GNOME installed to get gnome-terminal instead of konsole... Not sure how wide-spread that use case is, though; or if it could perhaps be done better?
Will craft and commit a patch tomorrow.
Thanks for contributing!
Mihai
N.B.: shouldn't this be also required for KDE4's konsole? Looks like it, but I'm not a KDE user, so... input welcome.
Capturing konsole's output to STDOUT seems to do the trick, at least at the moment. So for now, it works correctly without setting IMEXIT.
Regards, Rok
On 17.03.2015 11:09 AM, Rok Mandeljc wrote:
I'll be adding IMEXIT="true" and your comment where gnome-terminal is defined, if that's OK with you? If you are talking about the if [ "$cmd" == "TERMINAL" ] switch, then I
On 17. 03. 2015 07:02, Mihai Moldovan wrote: [...] think it will not fix the case when session is "single command" and the "gnome-terminal" is manually entered as a binary (with or without path). I use such session definition on couple of workstations that have both KDE and GNOME installed to get gnome-terminal instead of konsole... Not sure how wide-spread that use case is, though; or if it could perhaps be done better?
Yes, you're right and that makes sense.
As a side note, luckily, published applications are always handled with IMEXIT, so these are good.
[...] N.B.: shouldn't this be also required for KDE4's konsole? Looks like it, but I'm not a KDE user, so... input welcome. Capturing konsole's output to STDOUT seems to do the trick, at least at the moment. So for now, it works correctly without setting IMEXIT.
OK, thanks!
Hi all,
On Di 17 Mär 2015 15:43:15 CET, Mihai Moldovan wrote:
On 17.03.2015 11:09 AM, Rok Mandeljc wrote:
I'll be adding IMEXIT="true" and your comment where gnome-terminal is defined, if that's OK with you? If you are talking about the if [ "$cmd" == "TERMINAL" ] switch, then I
On 17. 03. 2015 07:02, Mihai Moldovan wrote: [...] think it will not fix the case when session is "single command" and the "gnome-terminal" is manually entered as a binary (with or without path). I use such session definition on couple of workstations that have both KDE and GNOME installed to get gnome-terminal instead of konsole... Not sure how wide-spread that use case is, though; or if it could perhaps be done better?
Yes, you're right and that makes sense.
As a side note, luckily, published applications are always handled with IMEXIT, so these are good.
[...] N.B.: shouldn't this be also required for KDE4's konsole? Looks like it, but I'm not a KDE user, so... input welcome. Capturing konsole's output to STDOUT seems to do the trick, at least at the moment. So for now, it works correctly without setting IMEXIT.
OK, thanks!
With gnome-terminal from GNOMEv2 IMEXIT needs to be false (because
gnome-terminal (v2) does _not_ fork to background).
With gnome-terminal from GNOMEv3 IMEXIT needs to be true (because
gnome-terminal (v3) forks to background).
DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby fon: +49 (1520) 1976 148
GnuPG Key ID 0x25771B31 mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de
freeBusy: https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xf...
On 17.03.2015 05:05 PM, Mike Gabriel wrote:
With gnome-terminal from GNOMEv2 IMEXIT needs to be false (because gnome-terminal (v2) does _not_ fork to background).
With gnome-terminal from GNOMEv3 IMEXIT needs to be true (because gnome-terminal (v3) forks to background).
Stefan just "submitted" another bug report yesterday in a private conversion about another piece of software that needs special handling via IMEXIT -- but likewise different values dependent on the specific version used.
I guess I should better handle that with a few new functions, to be able to add other software and versions more flexible in the future.
Mihai
P.S.: a workaround for those issues is to use pubapps.
On Fr 20 Mär 2015 05:53:09 CET, Mihai Moldovan wrote:
On 17.03.2015 05:05 PM, Mike Gabriel wrote:
With gnome-terminal from GNOMEv2 IMEXIT needs to be false (because gnome-terminal (v2) does _not_ fork to background).
With gnome-terminal from GNOMEv3 IMEXIT needs to be true (because gnome-terminal (v3) forks to background).
Stefan just "submitted" another bug report yesterday in a private conversion about another piece of software that needs special handling via IMEXIT -- but likewise different values dependent on the specific version used.
I guess I should better handle that with a few new functions, to be able to add other software and versions more flexible in the future.
Mihai
P.S.: a workaround for those issues is to use pubapps.
Before you start working on this...
Actually, the x2goruncommand stuff should be fully reworked. So that
TERMINAL, WEBBROWSER etc. are actually symlinks or .desktop files that
the x2goruncommand refers to.
Basically, I would fork every single application to background and
monitor its termination with other means (e.g. with the stdout/stderr
blocker), so that IMEXIT would always be FALSE.
DAS-NETZWERKTEAM mike gabriel, herweg 7, 24357 fleckeby fon: +49 (1520) 1976 148
GnuPG Key ID 0x25771B31 mail: mike.gabriel@das-netzwerkteam.de, http://das-netzwerkteam.de
freeBusy: https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xf...
Processing control commands:
submitter -1 Rok Mandeljc <rok.mandeljc@gmail.com> Bug #820 [x2goserver] Fwd: [X2Go-Dev] Patch: x2goserver: x2goruncommand - set IMEXIT="true" for gnome-terminal Changed Bug submitter to 'Rok Mandeljc <rok.mandeljc@gmail.com>' from 'Mihai Moldovan <ionic@ionic.de>'
-- 820: http://bugs.x2go.org/cgi-bin/bugreport.cgi?bug=820 X2Go Bug Tracking System Contact owner@bugs.x2go.org with problems