Android-Password-Store/scripts/setup-environment.sh
Aditya Wasan b7abd561f5
Add KeyPair and KeyManager to manage keys in the app (#1487)
Co-authored-by: Harsh Shandilya <me@msfjarvis.dev>
2021-08-17 04:14:43 +05:30

42 lines
1.5 KiB
Bash
Executable file

#!/usr/bin/env bash
# Installs the latest command line tools and sets up the necessary packages for an Android emulator
# for API level $ANDROID_API_LEVEL, or API 30 if unspecified.
set -euo pipefail
CMDLINE_TOOLS_URL_MAC="https://dl.google.com/android/repository/commandlinetools-mac-7583922_latest.zip"
CMDLINE_TOOLS_URL_LINUX="https://dl.google.com/android/repository/commandlinetools-linux-7583922_latest.zip"
[ -n "${ANDROID_SDK_ROOT:-}" ] || {
echo "ANDROID_SDK_ROOT must be set to use this script"
exit
1
}
if [ "$(uname)" == "Linux" ]; then
wget "${CMDLINE_TOOLS_URL_LINUX}" -O /tmp/tools.zip -o /dev/null
elif [ "$(uname)" == "Darwin" ]; then
wget "${CMDLINE_TOOLS_URL_MAC}" -O /tmp/tools.zip -o /dev/null
else
echo "This script only works on Linux and Mac"
exit 1
fi
[ -n "${ANDROID_API_LEVEL:-}" ] || { echo "ANDROID_API_LEVEL not defined; defaulting to 30"; }
API_LEVEL="${ANDROID_API_LEVEL:-30}"
unzip -qo /tmp/tools.zip -d "${ANDROID_SDK_ROOT}/latest"
mkdir -p "${ANDROID_SDK_ROOT}/cmdline-tools"
if [ -d "${ANDROID_SDK_ROOT}/cmdline-tools" ]; then
rm -rf "${ANDROID_SDK_ROOT}/cmdline-tools"
fi
mkdir -p "${ANDROID_SDK_ROOT}/cmdline-tools"
mv -v "${ANDROID_SDK_ROOT}/latest/cmdline-tools" "${ANDROID_SDK_ROOT}/cmdline-tools/latest"
export PATH="${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin:${PATH}"
sdkmanager --install 'build-tools;30.0.3' platform-tools "platforms;android-${API_LEVEL}"
sdkmanager --install emulator
sdkmanager --install "system-images;android-${API_LEVEL};google_apis;x86"