# Set environment variables, eg EMAIL, LANG
eval "$(cat 2> /dev/null /etc/default/locale /etc/locale.conf ~/.config/environment.d/*.conf | awk -F= '/^[^# ]/ {print $0 ";export " $1}')"
+# Look for XDG_RUNTIME_DIR
+if [ -z "$XDG_RUNTIME_DIR" ] && [ -d "/run/user/$(id -u)" ]; then
+ XDG_RUNTIME_DIR="/run/user/$(id -u)"
+ export XDG_RUNTIME_DIR
+fi
+
# Pick up SSH agent socket
if [ -z "$SSH_AUTH_SOCK" ]; then
- if [ -r ~/.ssh-agent.env ]; then
- source ~/.ssh-agent.env
- else
- SSH_AUTH_SOCK="/run/user/$(id -u)/keyring/ssh"
- export SSH_AUTH_SOCK
- fi
+ for p in keyring/ssh gcr/ssh openssh_agent; do
+ SSH_AUTH_SOCK="${XDG_RUNTIME_DIR}/$p"
+ if [ -S "$SSH_AUTH_SOCK" ]; then
+ export SSH_AUTH_SOCK
+ break
+ fi
+ done
fi
# Look for DBUS
if [ "$(uname)" = "Linux" ]; then
aliasf pscpu '_psresources --sort -%cpu|less -S'
aliasf psmem '_psresources --sort -%mem|less -S'
- aliasf pstree 'ps --forest -weo pid,user:16,args --sort start_time|less -S'
+ aliasf pstree 'ps --forest -weo pid,user:16,args|less -S'
aliasf pstime 'ps -wAo pid,user,lstart,args --sort start_time|less -S'
else
aliasf pscpu '_psresources -r|less -S'
export EDITOR='vim'
aliasf edit "$EDITOR"
-if ! command -v pbcopy &> /dev/null; then
- alias pbcopy='xsel --clipboard --input'
- alias pbcopym='xsel --input'
- alias pbpaste='xsel --clipboard --output'
- alias pbpastem='xsel --output'
-fi
-
# man with coloured headings and a terminal title
function man {
env \
# bashrc to avoid running the trap on commands in the bashrc
function print_title_exec {
[ "$BASH_COMMAND" = "$PROMPT_COMMAND" ] && return
+ [ "$BASH_COMMAND" = "__vte_osc7" ] && return
printf '\e]0;%s (%s)\a' \
"$(tr -cd '[:graph:] ' <<< "$BASH_COMMAND")" \