blob: 4ae627778ea73ae167197c62741f7516850baa1c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#! /bin/sh
#!buildShellBin prepend-path=openssh
#
# usage: with-ssh [--add[=KEY] ...] [COMMAND [ARGS ...]]
#
set -efu
case ${WITH_SSH_STAGE-1} in
1)
export WITH_SSH_STAGE=2
exec ssh-agent -A "user:$XDG_RUNTIME_DIR/ssh-agent" "$0" "$@"
;;
2)
if test $# = 0; then
set -- "$SHELL"
fi
case "$1" in
--add)
shift
ssh-add
exec "$0"
;;
--add=*)
key=$1; shift
key=${key#--add=}
ssh-add "$key"
exec "$0" "$@"
;;
*)
exec "$@"
esac
;;
*)
echo "with-ssh: error: bad stage: $WITH_SSH_STAGE" >&2
exit 1
esac
|