Frustrated by this, since it failed to load my ssh keys, I’ve finally figured out how to get xfce to not use
gpg-agent. You need to set a couple of properties in the “xfconf properties DB”, that xfce checks when starting up. The simplest way to do that is to use the Setting Editor (aka the
xfce4-settings-editor program) and add in the two following properties under the
/startup/ssh-agent/enabled (a boolean) to
/startup/ssh-agent/type (a string) to
The trick is to make sure you type in the full path to the properties when creating them, otherwise the Setting Editor crashes.
Details, if you care…
I figured this out by first noticing that I couldn’t load my ssh keys using
ssh-add (perhaps there is a gpg tool for this, I dunno). Looking at ps output I noticed there was no
ssh-agent process running but there was a
gpg-agent process running with an
--enable-ssh-support arg passed to it. To figure out how to change that, I starting by looking at the
/usr/local/bin/startxfce4 script which, in my case, ends up using
/usr/local/etc/xdg/xfce4/xinitrc to start
xinitrc file, searching for “agent” there are some
xfconf-query calls, which seems to be how xfce’s properties DB is queried. I tried using that
xfconf-query to create new properties but couldn’t seem to get it to work. It sure looks like that’s possible, but the documentation on it is pretty much non-existent as far as I could tell. When I first came across this, I punted and just commented out the code in
xinitrc, but after rebuilding something (xfce itself probably) I lost those changes as was back to not being able to load my ssh keys.
This time I tried using the GUI Setting Editor app which worked, as long as you type in the full path of the property to set. After that, I noticed that this properties DB is kept in xml files under a
~/.config/xfce4/xfconf/xfce-perchannel-xml/ dir. So perhaps this could have also been done by adding some xml code into the
xfce4-session.xml file there.