blob: 65d68cb57766632de03e441ecf886d7cb34de988 [file] [log] [blame]
trap 'onExit $?' EXIT
onExit() {
if [ "$1" != "0" ]; then
echo -e "\e[31m"
echo " ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄▄ "
echo "▐░░░░░░░░░░░▌▐░░░░░░░░░░░▌▐░░░░░░░░░░░▌▐░░░░░░░░░░░▌▐░░░░░░░░░░░▌"
echo "▐░█▀▀▀▀▀▀▀▀▀ ▐░█▀▀▀▀▀▀▀█░▌▐░█▀▀▀▀▀▀▀█░▌▐░█▀▀▀▀▀▀▀█░▌▐░█▀▀▀▀▀▀▀█░▌"
echo "▐░▌ ▐░▌ ▐░▌▐░▌ ▐░▌▐░▌ ▐░▌▐░▌ ▐░▌"
echo "▐░█▄▄▄▄▄▄▄▄▄ ▐░█▄▄▄▄▄▄▄█░▌▐░█▄▄▄▄▄▄▄█░▌▐░▌ ▐░▌▐░█▄▄▄▄▄▄▄█░▌"
echo "▐░░░░░░░░░░░▌▐░░░░░░░░░░░▌▐░░░░░░░░░░░▌▐░▌ ▐░▌▐░░░░░░░░░░░▌"
echo "▐░█▀▀▀▀▀▀▀▀▀ ▐░█▀▀▀▀█░█▀▀ ▐░█▀▀▀▀█░█▀▀ ▐░▌ ▐░▌▐░█▀▀▀▀█░█▀▀ "
echo "▐░▌ ▐░▌ ▐░▌ ▐░▌ ▐░▌ ▐░▌ ▐░▌▐░▌ ▐░▌ "
echo "▐░█▄▄▄▄▄▄▄▄▄ ▐░▌ ▐░▌ ▐░▌ ▐░▌ ▐░█▄▄▄▄▄▄▄█░▌▐░▌ ▐░▌ "
echo "▐░░░░░░░░░░░▌▐░▌ ▐░▌▐░▌ ▐░▌▐░░░░░░░░░░░▌▐░▌ ▐░▌"
echo " ▀▀▀▀▀▀▀▀▀▀▀ ▀ ▀ ▀ ▀ ▀▀▀▀▀▀▀▀▀▀▀ ▀ ▀ "
echo " "
echo -e "\e[0m"
fi
}
onSuccess() {
echo -e "\e[92m\n"
echo ""
echo " ██████  ██  ██ ██ "
echo " ██    ██ ██  ██  ██ "
echo " ██  ██ █████   ██ "
echo " ██  ██ ██  ██     "
echo "  ██████  ██  ██ ██ "
echo ""
echo -e "\e[0m"
}
onWarning() {
echo -e "\e[33m\n"
echo " █████ ███ █████ █████████ ███████████ ██████ █████ █████ ██████ █████ █████████ "
echo " ░░███ ░███ ░░███ ███░░░░░███ ░░███░░░░░███ ░░██████ ░░███ ░░███ ░░██████ ░░███ ███░░░░░███ "
echo " ░███ ░███ ░███ ░███ ░███ ░███ ░███ ░███░███ ░███ ░███ ░███░███ ░███ ███ ░░░ "
echo " ░███ ░███ ░███ ░███████████ ░██████████ ░███░░███░███ ░███ ░███░░███░███ ░███ "
echo " ░░███ █████ ███ ░███░░░░░███ ░███░░░░░███ ░███ ░░██████ ░███ ░███ ░░██████ ░███ █████ "
echo " ░░░█████░█████░ ░███ ░███ ░███ ░███ ░███ ░░█████ ░███ ░███ ░░█████ ░░███ ░░███ "
echo " ░░███ ░░███ █████ █████ █████ █████ █████ ░░█████ █████ █████ ░░█████ ░░█████████ "
echo " ░░░ ░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░ ░░░░░░░░░ "
echo -e "\e[0m"
}
doRemount() {
$ADB root
sleep 3
set +e
REMOUNT_OUTPUT="$($ADB remount -R 2>&1)"
REMOUNT_OUTPUT="${REMOUNT_OUTPUT,,}"
REMOUNT_RESULT=$?
echo "$REMOUNT_OUTPUT"
if [[ $REMOUNT_RESULT != 0 || "$REMOUNT_OUTPUT" == *"remount failed"* ]]; then
exit 1
fi
set -e
if [[ "$REMOUNT_OUTPUT" == *"rebooting"* ]]
then
echo -e "\e[93m"
echo "██████╗ ███████╗██████╗ ██████╗ ██████╗ ████████╗██╗███╗ ██╗ ██████╗ "
echo "██╔══██╗██╔════╝██╔══██╗██╔═══██╗██╔═══██╗╚══██╔══╝██║████╗ ██║██╔════╝ "
echo "██████╔╝█████╗ ██████╔╝██║ ██║██║ ██║ ██║ ██║██╔██╗ ██║██║ ███╗"
echo "██╔══██╗██╔══╝ ██╔══██╗██║ ██║██║ ██║ ██║ ██║██║╚██╗██║██║ ██║"
echo "██║ ██║███████╗██████╔╝╚██████╔╝╚██████╔╝ ██║ ██║██║ ╚████║╚██████╔╝"
echo "╚═╝ ╚═╝╚══════╝╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝ "
echo " "
echo -e "\e[0m"
sleep 5
$ADB wait-for-device root && $ADB wait-for-device remount
fi
}
connectedProduct() {
echo "$($ADB shell getprop ro.build.product)"
}
checkConnectedProduct() {
checkDeviceRev
# Make sure connected device matches $TARGET_PRODUCT
CONNECTED_PRODUCT="$(connectedProduct)"
if [ "$TARGET_PRODUCT" != "$CONNECTED_PRODUCT" ]
then
echo "ERROR: Connected device ($CONNECTED_PRODUCT) does not match TARGET_PRODUCT. Please lunch $CONNECTED_PRODUCT first"
exit 1
fi
}
checkDeviceRev() {
set +e
GETPROP_OUTPUT="$($ADB shell getprop ro.boot.hardware.revision 2>&1)"
GETPROP_RESULT=$?
if [ $GETPROP_RESULT -ne 0 ]
then
echo "Cannot check device status via adb, please check device connection"
exit 1
elif [[ "$GETPROP_OUTPUT" =~ ^([DP]VT|MP).* ]]
then
echo "Device must be EVT or earlier for CHRE development"
exit 1
fi
set -e
}