aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/%HOME%/.bash_profile
blob: 317adaea20c30b22fc3309060b9f9a89cf70d5c7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[ -r "$HOME/.bashrc" ] && source "$HOME/.bashrc"

echo "Welcome to $( hostname )"

spawn_ssh_agent() {
    # This spawns ssh-agent and exports its variables to ~/.ssh_agent.sh,
    # to be used in cron jobs and such.
    local rm_ssh_agent
    local output_path="$HOME/.ssh_agent.sh"
    [ -z "${SSH_AGENT_PID:+x}" ] \
        && command -v ssh-agent > /dev/null 2>&1 \
        && touch -- "$output_path" \
        && chmod 0600 -- "$output_path" \
        && ssh-agent -s > "$output_path" \
        && source "$output_path" > /dev/null \
        && [ -n "${SSH_AGENT_PID:+x}" ] \
        && echo "Spawned ssh-agent with PID: $SSH_AGENT_PID." \
        && command -v printf > /dev/null 2>&1 \
        && rm_ssh_agent="$( printf -- 'kill %q' "$SSH_AGENT_PID" )" \
        && trap "$rm_ssh_agent" EXIT
}

spawn_ssh_agent