chiark / gitweb /
dot/bash_profile: Don't start new gnome-keyring-daemon processes.
authorMark Wooding <mdw@distorted.org.uk>
Mon, 10 May 2010 23:07:24 +0000 (00:07 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Mon, 10 May 2010 23:07:24 +0000 (00:07 +0100)
Be careful only to kick ones which are already running, by poking D-Bus
and seeing what happens.

dot/bash_profile

index 69fbebf1c9772b0bc38de5b4edb9cb735aac1a76..24427bd6f5bce8a190dae0759919c128f32bf98b 100644 (file)
@@ -198,8 +198,14 @@ ulimit -S -c 0
 
 # --- Start an ssh authentication agent ---
 
-if stuff=$(gnome-keyring-daemon -s 2>/dev/null); then
-  eval "$stuff"; export GNOME_KEYRING_CONTROL SSH_AUTH_SOCK
+if [ "$DBUS_SESSION_BUS_ADDRESS" ] &&
+   dbus-send --session --print-reply --dest=org.freedesktop.DBus \
+     / org.freedesktop.DBus.GetNameOwner string:org.gnome.keyring \
+     >/dev/null 2>/dev/null &&
+   stuff=$(gnome-keyring-daemon -s 2>/dev/null)
+then
+  eval "$stuff"
+  export GNOME_KEYRING_CONTROL SSH_AUTH_SOCK
 fi
 
 eval `start-ssh-agent -b`