#!/bin/sh

PWD="$(pwd)"
WHEREAMI="$(dirname "$0")"
WHEREAMI="$(cd "$WHEREAMI" && pwd)"

OS="$(uname)"
ARCH="$(uname -m)"
case $OS in
'Linux')
  BINARY="pivot"
  TARGET="linux"
  if [ "$ARCH" = "aarch64" ]; then
    TARGET="linux-aarch64"
  fi
  if [ "$IMPLY_PIVOT_LEGACY_BIN" = "1" ]; then
    echo "Legacy mode requested via IMPLY_PIVOT_LEGACY_BIN"
    BINARY="pivot-$TARGET"
  elif [ ! -f "$WHEREAMI"/"$TARGET"/"$BINARY" ]; then
    echo "$WHEREAMI/$TARGET/$BINARY not found"
    BINARY="pivot-$TARGET"
  elif [ "$("$WHEREAMI"/"$TARGET"/"$BINARY" --echo 2>/dev/null)" != 'pivot' ]; then
    BINARY="pivot-$TARGET"
  fi
  exec "$WHEREAMI"/"$TARGET"/"$BINARY" "$@"
  ;;
'FreeBSD')
  echo "FreeBSD is not supported"
  ;;
'WindowsNT')
  echo "Windows is not supported"
  ;;
'Darwin')
  TARGET="macos"
  if [ "$ARCH" = "arm64" ]; then
    TARGET="macos-arm64"
  fi
  exec "$WHEREAMI"/"$TARGET"/pivot "$@"
  ;;
*)
  echo "Your OS: $OS is not supported"
  ;;
esac
