echo "========== init de workflow par Tykayn =======" sudo apt update -y sudo apt upgrade -y sudo apt autoremove -y # Liste des programmes à installer avec apt APT_PACKAGES=( ansible python3-pip arp-scan borgbackup curl docker docker-compose etckeeper git gnupg jq meld nano ncdu nginx restic npm pandoc php8.4 python3 python3-pip tig zsh testdisk texlive rbenv htop python3-setuptools automysqlbackup certbot smartmontools fail2ban snapd unattended-upgrades php8.4-fpm php-xml php-mysql rsync php8.4-xml php-curl vrms syncthing sshfs geeqie calibre adduser snapd borgbackup eza adduser ) # Fonction pour vérifier l'installation des programmes verify_installation() { echo "Vérification de l'installation des programmes..." local missing_packages=() for package in "${APT_PACKAGES[@]}"; do # Vérification simplifiée - on pourrait améliorer avec dpkg -l | grep -q "^ii.*$package" if ! command -v "$package" &> /dev/null && ! dpkg -l | grep -q "$package"; then missing_packages+=("$package") fi done if [ ${#missing_packages[@]} -eq 0 ]; then echo "✅ Tous les programmes ont été installés avec succès." else echo "❌ Les programmes suivants n'ont pas été installés correctement:" for package in "${missing_packages[@]}"; do echo " - $package" done fi } # Fonction pour vérifier l'existence des alias verify_aliases() { echo "Vérification des alias..." local missing_aliases=() # Vérification de l'alias gst if ! alias gst &> /dev/null; then missing_aliases+=("gst") fi # Vérification de l'alias phps if ! alias phps &> /dev/null; then missing_aliases+=("phps") fi if [ ${#missing_aliases[@]} -eq 0 ]; then echo "✅ Tous les alias requis sont disponibles." else echo "❌ Les alias suivants ne sont pas disponibles:" for alias_name in "${missing_aliases[@]}"; do echo " - $alias_name" done echo "Note: Les alias sont définis dans le fichier .bash_aliases, assurez-vous de l'avoir chargé avec 'source ~/.bash_aliases'" fi } mkdir -p $HOME/Nextcloud/ressources/workflow_nextcloud/ cd $HOME/Nextcloud/ressources/workflow_nextcloud/ git clone https://source.cipherbliss.com/tykayn/workflow public_workflow cd public_workflow git pull sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys B188E2B695BD4743 source $HOME/Nextcloud/ressources/workflow_nextcloud/public_workflow/workflow_variables.sh # Installation des paquets echo "Installation des paquets apt..." sudo apt install -y "${APT_PACKAGES[@]}" wget https://github.com/nextcloud-releases/desktop/releases/download/v3.16.6/Nextcloud-3.16.6-x86_64.AppImage chmod +x Nextcloud-3.16.6-x86_64.AppImage wget https://launchpad.net/veracrypt/trunk/1.26.24/+download/VeraCrypt-1.26.24-x86_64.AppImage chmod +x VeraCrypt-1.26.24-x86_64.AppImage snap install btop snap install emacs --classic cd wget https://source.cipherbliss.com/tykayn/workflow/raw/branch/main/assets/.bash_custom_aliases -O .bash_aliases wget https://source.cipherbliss.com/tykayn/workflow/raw/branch/main/assets/.bashrc curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh > install_oh_my_zsh.sh bash install_oh_my_zsh.sh # Charger les alias pour pouvoir les vérifier source ~/.bash_aliases # Vérification des installations et des alias verify_installation verify_aliases echo "========== Fin de l'initialisation du workflow ======="