# but not override existing things because theres stuff like PWD. This
# doesn't set SSH_AGENT_PID, but apparently its not needed anymore.
# Note: what a huge pita to write this in posix shell.
-if test "$EUID" && [ "$EUID" != 0 ]; then
- _sysenv=$(mktemp)
- _sysenvnames=$(mktemp)
- _unsetnames=$(mktemp)
- if systemctl --user show-environment >$_sysenv 2>/dev/null; then
- grep -o '^[^=]*' $_sysenv | sort > $_sysenvnames
- env -0 | grep -zo '^[^=]*' | xargs -0 printf "%s\n" | sort | \
- comm --nocheck-order -13 - $_sysenvnames >$_unsetnames
- while read -r unsetname; do
- while read -r sysenv; do
- case "$sysenv" in
- "$unsetname"*) eval export "$sysenv" ;;
- esac
- done < $_sysenv
- done < $_unsetnames
- rm -f $_tmpf
- fi
-fi
+# update: disabled this hackery since I'm not using it in t11
+# if test "$EUID" && [ "$EUID" != 0 ]; then
+# _sysenv=$(mktemp)
+# _sysenvnames=$(mktemp)
+# _unsetnames=$(mktemp)
+# if systemctl --user show-environment >$_sysenv 2>/dev/null; then
+# grep -o '^[^=]*' $_sysenv | sort > $_sysenvnames
+# env -0 | grep -zo '^[^=]*' | xargs -0 printf "%s\n" | sort | \
+# comm --nocheck-order -13 - $_sysenvnames >$_unsetnames
+# while read -r unsetname; do
+# while read -r sysenv; do
+# case "$sysenv" in
+# "$unsetname"*) eval export "$sysenv" ;;
+# esac
+# done < $_sysenv
+# done < $_unsetnames
+# rm -f $_tmpf
+# fi
+# fi
+
# and it seems that if we log into mate, it screws up the systemd env var anyways.
for _file in $(pgrep -a '^ssh-agent$' | sed -r 's/.*-a *([^ ]+).*/\1/'); do
if test -O "$_file"; then
# start it all the time for the user. If the var isn't set by the above,
# just set them to the values I know are in the service.
if ! test "$SSH_AUTH_SOCK"; then
- if [ "$EUID" == 0 ]; then
+ if [ "$EUID" = 0 ]; then
export SSH_AUTH_SOCK=/run/openssh_agent
else
export SSH_AUTH_SOCK=/run/user/1000/openssh_agent