2024-05-03 06:46:15 +00:00
#!/data/data/com.termux/files/usr/bin/bash
install_package( ) { pkg install -y $1 || { echo " Failed to install $1 . Please check for errors and try again. " ; exit 1; } }
configure_zshrc( ) {
[ -f ~/.zshrc ] && echo "\n# Changes added by script" >> ~/.zshrc || echo ".zshrc not found. Creating a new one..."
echo "export DISPLAY=:1" >> ~/.zshrc
echo "alias py='python3'" >> ~/.zshrc
echo "alias py2='python2'" >> ~/.zshrc
echo "alias startvnc='vncserver && startxfce4 -d :1 &'" >> ~/.zshrc
echo "alias killvnc='vncserver -kill :1'" >> ~/.zshrc
}
change_termux_repos( ) {
select_repository( ) {
if [ " $1 " = = "Default repositories" ] ; then
echo "[*] Termux primary host (USA) selected"
MAIN = "https://packages.termux.org/apt/termux-main"
ROOT = "https://packages.termux.org/apt/termux-root"
X11 = "https://packages.termux.org/apt/termux-x11"
fi
replace_repository sources.list $MAIN "stable main" " $2 " "Main repository"
replace_repository sources.list.d/root.list $ROOT "root stable" " $2 " "Root repository"
replace_repository sources.list.d/x11.list $X11 "x11 main" " $2 " "X11 repository"
}
replace_repository( ) {
if [ [ " $4 " = = *" $5 " * ] ] ; then
SOURCE_FILE = " $1 "
NEW_URL = " $2 "
COMPONENT_SUITE = " $3 "
TMPFILE = " $( mktemp $TMPDIR /$( basename ${ SOURCE_FILE } ) .XXXXXX) "
if [ " $1 " = = "sources.list" ] ; then echo "# The main termux repository:" >> " $TMPFILE " ; fi
echo " deb ${ NEW_URL } ${ COMPONENT_SUITE } " >> " $TMPFILE "
echo " Changing ${ 5 ,, } "
mv " $TMPFILE " " /data/data/com.termux/files/usr/etc/apt/ ${ SOURCE_FILE } "
fi
}
TEMPFILE = " $( mktemp /data/data/com.termux/files/usr/tmp/mirror.XXXXXX) "
REPOSITORIES = ( )
REPOSITORIES += ( "Main repository" "termux-packages" "on" )
[ -f "/data/data/com.termux/files/usr/etc/apt/sources.list.d/root.list" ] && REPOSITORIES += ( "Root repository" "termux-root-packages" "off" )
[ -f "/data/data/com.termux/files/usr/etc/apt/sources.list.d/x11.list" ] && REPOSITORIES += ( "X11 repository" "x11-packages" "off" )
dialog --clear --checklist "Which repos do you want to edit? Select with space." 0 0 0 " ${ REPOSITORIES [@] } " --and-widget --clear --radiolist "Which mirror do you want to use?" 0 0 0 "Default repositories" "Default host" on "Default repositories (CF)" "Default host with CloudFlare endpoint" off 2> " $TEMPFILE "
retval = $?
clear
case $retval in 0) IFS = $'\t' read REPOSITORIES MIRROR <<< " $( more $TEMPFILE ) " ; select_repository " $MIRROR " " $REPOSITORIES " ; ; 1) exit; ; 255) exit; ; esac
rm " $TEMPFILE "
echo "[*] Running apt update"
apt update
}
if [ -d "/data/data/com.termux/files/home/storage" ] ; then
cat <<- EOF
It appears that directory '~/storage' already exists.
This script is going to rebuild its structure from
scratch, wiping all dangling files. The actual storage
content IS NOT going to be deleted.
EOF
read -re -p "Do you want to continue? (y/n) " CHOICE
if ! [ [ " ${ CHOICE } " = ~ ( Y| y) ] ] ; then
echo "Aborting configuration and leaving directory '~/storage' intact."
exit 1
fi
fi
case " ${ TERMUX__USER_ID :- } " in '' | *[ !0-9] *| 0[ 0-9] *) TERMUX__USER_ID = 0; ; esac
am broadcast --user " $TERMUX__USER_ID " \
--es com.termux.app.reload_style storage \
-a com.termux.app.reload_style com.termux > /dev/null
echo "Storage has been set up and is accessible at ~/storage."
read -p "Change the default Termux repositories now? (y/n) " -n 1 -r; echo
[ [ $REPLY = ~ ^[ Yy] $ ] ] && change_termux_repos
install_package tur-repo
install_package x11-repo
pkg update && pkg upgrade -y
install_package git
2024-05-06 01:55:22 +00:00
install_package mc
install_package synaptic
2024-05-03 06:46:15 +00:00
install_package code-oss
install_package tilde
install_package nodejs
install_package xfce4
install_package xfce4-goodies
install_package tigervnc
install_package zsh
install_package python3
install_package python-pip
install_package python2
install_package chromium
read -p "Switch your default shell to zsh? (y/n) " -n 1 -r; echo
[ [ $REPLY = ~ ^[ Yy] $ ] ] && { configure_zshrc; chsh -s zsh; }
echo "All done! Changes made:"
echo "- Termux repos updated (if you chose to)"
2024-05-06 01:55:22 +00:00
echo "- Installed tur, x11, git, code-oss, tilde (a way cooler nano), nodejs, xfce4, goodies, tigervnc, zsh, python3 (with pip), python2, chromium, Midnight Commander, and Synaptic Package Manager"
2024-05-03 06:46:15 +00:00
echo "- Updated .zshrc (if existed)"
echo "- Switched shell to zsh (if you chose to)"
echo "Reminder: Restart Termux, then run 'vncpasswd' to set a password for your VNC server."