#!/bin/bash set -e # Modifica questa variabile con l'URL raw del tuo repository remoto REPO_URL="https://code.badstorm.xyz/SRV/bdi_podman_serverconf/raw/main" echo "Iniziando l'installazione di BDI Podman Serverconf..." # 1. Aggiornare il sistema Ubuntu echo "Aggiornando il sistema..." sudo apt update && sudo apt upgrade -y # 2. Aggiungere utente ai gruppi render e video echo "Aggiungendo utente ai gruppi render e video..." sudo usermod -a -G render,video $LOGNAME # 3. Installare podman echo "Installando podman..." sudo apt install -y podman htop radeontop curl # 4. Creare cartelle per systemd containers echo "Creando cartelle per containers systemd..." mkdir -p ~/.config/containers/systemd # 5. Scaricare e copiare internal.network echo "Scaricando internal.network..." curl -fsSL $REPO_URL/internal.network -o ~/.config/containers/systemd/internal.network # 6. Aggiungere registri a /etc/containers/registries.conf echo "Aggiungendo registri a registries.conf..." printf "[registries.search]\nregistries = [\"docker.io\", \"quay.io\", \"ghcr.io\"]\n" | sudo tee -a /etc/containers/registries.conf > /dev/null # 7. Creare /srv/containers e assegnare permessi echo "Creando /srv/containers e assegnando permessi..." sudo mkdir -p /srv/containers sudo chown -R $LOGNAME /srv/containers # 8. Creare sottocartelle per aitools echo "Creando cartelle per aitools..." mkdir -p /srv/containers/aitools/{models,.cache} # 9. Creare file vuoto llamacpp_config.yaml echo "Creando llamacpp_config.yaml..." touch /srv/containers/aitools/llamacpp_config.yaml # 10. Aggiornare GRUB echo "Aggiornando GRUB..." if [ -t 0 ]; then echo "Seleziona la quantità di RAM (16, 24, 32, 48 GB):" read ram_gb else echo "Modalità non interattiva: usando default 32GB" ram_gb=32 fi case $ram_gb in 16) gttsize=16384 pages_limit=18432000 ;; 24) gttsize=24576 pages_limit=27648000 ;; 32) gttsize=32768 pages_limit=36864000 ;; 48) gttsize=49152 pages_limit=55296000 ;; *) echo "Valore non valido, usando default 32GB" gttsize=32768 pages_limit=36864000 ;; esac sudo sed -i "s/GRUB_CMDLINE_LINUX_DEFAULT=.*/GRUB_CMDLINE_LINUX_DEFAULT=\"amdgpu.gttsize=${gttsize} amdttm.pages_limit=${pages_limit}\"/" /etc/default/grub sudo update-grub # 11. Scaricare e installare banner.sh echo "Scaricando e installando banner MOTD..." sudo curl -fsSL $REPO_URL/BadAI/banner.sh -o /etc/update-motd.d/99-badai-banner sudo chmod +x /etc/update-motd.d/99-badai-banner # 12. Disabilitare altri script MOTD echo "Disabilitando altri script MOTD..." sudo bash -c 'for f in /etc/update-motd.d/*; do if [[ "$f" != "/etc/update-motd.d/99-badai-banner" && ! -f "${f}.disabled" ]]; then mv "$f" "${f}.disabled"; fi; done' # 13. Sostituire /etc/issue echo "Sostituendo /etc/issue..." sudo curl -fsSL $REPO_URL/BadAI/issue -o /etc/issue # 14. Scaricare e installare badai echo "Scaricando e installando badai..." sudo curl -fsSL $REPO_URL/BadAI/badai -o /usr/local/bin/badai sudo chmod +x /usr/local/bin/badai # 15. Scaricare container files echo "Scaricando file container..." curl -fsSL $REPO_URL/Services/llamacpp/llamacpp.container -o ~/.config/containers/systemd/llamacpp.container curl -fsSL $REPO_URL/Services/nginx/nginx.container -o ~/.config/containers/systemd/nginx.container # 16. Riavviare il sistema echo "Installazione completata. Riavviando il sistema..." sudo reboot