feat: integrate demo TUI animations into real installer
Add install-tui.sh library with boot scan, logo decrypt reveal, bouncing Bitcoin symbol progress bar, and celebration strobe. The installer sources it if available, falls back to plain text if missing (easy revert: just remove the source line). Animations: CRT power-on scan, BIOS memory check simulation, 3D ASCII logo with character-by-character decrypt reveal, progress bar with ₿ bouncing DVD-screensaver style during long operations, logo color party on completion, flashing "REMOVE THE USB DRIVE NOW" warning. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1551,13 +1551,26 @@ spinner() {
|
||||
printf "\r%s %b✓ %s%b\n" "$PADS" "$ORANGE_BRIGHT" "$msg" "$NC"
|
||||
}
|
||||
|
||||
clear
|
||||
echo ""
|
||||
echo -e "${PADS}${ORANGE}▄▀█ █▀▄ █▀▀ █ █ █ █▀█ █▀▀ █ ▄▀█ █▀▀ █▀█${NC}"
|
||||
echo -e "${PADS}${ORANGE}█▀█ █▀▄ █ █▀█ █ █▀▀ ██▀ █ █▀█ █ █ █ █${NC}"
|
||||
echo -e "${PADS}${ORANGE}▀ ▀ ▀ ▀ ▀▀▀ ▀ ▀ ▀ ▀ ▀▀▀ ▀▀▀ ▀ ▀ ▀▀▀ ▀▀▀${NC}"
|
||||
typewrite "$(echo -e "${ORANGE_DIM}bitcoin node os${NC}")" 0.04
|
||||
echo ""
|
||||
# Source TUI library for install animations (graceful fallback if missing)
|
||||
for _tui_path in \
|
||||
"$BOOT_MEDIA/archipelago/scripts/lib/install-tui.sh" \
|
||||
"/opt/archipelago/scripts/lib/install-tui.sh" \
|
||||
"$(dirname "$0")/../scripts/lib/install-tui.sh"; do
|
||||
[ -f "$_tui_path" ] && { source "$_tui_path" 2>/dev/null; break; }
|
||||
done
|
||||
|
||||
if [ "${TUI_AVAILABLE:-}" = "1" ]; then
|
||||
tui_welcome
|
||||
tui_enable_progress_spinner
|
||||
else
|
||||
clear
|
||||
echo ""
|
||||
echo -e "${PADS}${ORANGE}▄▀█ █▀▄ █▀▀ █ █ █ █▀█ █▀▀ █ ▄▀█ █▀▀ █▀█${NC}"
|
||||
echo -e "${PADS}${ORANGE}█▀█ █▀▄ █ █▀█ █ █▀▀ ██▀ █ █▀█ █ █ █ █${NC}"
|
||||
echo -e "${PADS}${ORANGE}▀ ▀ ▀ ▀ ▀▀▀ ▀ ▀ ▀ ▀ ▀▀▀ ▀▀▀ ▀ ▀ ▀▀▀ ▀▀▀${NC}"
|
||||
typewrite "$(echo -e "${ORANGE_DIM}bitcoin node os${NC}")" 0.04
|
||||
echo ""
|
||||
fi
|
||||
|
||||
# Check required tools are present (should be bundled in ISO)
|
||||
step "Checking tools"
|
||||
@@ -2662,6 +2675,10 @@ umount /mnt/target 2>/dev/null || true
|
||||
echo ""
|
||||
hrule
|
||||
echo ""
|
||||
|
||||
# Celebration animation if TUI available
|
||||
[ "${TUI_AVAILABLE:-}" = "1" ] && tui_complete
|
||||
|
||||
p "${ORANGE_BRIGHT} ✓ Installation Complete${NC}"
|
||||
echo ""
|
||||
p "${ORANGE_DIM} After reboot, access from any device:${NC}"
|
||||
@@ -2681,7 +2698,11 @@ echo 1 > /proc/sys/kernel/printk 2>/dev/null || true
|
||||
# All done inline — no separate script needed (avoids /bin/bash dependency on squashfs)
|
||||
|
||||
echo ""
|
||||
p "${ORANGE}>>> REMOVE THE USB DRIVE NOW <<<${NC}"
|
||||
if [ "${TUI_AVAILABLE:-}" = "1" ]; then
|
||||
tui_flash_remove_usb
|
||||
else
|
||||
p "${ORANGE}>>> REMOVE THE USB DRIVE NOW <<<${NC}"
|
||||
fi
|
||||
echo ""
|
||||
p "${ORANGE_DIM}Press Enter to reboot (or wait 30 seconds)${NC}"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user