summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Pitt <martin.pitt@ubuntu.com>2016-07-22 14:47:41 (GMT)
committerMartin Pitt <martin.pitt@ubuntu.com>2016-07-22 14:48:12 (GMT)
commit402f7b737f8d554139860c55f80b35602a57ea64 (patch)
treed0b46196cd4cef8b2304c34f2a6dd87939d2df62
parent0999d4f784a9c17e57a7349874baba0cba9cc7aa (diff)
Add ssh-agent
-rw-r--r--debian/changelog1
-rw-r--r--usr/lib/systemd/user/ssh-agent.service16
-rw-r--r--usr/share/upstart/systemd-session/upstart/ssh-agent.override1
3 files changed, 18 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
index 7f8db79..a55e759 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ systemd-graphical-session (0.0.10) UNRELEASED; urgency=medium
[ Martin Pitt ]
* systemd-graphical-session.conf: Update comment and drop stray xargs.
+ * Add ssh-agent.
[ Iain Lane ]
* Drop session-migration, moving to the real package.
diff --git a/usr/lib/systemd/user/ssh-agent.service b/usr/lib/systemd/user/ssh-agent.service
new file mode 100644
index 0000000..aaf2210
--- /dev/null
+++ b/usr/lib/systemd/user/ssh-agent.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=OpenSSH Agent
+Before=graphical-session-pre.target
+ConditionPathExists=/etc/X11/Xsession.options
+
+[Service]
+ExecStart=/bin/sh -ec 'if [ -z "${SSH_AUTH_SOCK}" ] && grep -q "^use-ssh-agent$$" /etc/X11/Xsession.options; then \
+ S=${XDG_RUNTIME_DIR}/openssh_agent; \
+ dbus-update-activation-environment --verbose --systemd SSH_AUTH_SOCK=$$S SSH_AGENT_LAUNCHER=openssh; \
+ initctl set-env --global SSH_AUTH_SOCK=$$S || true; \
+ exec ssh-agent -D -a $$S; \
+ fi'
+ExecStopPost=/bin/sh -ec 'if [ "${SSH_AGENT_LAUNCHER}" = openssh ]; then \
+ dbus-update-activation-environment --systemd SSH_AUTH_SOCK=; \
+ initctl unset-env --global SSH_AUTH_SOCK || true; \
+ fi'
diff --git a/usr/share/upstart/systemd-session/upstart/ssh-agent.override b/usr/share/upstart/systemd-session/upstart/ssh-agent.override
new file mode 100644
index 0000000..2905494
--- /dev/null
+++ b/usr/share/upstart/systemd-session/upstart/ssh-agent.override
@@ -0,0 +1 @@
+manual