From 79b60d7f846089887700067284f87d71a43f2362 Mon Sep 17 00:00:00 2001 From: Aryan Date: Tue, 6 Feb 2024 11:43:55 +0530 Subject: [PATCH] Linux/MaxOS Installations Script Added --- wall_e_install.sh | 72 ++++++++++++++++++++++------------------------- 1 file changed, 34 insertions(+), 38 deletions(-) diff --git a/wall_e_install.sh b/wall_e_install.sh index 9c8f8a77..2ec0325b 100755 --- a/wall_e_install.sh +++ b/wall_e_install.sh @@ -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 @@ -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 \ No newline at end of file