diff --git a/client/powerline.sh b/client/powerline.sh index 2c85fe77..b112ec21 100755 --- a/client/powerline.sh +++ b/client/powerline.sh @@ -1,11 +1,21 @@ #!/bin/sh +test "${OSTYPE#darwin}" = "${OSTYPE}" && darwin=n || darwin=y + if test "$1" = "--socket" ; then shift ADDRESS="$1" shift else ADDRESS="powerline-ipc-${UID:-`id -u`}" + test "$darwin" = y && ADDRESS="/tmp/$ADDRESS" +fi + +if test "$darwin" = y; then + ENV=genv +else + ENV=env + ADDRESS="abstract-client:$ADDRESS" fi # Warning: env -0 does not work in busybox. Consider switching to parsing @@ -16,8 +26,8 @@ fi printf '%s\0' "$argv" done printf '%s\0' "$PWD" - env -0 -) | socat -lf/dev/null -t 10 - abstract-client:"$ADDRESS" + $ENV -0 +) | socat -lf/dev/null -t 10 - "$ADDRESS" if test $? -ne 0 ; then powerline-render "$@"