# No Shebang For Termux # 2024-02-10 Hyperling PROG="$(basename -- "${BASH_SOURCE[0]}")" echo "`date` - Starting $PROG" DIR="$(dirname -- "${BASH_SOURCE[0]}")" cd $DIR DIR="`pwd`" echo "Working in '$DIR'." skip="false" if [[ "$1" == "skip" || "$2" == "skip" || "$3" == "skip" ]]; then skip="true" fi if [[ "$skip" == "true" ]]; then echo "\n`date` - Skipping Updates" else echo -e "\n`date` - Upgrade Package Repos" pkg update && pkg upgrade -y fi echo -e "\n`date` - Check Storage Permission" if [[ ! -e ~/storage/shared ]]; then sleep 3 termux-setup-storage if [[ -e ~/storage/shared/ ]]; then echo "~/storage/shared/ now exists. :)" else echo "ERROR: Something ain't right, Jim! Abort!" >&2 exit 1 fi else echo "Everything looks good already, pal." fi if [[ "$skip" == "true" ]]; then echo "\n`date` - Skipping Installs" else echo -e "\n`date` - Install Software" pkg install -y \ openssh tsu vim htop git cronie man zip ncurses-utils \ nmap traceroute wget rsync \ ffmpeg imagemagick \ kotlin php nodejs python libllvm hugo fi echo -e "\n`date` - BASH Environment" if [[ ! -e ~/.env ]]; then if [[ -e example.env ]]; then mv -v example.env ~/.env else echo "ERROR: Neither .env or example.env found." >&2 fi else echo "'.env' already exists. Good job!" rm -v example.env fi if [[ -e bashrc.sh ]]; then mv -v bashrc.sh ~/.bashrc else echo "ERROR: bashrc.sh not found, skipping." >&2 fi echo -e "\n`date` - Directories" if [[ -d ~/TRASH ]]; then rm -rfv ~/TRASH fi if [[ ! -e ~/storage/shared/TRASH ]]; then mkdir -pv ~/storage/shared/TRASH fi ln -s ~/storage/shared/TRASH ~/TRASH if [[ ! -d ~/Code && ! -d ~/storage/shared/Code ]]; then mkdir -pv ~/Code ln -s ~/Code ~/storage/shared/Code fi echo -e "\n`date` - env-shared" env_shared_dir="env-shared-dev-deleteme" git clone https://git.hyperling.com/me/env-shared \ --branch=dev ~/$env_shared_dir cp -v ~/$env_shared_dir/rc_shared.sh ~/.rc_shared cp -v ~/$env_shared_dir/vimrc.vim ~/.vimrc if [[ ! -d ~/bin ]]; then mkdir -pv ~/bin fi cp -v ~/$env_shared_dir/bin-shared/* ~/bin/ mv -v ~/$env_shared_dir ~/TRASH/$env_shared_dir-"`date "+%Y%m%d-%H%M%S"`" echo -e "\n`date` - Cleanup" if [[ -n $DIR && $DIR != "/" && $DIR == *"deleteme" && -d .git ]]; then echo "We are in a git clone, remove the project." cd .. mv -v $DIR ~/TRASH/termux-"`date +'%Y%m%d%H%M%S'`" | grep -v '/.git/' else echo "File was used individually, remove it." mv "$PROG" ~/TRASH/ fi echo -e "\n*******" echo "Don't forget to reload your environment!" echo " source ~/.bashrc" echo "*******" PROG="$(basename -- "${BASH_SOURCE[0]}")" echo -e "\n`date` - Finished $PROG" exit 0