Skip to content

Commit

Permalink
Linux/MaxOS Installations Script Added
Browse files Browse the repository at this point in the history
  • Loading branch information
AryanNanda17 committed Feb 6, 2024
1 parent 803db2d commit 79b60d7
Showing 1 changed file with 34 additions and 38 deletions.
72 changes: 34 additions & 38 deletions wall_e_install.sh
Original file line number Diff line number Diff line change
@@ -1,34 +1,19 @@
#!/usr/bin/env bash
set -e

echo "installing ESP IDF"

_shell_="${SHELL#${SHELL%/*}/}"

_sudo(){
if ! command -v sudo &> /dev/null
then
if ! [ $(id -u) = 0 ]; then
echo "The script need to be run as root." >&2
exit 1
fi
"$@"
else
sudo "$@"
fi
}

# Check whether esp-idf has already been installed
if [ -d $HOME/esp/esp-idf ]; then
echo "You have installed esp-idf" && exit 0
fi

unameOut="$(uname -s)"
echo "You already have installed esp-idf!"
else
# System Detection and ESP-IDF Installation
unameOut="$(uname -s)"
case "${unameOut}" in
Linux*)
export DEBIAN_FRONTEND=noninteractive
_sudo apt update && _sudo apt upgrade -y
_sudo apt install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0 -y
sudo apt update && sudo apt upgrade -y
sudo usermod -a -G dialout $USER
sudo apt install git wget flex bison gperf python3 python3-pip python3-setuptools cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0 -y
sudo apt install python3-venv
;;
Darwin*)
if brew --version | grep -q 'Homebrew'; then
Expand All @@ -43,19 +28,30 @@ case "${unameOut}" in
*) echo "Not supported :${unameOut}"
esac

mkdir -p "$HOME/esp"
pushd "$HOME"/esp || (echo "Error: Cannot Make Directory" && exit 1)

#ESP Toolchain & ESP-IDF
git clone -b v4.4.3 --recursive https://github.com/espressif/esp-idf.git
pushd esp-idf
./install.sh
popd
popd

#Check if installation is successfull
. $HOME/esp/esp-idf/export.sh
idf.py --version | (grep "v4.4" && echo "Installation successfull! Please restart your computer for the changes to take effect.") \
|| (echo "installation failed" && exit 1)
# Create ESP Directory
mkdir -p "$HOME/esp"
pushd "$HOME"/esp || (echo "Error: Cannot Make Directory" && exit 1)

# Clone ESP-IDF Repository
git clone -b release/v5.1 --recursive https://github.com/espressif/esp-idf.git
cd $HOME/esp/esp-idf
./install.sh esp32
popd
popd

# Check if installation is successful
. $HOME/esp/esp-idf/export.sh
idf.py --version | (grep "v5.1.2" && echo "Installation successful! Please restart your computer for the changes to take effect.") \
|| (echo "Installation failed" && exit 1)
# Set IDF Alias
echo "alias get_idf='. $HOME/esp/esp-idf/export.sh'" >> $HOME/."$_shell_"rc
fi

echo "alias get_idf='. $HOME/esp/esp-idf/export.sh'" >> $HOME/."$_shell_"rc
# Clone Wall-E repository
if [ ! -d "$HOME/Wall-E" ]; then
cd "$HOME" || (echo "Error: Could not navigate to Home" && exit 1)
echo "Cloning Wall-E"
git clone --recursive https://github.com/SRA-VJTI/Wall-E.git
else
echo "You already have Cloned esp-idf!"
fi

0 comments on commit 79b60d7

Please sign in to comment.