Subject: Re: [X2Go-Dev] Bug#744: Bug#744: user-local keystrokes.cfg does not work

From: Mike Gabriel <[email-masked]>
Date: Thu, 15 Jan 2015 22:56:49 +0000

Control: tag -1 patch

Hi Horst, hi Mihai,

On  Do 15 Jan 2015 21:57:27 CET, Mihai Moldovan wrote:

> On 15.01.2015 04:10 PM, Horst Schirmeier wrote:
>>  debian/wrappers/x2goagent | 12 ++++++++++--
>>  1 file changed, 10 insertions(+), 2 deletions(-)
>>
>> diff --git a/debian/wrappers/x2goagent b/debian/wrappers/x2goagent
>> index 129c7ca..750c651 100644
>> --- a/debian/wrappers/x2goagent
>> +++ b/debian/wrappers/x2goagent
>> @@ -29,7 +29,15 @@ test -x $NX_LIBS/../x2go/bin/$NXAPP && export  
>> NX_LIBS=$NX_LIBS
>>
>>  export LD_LIBRARY_PATH
>>
>> -NXAGENT_KEYSTROKEFILE=/etc/x2go/keystrokes.cfg
>> -export NXAGENT_KEYSTROKEFILE
>> +for CONFIG in ~/.x2go/config/keystrokes.cfg ~/.nx/config/keystrokes.cfg \
>> +              /etc/x2go/keystrokes.cfg /etc/nxagent/keystrokes.cfg

Thanks for your patch, Horst.

> Do we actually WANT to make ~/.nx/foo override /etc/x2go/foo *for

First: We want to allow users to override system-wide settings by user  
settings.

> x2goagent*? Or do we rather want to get rid of ~/.nx and /etc/nxagent
> entirely within x2go components (which, really, would make some sort of
> sense, especially if $SOMETHING created ~/.nx/config/keystrokes.cfg and
> users wonder why /etc/x2go/keystrokes.cfg does not take any effect.)

This indeed is a bit of a drama, I agree.

1. We want to provide NX-X11 to people who still use NX (e.g. FreeNX).

To provide this, we have to think generically here. Paths like ~/.nx  
or /etc/nxagent/ are hard-coded in NX-X11 and nxagent and I think that  
is ok. All X2Go'ish paths should be overridden via env vars or  
otherwise.

In nxagent, there is some code that checks ARGV[0] (== nxagent? ==  
x2goagent?) and triggers the branding of start-up screens of desktop  
sessions (the gray X2GO logo).

Maybe for setting paths (esp. ~/.x2go/keystrokes.cfg), some similar  
mechanism should be used?

> Actually, I see another problem there. Wouldn't it be smarter to
> consider both ~/.x2go/foo and /etc/x2go/keystrokes.cfg (if existent),
> with values in ~/.x2go/foo overriding those of the global configuration
> file? A priority-based merge would really be the thing we're looking
> for. I've got something like that lying around.

It would be smarter, indeed. But one step at a time.

Let's get this issue solved first cleanly (it obviously is a namespace  
issue for NX configuration files). Once that is sorted out, you should  
bring your merging code into the game. I'd suggest you file it as a  
wishlist bug + patch (or without patch) for now...

> It's not exactly small, though. And would benefit from being shared
> code, as it could (and also would) be used in both x2goagent and x2goserver.

Ok.... So we would bring another dependency into the game that no  
already existing library or whatsoever could already cover in  
functionality? (Mike is scared of to many upstream projects having to  
be maintained inside X2Go).

Mike

-- 

DAS-NETZWERKTEAM
mike gabriel, herweg 7, 24357 fleckeby
fon: +49 (1520) 1976 148

GnuPG Key ID 0x25771B31
mail: [email-masked], http://das-netzwerkteam.de

freeBusy:
https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb