Skip to content

Commit e7b7cbb

Browse files
authored
chore: Apply Dartotsu teal-cyan color scheme to script for linux (#88)
1 parent 1599df4 commit e7b7cbb

File tree

1 file changed

+136
-57
lines changed

1 file changed

+136
-57
lines changed

scripts/install.sh

Lines changed: 136 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -33,25 +33,31 @@ BOLD='\033[1m'
3333
DIM='\033[2m'
3434
RESET='\033[0m'
3535

36-
# Gradient colors
37-
GRAD1='\033[38;5;198m' # Hot pink
38-
GRAD2='\033[38;5;199m' # Pink
39-
GRAD3='\033[38;5;200m' # Light pink
40-
GRAD4='\033[38;5;135m' # Purple
41-
GRAD5='\033[38;5;99m' # Dark purple
42-
GRAD6='\033[38;5;63m' # Blue purple
36+
# Dartotsu gradient colors (teal to cyan)
37+
GRAD1='\033[38;5;30m' # Dark teal
38+
GRAD2='\033[38;5;36m' # Medium teal
39+
GRAD3='\033[38;5;42m' # Teal
40+
GRAD4='\033[38;5;48m' # Light teal
41+
GRAD5='\033[38;5;51m' # Cyan
42+
GRAD6='\033[38;5;87m' # Bright cyan
4343

4444
# Icons
45-
ICON_SUCCESS=""
46-
ICON_ERROR=""
47-
ICON_WARNING="⚠️ "
48-
ICON_INFO="ℹ️ "
49-
ICON_ROCKET="🚀"
50-
ICON_DOWNLOAD="⬇️ "
51-
ICON_INSTALL="📦"
52-
ICON_UNINSTALL="🗑️ "
53-
ICON_UPDATE="🔄"
54-
ICON_SPARKLES=""
45+
ICON_FIRE="🔥"
46+
ICON_LIGHTNING=""
47+
ICON_STAR=""
48+
ICON_DIAMOND="💎"
49+
ICON_BOMB="💣"
50+
ICON_SKULL="💀"
51+
ICON_ROBOT="🤖"
52+
ICON_ALIEN="👽"
53+
ICON_GHOST="👻"
54+
ICON_MAGIC="🪄"
55+
ICON_CRYSTAL="🔮"
56+
ICON_SWORD="⚔️"
57+
ICON_SHIELD="🛡️"
58+
ICON_CROWN="👑"
59+
ICON_COMET="☄️"
60+
ICON_GALAXY="🌌"
5561

5662
# =============================================================================
5763
# 🎭 ANIMATION & UI FUNCTIONS
@@ -81,47 +87,90 @@ progress_bar() {
8187
local filled=$((current * width / total))
8288
local empty=$((width - filled))
8389

84-
printf "\r${BOLD}Progress: ${RESET}["
85-
printf "${GREEN}%*s${RESET}" $filled | tr ' ' ''
86-
printf "%*s" $empty | tr ' ' ''
87-
printf "] ${BOLD}%d%%${RESET}" $percentage
90+
# Color gradient based on progress
91+
local color=""
92+
if [ $percentage -lt 25 ]; then
93+
color="${RED}"
94+
elif [ $percentage -lt 50 ]; then
95+
color="${YELLOW}"
96+
elif [ $percentage -lt 75 ]; then
97+
color="${CYAN}"
98+
else
99+
color="${GREEN}"
100+
fi
101+
102+
printf "\r${BOLD}${ICON_LIGHTNING} Progress: ${RESET}["
103+
printf "${color}%*s${RESET}" $filled | tr ' ' ''
104+
printf "${GRAY}%*s${RESET}" $empty | tr ' ' ''
105+
printf "] ${BOLD}${color}%d%%${RESET} ${ICON_FIRE}" $percentage
88106
}
89107

90108
# Compare commit SHAs between repos
91109
compare_commits() {
92110
local main_repo="aayush2622/Dartotsu"
93111
local alpha_repo="grayankit/Dartotsu-Downloader"
94112

95-
echo -ne "${CYAN}${ICON_INFO}${RESET} Checking commit synchronization..."
113+
echo
114+
echo -ne "${CYAN}${ICON_ROBOT}${RESET} ${BOLD}Initiating quantum commit analysis${RESET}"
115+
for i in {1..5}; do
116+
sleep 0.3
117+
echo -ne "${CYAN}.${RESET}"
118+
done
119+
echo -e " ${GREEN}${ICON_LIGHTNING}${RESET}"
120+
121+
# Matrix-style loading
122+
echo -e "${GREEN}${DIM}> Accessing GitHub API...${RESET}"
123+
sleep 0.5
124+
echo -e "${GREEN}${DIM}> Scanning commit trees...${RESET}"
125+
sleep 0.5
126+
echo -e "${GREEN}${DIM}> Cross-referencing SHA hashes...${RESET}"
127+
sleep 0.5
96128

97-
# Get latest commits from both repos
129+
# Get data
98130
local main_commit=$(curl -s "https://api.github.com/repos/${main_repo}/commits" | grep '"sha"' | head -1 | cut -d '"' -f 4 | cut -c1-7)
99131
local main_date=$(curl -s "https://api.github.com/repos/${main_repo}/commits" | grep '"date"' | head -1 | cut -d '"' -f 4)
132+
local main_author=$(curl -s "https://api.github.com/repos/${main_repo}/commits" | grep '"name"' | head -1 | cut -d '"' -f 4)
100133

101134
local alpha_release=$(curl -s "https://api.github.com/repos/${alpha_repo}/releases/latest")
102135
local alpha_tag=$(echo "$alpha_release" | grep '"tag_name"' | cut -d '"' -f 4)
103136
local alpha_date=$(echo "$alpha_release" | grep '"published_at"' | cut -d '"' -f 4)
104137

105-
echo -e " ${GREEN}${ICON_SUCCESS}${RESET}"
106138
echo
107-
echo -e "${BOLD}${BLUE}╭─ COMMIT COMPARISON ────────────────────────────────╮${RESET}"
108-
echo -e "${BOLD}${BLUE}${RESET} Main Repo (${main_repo}): ${BLUE}${BOLD}${RESET}"
109-
echo -e "${BOLD}${BLUE}${RESET} Latest Commit: ${YELLOW}${main_commit}${RESET} ${BLUE}${BOLD}${RESET}"
110-
echo -e "${BOLD}${BLUE}${RESET} Date: ${GRAY}$(date -d "$main_date" '+%Y-%m-%d %H:%M:%S')${RESET} ${BLUE}${BOLD}${RESET}"
111-
echo -e "${BOLD}${BLUE}${RESET} ${BLUE}${BOLD}${RESET}"
112-
echo -e "${BOLD}${BLUE}${RESET} Alpha Repo (${alpha_repo}): ${BLUE}${BOLD}${RESET}"
113-
echo -e "${BOLD}${BLUE}${RESET} Latest Tag: ${PURPLE}${alpha_tag}${RESET} ${BLUE}${BOLD}${RESET}"
114-
echo -e "${BOLD}${BLUE}${RESET} Date: ${GRAY}$(date -d "$alpha_date" '+%Y-%m-%d %H:%M:%S')${RESET} ${BLUE}${BOLD}${RESET}"
115-
echo -e "${BOLD}${BLUE}${RESET} ${BLUE}${BOLD}${RESET}"
116-
117-
# Check if commits match (simplified comparison)
139+
echo -e "${BOLD}${PURPLE}╔═══════════════════════════════════════════════════════════════╗${RESET}"
140+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_CRYSTAL} COMMIT MATRIX ${ICON_CRYSTAL} ${PURPLE}${BOLD}${RESET}"
141+
echo -e "${BOLD}${PURPLE}╠═══════════════════════════════════════════════════════════════╣${RESET}"
142+
echo -e "${BOLD}${PURPLE}${RESET} ${PURPLE}${BOLD}${RESET}"
143+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_GALAXY} ${BOLD}MAIN REPOSITORY${RESET} ${GRAY}(${main_repo})${RESET} ${PURPLE}${BOLD}${RESET}"
144+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_DIAMOND} Commit SHA: ${YELLOW}${BOLD}${main_commit}${RESET} ${PURPLE}${BOLD}${RESET}"
145+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_STAR} Author: ${CYAN}${main_author}${RESET} ${PURPLE}${BOLD}${RESET}"
146+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_COMET} Timestamp: ${GRAY}$(date -d "$main_date" '+%Y-%m-%d %H:%M:%S UTC')${RESET} ${PURPLE}${BOLD}${RESET}"
147+
echo -e "${BOLD}${PURPLE}${RESET} ${PURPLE}${BOLD}${RESET}"
148+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_ALIEN} ${BOLD}ALPHA REPOSITORY${RESET} ${GRAY}(${alpha_repo})${RESET} ${PURPLE}${BOLD}${RESET}"
149+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_BOMB} Release Tag: ${PURPLE}${BOLD}${alpha_tag}${RESET} ${PURPLE}${BOLD}${RESET}"
150+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_GHOST} Published: ${GRAY}$(date -d "$alpha_date" '+%Y-%m-%d %H:%M:%S UTC')${RESET} ${PURPLE}${BOLD}${RESET}"
151+
echo -e "${BOLD}${PURPLE}${RESET} ${PURPLE}${BOLD}${RESET}"
152+
153+
# Sync status with epic effects
118154
if [[ "$alpha_tag" == *"$main_commit"* ]]; then
119-
echo -e "${BOLD}${BLUE}${RESET} Status: ${GREEN}${ICON_SUCCESS} Synchronized${RESET} ${BLUE}${BOLD}${RESET}"
155+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_MAGIC} SYNC STATUS: ${GREEN}${BOLD}${ICON_FIRE} PERFECTLY SYNCHRONIZED ${ICON_FIRE}${RESET} ${PURPLE}${BOLD}${RESET}"
156+
echo -e "${BOLD}${PURPLE}${RESET} ${GREEN}${ICON_LIGHTNING} Repositories are in perfect harmony! ${ICON_LIGHTNING}${RESET} ${PURPLE}${BOLD}${RESET}"
120157
else
121-
echo -e "${BOLD}${BLUE}${RESET} Status: ${YELLOW}${ICON_WARNING} Out of sync${RESET} ${BLUE}${BOLD}${RESET}"
158+
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_CRYSTAL} SYNC STATUS: ${YELLOW}${BOLD}${ICON_SWORD} DIVERGED TIMELINES ${ICON_SWORD}${RESET} ${PURPLE}${BOLD}${RESET}"
159+
echo -e "${BOLD}${PURPLE}${RESET} ${YELLOW}${ICON_SKULL} Alpha may contain different features ${ICON_SKULL}${RESET} ${PURPLE}${BOLD}${RESET}"
122160
fi
123161

124-
echo -e "${BOLD}${BLUE}╰────────────────────────────────────────────────────╯${RESET}"
162+
echo -e "${BOLD}${PURPLE}${RESET} ${PURPLE}${BOLD}${RESET}"
163+
echo -e "${BOLD}${PURPLE}╚═══════════════════════════════════════════════════════════════╝${RESET}"
164+
echo
165+
166+
# Cool countdown
167+
echo -ne "${BOLD}${CYAN}Preparing alpha download in: ${RESET}"
168+
for i in 3 2 1; do
169+
echo -ne "${RED}${BOLD}$i${RESET}"
170+
sleep 0.8
171+
echo -ne "\b \b"
172+
done
173+
echo -e "${GREEN}${BOLD}GO! ${ICON_ROCKET}${RESET}"
125174
echo
126175
}
127176

@@ -140,15 +189,23 @@ type_text() {
140189
show_banner() {
141190
clear
142191
echo
192+
# Animated border effect
193+
for i in {1..3}; do
194+
echo -e "${GRAD1}════════════════════════════════════════════════════════════════════════${RESET}"
195+
sleep 0.05
196+
printf "\033[1A\033[K"
197+
done
198+
143199
echo -e "${GRAD1} ██████╗ █████╗ ██████╗ ████████╗ ██████╗ ████████╗███████╗██╗ ██╗${RESET}"
144200
echo -e "${GRAD2} ██╔══██╗██╔══██╗██╔══██╗╚══██╔══╝██╔═══██╗╚══██╔══╝██╔════╝██║ ██║${RESET}"
145201
echo -e "${GRAD3} ██║ ██║███████║██████╔╝ ██║ ██║ ██║ ██║ ███████╗██║ ██║${RESET}"
146202
echo -e "${GRAD4} ██║ ██║██╔══██║██╔══██╗ ██║ ██║ ██║ ██║ ╚════██║██║ ██║${RESET}"
147203
echo -e "${GRAD5} ██████╔╝██║ ██║██║ ██║ ██║ ╚██████╔╝ ██║ ███████║╚██████╔╝${RESET}"
148204
echo -e "${GRAD6} ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚══════╝ ╚═════╝ ${RESET}"
149205
echo
150-
echo -e "${CYAN}${BOLD} The Ultimate Anime & Manga Experience${RESET}"
206+
echo -e "${CYAN}${BOLD} ${ICON_FIRE}${ICON_LIGHTNING} The Ultimate Anime & Manga Experience ${ICON_LIGHTNING}${ICON_FIRE}${RESET}"
151207
echo -e "${GRAY} ═══════════════════════════════════════${RESET}"
208+
echo -e "${PURPLE}${DIM} ${ICON_GALAXY} Powered by Dreams ${ICON_GALAXY}${RESET}"
152209
echo
153210
}
154211

@@ -197,31 +254,53 @@ warn_msg() {
197254

198255
# Stylized menu
199256
show_menu() {
200-
echo -e "${BOLD}${PURPLE}┌─ SELECT ACTION ────────────────────────────────────┐${RESET}"
201-
echo -e "${BOLD}${PURPLE}${RESET} ${PURPLE}${BOLD}${RESET}"
202-
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_INSTALL} ${GREEN}${BOLD}[I]${RESET} Install Dartotsu ${PURPLE}${BOLD}${RESET}"
203-
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_UPDATE} ${YELLOW}${BOLD}[U]${RESET} Update Dartotsu ${PURPLE}${BOLD}${RESET}"
204-
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_UNINSTALL} ${RED}${BOLD}[R]${RESET} Remove Dartotsu ${PURPLE}${BOLD}${RESET}"
205-
echo -e "${BOLD}${PURPLE}${RESET} ${ICON_SPARKLES} ${CYAN}${BOLD}[Q]${RESET} Quit ${PURPLE}${BOLD}${RESET}"
206-
echo -e "${BOLD}${PURPLE}${RESET} ${PURPLE}${BOLD}${RESET}"
207-
echo -e "${BOLD}${PURPLE}└────────────────────────────────────────────────────┘${RESET}"
257+
# Glitch effect
258+
echo -e "${GRAD1}${GRAD2}${GRAD3}${GRAD4}${GRAD5}${GRAD6}${RESET} ${BOLD}DARTOTSU CONTROL PANEL${RESET} ${GRAD6}${GRAD5}${GRAD4}${GRAD3}${GRAD2}${GRAD1}${RESET}"
259+
echo
260+
echo -e "${BOLD}${CYAN}╔═══════════════════════════════════════════════════════╗${RESET}"
261+
echo -e "${BOLD}${CYAN}${RESET} ${CYAN}${BOLD}${RESET}"
262+
echo -e "${BOLD}${CYAN}${RESET} ${ICON_ROBOT} ${GREEN}${BOLD}[I]${RESET} ${ICON_DOWNLOAD} Install Dartotsu ${GRAY}(Get Started)${RESET} ${CYAN}${BOLD}${RESET}"
263+
echo -e "${BOLD}${CYAN}${RESET} ${GREEN}Deploy the ultimate anime experience${RESET} ${CYAN}${BOLD}${RESET}"
264+
echo -e "${BOLD}${CYAN}${RESET} ${CYAN}${BOLD}${RESET}"
265+
echo -e "${BOLD}${CYAN}${RESET} ${ICON_LIGHTNING} ${YELLOW}${BOLD}[U]${RESET} ${ICON_UPDATE} Update Dartotsu ${GRAY}(Stay Current)${RESET} ${CYAN}${BOLD}${RESET}"
266+
echo -e "${BOLD}${CYAN}${RESET} ${YELLOW}Upgrade to the latest and greatest${RESET} ${CYAN}${BOLD}${RESET}"
267+
echo -e "${BOLD}${CYAN}${RESET} ${CYAN}${BOLD}${RESET}"
268+
echo -e "${BOLD}${CYAN}${RESET} ${ICON_BOMB} ${RED}${BOLD}[R]${RESET} ${ICON_UNINSTALL} Remove Dartotsu ${GRAY}(Nuclear Option)${RESET} ${CYAN}${BOLD}${RESET}"
269+
echo -e "${BOLD}${CYAN}${RESET} ${RED}Complete annihilation of installation${RESET} ${CYAN}${BOLD}${RESET}"
270+
echo -e "${BOLD}${CYAN}${RESET} ${CYAN}${BOLD}${RESET}"
271+
echo -e "${BOLD}${CYAN}${RESET} ${ICON_GHOST} ${CYAN}${BOLD}[Q]${RESET} ${ICON_SPARKLES} Quit ${GRAY}(Escape the Matrix)${RESET} ${CYAN}${BOLD}${RESET}"
272+
echo -e "${BOLD}${CYAN}${RESET} ${CYAN}Return to the real world${RESET} ${CYAN}${BOLD}${RESET}"
273+
echo -e "${BOLD}${CYAN}${RESET} ${CYAN}${BOLD}${RESET}"
274+
echo -e "${BOLD}${CYAN}╚═══════════════════════════════════════════════════════╝${RESET}"
208275
echo
209-
echo -ne "${BOLD}${WHITE}Your choice${RESET} ${GRAY}(I/U/R/Q)${RESET}: "
276+
echo -ne "${BOLD}${WHITE}Enter the matrix${RESET} ${GRAY}(I/U/R/Q)${RESET} ${ICON_MAGIC}: "
210277
}
211278

212279
# Version selection menu
213-
# Replace the existing version_menu function with:
214280
version_menu() {
215281
echo
216-
echo -e "${BOLD}${CYAN}┌─ VERSION SELECTION ────────────────────────────────┐${RESET}"
217-
echo -e "${BOLD}${CYAN}${RESET} ${CYAN}${BOLD}${RESET}"
218-
echo -e "${BOLD}${CYAN}${RESET} ${ICON_ROCKET} ${GREEN}${BOLD}[S]${RESET} Stable Release ${GRAY}(Recommended)${RESET} ${CYAN}${BOLD}${RESET}"
219-
echo -e "${BOLD}${CYAN}${RESET} ${ICON_SPARKLES} ${YELLOW}${BOLD}[P]${RESET} Pre-release ${GRAY}(Latest Features)${RESET} ${CYAN}${BOLD}${RESET}"
220-
echo -e "${BOLD}${CYAN}${RESET} ${ICON_SPARKLES} ${PURPLE}${BOLD}[A]${RESET} Alpha Build ${GRAY}(Experimental)${RESET} ${CYAN}${BOLD}${RESET}"
221-
echo -e "${BOLD}${CYAN}${RESET} ${CYAN}${BOLD}${RESET}"
222-
echo -e "${BOLD}${CYAN}└────────────────────────────────────────────────────┘${RESET}"
282+
# Animated title
283+
for char in "V" "E" "R" "S" "I" "O" "N" " " "S" "E" "L" "E" "C" "T" "I" "O" "N"; do
284+
echo -ne "${BOLD}${PURPLE}$char${RESET}"
285+
sleep 0.05
286+
done
287+
echo
288+
echo
289+
290+
echo -e "${BOLD}${GRAD2}╔═══════════════════════════════════════════════════════╗${RESET}"
291+
echo -e "${BOLD}${GRAD2}${RESET} ${GRAD2}${BOLD}${RESET}"
292+
echo -e "${BOLD}${GRAD2}${RESET} ${ICON_CROWN} ${GREEN}${BOLD}[S]${RESET} Stable Release ${GRAY}(Battle-Tested)${RESET} ${GRAD2}${BOLD}${RESET}"
293+
echo -e "${BOLD}${GRAD2}${RESET} ${ICON_SHIELD} Rock solid, enterprise ready ${GRAD2}${BOLD}${RESET}"
294+
echo -e "${BOLD}${GRAD2}${RESET} ${GRAD2}${BOLD}${RESET}"
295+
echo -e "${BOLD}${GRAD2}${RESET} ${ICON_LIGHTNING} ${YELLOW}${BOLD}[P]${RESET} Pre-release ${GRAY}(Bleeding Edge)${RESET} ${GRAD2}${BOLD}${RESET}"
296+
echo -e "${BOLD}${GRAD2}${RESET} ${ICON_FIRE} Latest features, some bugs possible ${GRAD2}${BOLD}${RESET}"
297+
echo -e "${BOLD}${GRAD2}${RESET} ${GRAD2}${BOLD}${RESET}"
298+
echo -e "${BOLD}${GRAD2}${RESET} ${ICON_BOMB} ${PURPLE}${BOLD}[A]${RESET} Alpha Build ${GRAY}(Danger Zone!)${RESET} ${GRAD2}${BOLD}${RESET}"
299+
echo -e "${BOLD}${GRAD2}${RESET} ${ICON_SKULL} Experimental, use at your own risk ${GRAD2}${BOLD}${RESET}"
300+
echo -e "${BOLD}${GRAD2}${RESET} ${GRAD2}${BOLD}${RESET}"
301+
echo -e "${BOLD}${GRAD2}╚═══════════════════════════════════════════════════════╝${RESET}"
223302
echo
224-
echo -ne "${BOLD}${WHITE}Your choice${RESET} ${GRAY}(S/P/A)${RESET}: "
303+
echo -ne "${BOLD}${WHITE}Choose your destiny${RESET} ${GRAY}(S/P/A)${RESET} ${ICON_MAGIC}: "
225304
}
226305

227306
# =============================================================================

0 commit comments

Comments
 (0)