summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRay Strode <rstrode@redhat.com>2015-10-14 10:53:39 -0400
committerRay Strode <rstrode@redhat.com>2015-10-14 11:08:40 -0400
commita8896ccad65583885735a04205351f48a42f29ae (patch)
tree0d65d467ca55048235bb3f62d47b7fdeba71d86e
parent3c26d87bd89128a1bd5859f90adc028fcbee5e8e (diff)
downloadgnome-session-a8896ccad65583885735a04205351f48a42f29ae.tar.gz
main: set SSH_AUTH_SOCK explicitly in wayland sessions
Until we can get a more complete environment variable propagation story figured, implement a quick hack for the most pressing one, SSH_AUTH_SOCK. https://bugzilla.gnome.org/show_bug.cgi?id=738205
-rw-r--r--gnome-session/main.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/gnome-session/main.c b/gnome-session/main.c
index e68b6f4b..b48cef41 100644
--- a/gnome-session/main.c
+++ b/gnome-session/main.c
@@ -349,6 +349,18 @@ main (int argc, char **argv)
*/
gsm_util_setenv ("XDG_MENU_PREFIX", "gnome-");
+ /* hack to fix keyring until we can reorder things in 3.20
+ * https://bugzilla.gnome.org/show_bug.cgi?id=738205
+ */
+ if (g_strcmp0 (g_getenv ("XDG_SESSION_TYPE"), "wayland") == 0 &&
+ g_getenv ("GSM_SKIP_SSH_AGENT_WORKAROUND") == NULL) {
+ char *ssh_socket;
+
+ ssh_socket = g_build_filename (g_get_user_runtime_dir (), "keyring", "ssh", NULL);
+ gsm_util_setenv ("SSH_AUTH_SOCK", ssh_socket);
+ g_free (ssh_socket);
+ }
+
gsm_util_set_autostart_dirs (override_autostart_dirs);
session_name = opt_session_name;