@@ -26,34 +26,30 @@ RED='\033[0;31m'; LightBlue='\033[1;34m'; Green='\033[0;32m'
2626# INSTALL "AM"
2727_prepare_am_directory() {
2828 # CREATE AND ENTER THE MAIN DIRECTORY FOR "AM"
29- mkdir -p /opt/am/.cache /opt/am/ modules /usr/local/bin && cd /opt/am || exit 1
29+ mkdir -p /opt/am/modules /usr/local/bin && cd /opt/am || exit 1
3030
3131 # CREATE THE SCRIPT NEEDED TO UNINSTALL "AM"
3232 printf '#!/bin/sh\n\nset -e\n' > /opt/am/remove
3333 printf '\n%s\n' 'if [ "$(id -u)" -ne 0 ]; then echo "Permission denied"; exit 1; fi' >> /opt/am/remove
34- printf '%s\n' 'rm -f /usr/local/bin/am /etc/bash_completion.d/am-completion.sh ' >> /opt/am/remove
34+ printf '%s\n' 'rm -f /usr/local/bin/am' >> /opt/am/remove
3535 printf '%s\n' 'rm -R -f /opt/am' >> /opt/am/remove
3636 chmod a+x /opt/am/remove || exit 1
3737
3838 # DOWNLOAD AND LINK THE MAIN SCRIPT
3939 wget -q https://raw.githubusercontent.com/ivan-hc/AM/main/APP-MANAGER
4040 chmod a+x /opt/am/APP-MANAGER
4141 ln -s /opt/am/APP-MANAGER /usr/local/bin/am 2> /dev/null || printf "${RED}WARNING: Couldn't link am to \"/usr/local/bin/am\"!\033[0m\n"
42-
43- # DOWNLOAD THE LIST OF THE AVAILABLE PROGRAMS
44- wget -q "https://raw.githubusercontent.com/ivan-hc/AM/main/programs/$arch-apps" || exit 1
4542}
4643
4744_download_am_modules() {
4845 # DOWNLOAD MODULES
4946 cd /opt/am/modules || exit
50- MODULES=$(curl -Ls https://api.github.com/repos/ivan-hc/AM/contents/modules | sed 's/[()",{}]/ /g; s/ /\n/g' | grep -o 'https.*raw.*modules.*am$' | grep -v "sync\|update")
51- for v in $MODULES; do
52- MODULENAME=$(echo "$v" | sed 's:.*/::')
53- if ! test -f ./"$MODULENAME"; then
54- echo " ◆ Downloading $MODULENAME..."
55- wget -q "$v"
56- chmod a+x ./"$MODULENAME"
47+ MODULES=$(curl -Ls https://raw.githubusercontent.com/ivan-hc/AM/main/APP-MANAGER | tr '"' '\n' | grep "[a-z]\.am$")
48+ for module_name in $MODULES; do
49+ if ! test -f ./"$module_name"; then
50+ echo " ◆ Downloading $module_name..."
51+ wget -q "https://raw.githubusercontent.com/ivan-hc/AM/main/modules/$module_name"
52+ chmod a+x ./"$module_name"
5753 fi
5854 done
5955 cd ..
@@ -62,30 +58,13 @@ _download_am_modules() {
6258 chown -R $currentuser /opt/am 2> /dev/null
6359}
6460
65- _enable_bash_completion() {
66- # ADD THE BASH COMPLETION SCRIPT
67- echo '#!/usr/bin/env bash' > /opt/am/am-completion.sh
68- echo 'complete -W "$(cat /opt/am/list 2>/dev/null)" am' >> /opt/am/am-completion.sh
69- chmod a+x /opt/am/am-completion.sh
70-
71- if test -f /etc/bash_completion.d; then
72- mv /opt/am/am-completion.sh /etc/bash_completion.d/
73- else
74- mkdir -p /etc/bash_completion.d
75- mv /opt/am/am-completion.sh /etc/bash_completion.d/
76- fi
77- }
78-
7961echo '--------------------------------------------------------------------------'
8062printf " ${Green}Installing \"AM\" in /opt/am\033[0m\n"
8163_prepare_am_directory
8264echo '--------------------------------------------------------------------------'
8365printf " ${Green}Installing modules\033[0m\n"
8466_download_am_modules
8567echo '--------------------------------------------------------------------------'
86- printf " ${Green}Enable bash completion\033[0m\n"
87- _enable_bash_completion
88- echo '--------------------------------------------------------------------------'
8968printf " ${Green}\"AM\" has been successfully installed!\033[0m\n"
9069printf " Please, run \"${LightBlue}am -h\033[0m\" to see the list of the options.\n"
9170echo '--------------------------------------------------------------------------'
0 commit comments