Initial commit — violet-chaton ricing setup
Environnement terminal complet aux couleurs violet-chaton pour Pop!_OS / Ubuntu avec COSMIC Desktop. Inclut scripts d'installation, configs shell, thèmes et support COSMIC/Vivaldi/Vesktop.
This commit is contained in:
80
INSTALL/install.sh
Executable file
80
INSTALL/install.sh
Executable file
@@ -0,0 +1,80 @@
|
||||
#!/bin/bash
|
||||
# ══════════════════════════════════════════════════════════════════════════════
|
||||
# violet-chaton — script d'installation automatique
|
||||
# Usage : bash install.sh
|
||||
# ══════════════════════════════════════════════════════════════════════════════
|
||||
|
||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||
|
||||
# Initialiser le log avant de sourcer lib.sh pour que tous les sous-scripts
|
||||
# partagent exactement le même fichier (INSTALL_LOG exporté = hérité par bash)
|
||||
export INSTALL_LOG="$HOME/violet-chaton-install-$(date +%Y%m%d-%H%M%S).log"
|
||||
|
||||
source "$SCRIPT_DIR/scripts/lib.sh"
|
||||
|
||||
# ── Vérifications préalables ──────────────────────────────────────────────────
|
||||
check_requirements() {
|
||||
local ok=true
|
||||
for cmd in curl git sudo unzip; do
|
||||
has_cmd "$cmd" || { warn "$cmd manquant — installer avec : sudo apt install $cmd"; ok=false; }
|
||||
done
|
||||
[ "$ok" = false ] && exit 1
|
||||
}
|
||||
|
||||
# ── Menu principal ─────────────────────────────────────────────────────────────
|
||||
show_menu() {
|
||||
echo -e "${PURPLE} Que veux-tu faire ?${RESET}"
|
||||
echo ""
|
||||
echo -e " ${CYAN}1)${RESET} Installation complète ${MUTED}(outils + configs + thèmes)${RESET}"
|
||||
echo -e " ${CYAN}2)${RESET} Paquets apt seulement"
|
||||
echo -e " ${CYAN}3)${RESET} Binaires manuels seulement ${MUTED}(lazygit, yazi, glow…)${RESET}"
|
||||
echo -e " ${CYAN}4)${RESET} Déployer configs et thèmes seulement"
|
||||
echo -e " ${RED}q)${RESET} Quitter"
|
||||
echo ""
|
||||
echo -ne "${PINK} Choix : ${RESET}"
|
||||
read -r choice
|
||||
}
|
||||
|
||||
run_step() {
|
||||
local script="$SCRIPT_DIR/scripts/$1"
|
||||
if [ -f "$script" ]; then
|
||||
bash "$script"
|
||||
else
|
||||
fail "Script introuvable : $1"
|
||||
fi
|
||||
}
|
||||
|
||||
# ── Lancement ─────────────────────────────────────────────────────────────────
|
||||
clear
|
||||
banner
|
||||
check_requirements
|
||||
show_menu
|
||||
|
||||
case "$choice" in
|
||||
1)
|
||||
_log "Choix : Installation complète (1/2/3)"
|
||||
echo ""
|
||||
echo -e "${MUTED} [1/3] Paquets apt${RESET}"
|
||||
run_step "01-packages-apt.sh"
|
||||
echo ""
|
||||
echo -e "${MUTED} [2/3] Binaires manuels${RESET}"
|
||||
run_step "02-packages-manual.sh"
|
||||
echo ""
|
||||
echo -e "${MUTED} [3/3] Configs et thèmes${RESET}"
|
||||
run_step "03-deploy-configs.sh"
|
||||
;;
|
||||
2) _log "Choix : Paquets apt seulement" ; run_step "01-packages-apt.sh" ;;
|
||||
3) _log "Choix : Binaires manuels seulement" ; run_step "02-packages-manual.sh" ;;
|
||||
4) _log "Choix : Configs et thèmes seulement" ; run_step "03-deploy-configs.sh" ;;
|
||||
q|Q) echo -e "\n${MUTED} Au revoir q:D${RESET}\n"; exit 0 ;;
|
||||
*) fail "Choix invalide"; exit 1 ;;
|
||||
esac
|
||||
|
||||
banner_done
|
||||
show_summary
|
||||
|
||||
echo -ne "${MUTED} Appuie sur Entrée pour lancer zsh...${RESET}"
|
||||
read -r _
|
||||
echo ""
|
||||
|
||||
exec zsh
|
||||
Reference in New Issue
Block a user