[CentOS] a-gnome-oyences

Thu Mar 28 16:43:44 UTC 2013
Gordon Messmer <yinyang at eburg.com>

On 03/28/2013 07:00 AM, m.roth at 5-cent.us wrote:
> Most of my users are on kde, as am I (I really don't like gnome). I've got
> one on gnome, though, CentOS 6.4, and I have a problem: I have to start an
> agent running ->on login<-, so that the same one is in the environment of
> every term window he opens.

That would be the normal configuration.

> In kde, no problem, I modify
> /etc/X11/xinit/xinitrc-common so that code in there calls our (newer)
> ssh-agent instead of the stock one. (And, of course, it's killed on
> logout, and there's only one running, not one every time that never go
> away unless killed manually.)

You're already making things more complicated than they should be.  The 
ssh agent is supposed to be the parent process of your login session. 
That is, your login session should be:

  ssh-agent startkde
or:
  ssh-agent gnome-session

You get just one, and it closes when the session ends.  You *can* set it 
up otherwise, but other configurations are less reliable and more 
complex.  Don't make your life difficult.

With GDM, you'd modify the session file in /usr/share/xsessions.  You'd 
prefix the "Exec" line with "ssh-agent ", and be done.  As those files 
would be over-written during updates, you'd actually probably make a 
copy, edit that to prefix the command in Exec=, and tell your users to 
use the session that you'd edited.  No problem.

I'm not sure which DM you're using, but if it's actually using xinitrc 
(and thereby, xinitrc-common), that's already the configuration that's 
used.  The SSH_AGENT arg is set, and it's the parent process of 
Xclients, which runs your session.  You shouldn't need to change 
anything at all, unless your newer ssh-agent is at a different path. 
So, in that case, the only thing you should need to change is to run 
gnome-session-properties, and uncheck "SSH Key Agent".