trixie-gn-postinstall/install_apps.sh

111 lines
2.7 KiB
Bash
Executable File

#!/bin/bash
sudo cp files/extrepo.config.yaml /etc/extrepo/config.yaml
# Vérifie si une commande ou un Flatpak est installé
is_installed() {
local app_name="$1"
local flatpak_ref="${2:-}" # valeur vide si non fournie
if command -v "$app_name" &> /dev/null; then
return 0
fi
if [[ -n "$flatpak_ref" ]] && flatpak info --show-ref "$flatpak_ref" &> /dev/null; then
return 0
fi
return 1
}
# 📺 FreeTube (Flatpak)
install_freetube() {
local flatpak_ref="io.freetubeapp.FreeTube"
local runtime="org.freedesktop.Platform//25.08"
# Vérifie si FreeTube est déjà installé
if is_installed freetube "$flatpak_ref"; then
echo "📺 FreeTube est déjà installé (Flatpak ou système)."
return
fi
echo "🔄 Mise à jour des métadonnées Flathub..."
flatpak update --appstream -y
echo "📦 Installation du runtime nécessaire..."
if ! flatpak list --runtime | grep -qw "org.freedesktop.Platform.*25.08"; then
flatpak install -y flathub "$runtime"
else
echo "✅ Runtime déjà installé."
fi
echo "📦 Installation de FreeTube..."
flatpak install -y flathub "$flatpak_ref"
# Vérifie que l'installation a réussi
if is_installed freetube "$flatpak_ref"; then
echo "🎉 FreeTube a été installé avec succès !"
else
echo "❌ Échec de l'installation de FreeTube."
fi
}
# 🎥 Zoom (via .deb)
install_zoom() {
if is_installed zoom; then
echo "🎥 Zoom est déjà installé."
return
fi
run_step "🎥 Installation de Zoom (.deb officiel)" "
wget -q https://zoom.us/client/latest/zoom_amd64.deb -O /tmp/zoom.deb &&
sudo apt install -y /tmp/zoom.deb &&
rm /tmp/zoom.deb
"
}
# 💬 Element (via extrepo)
install_element() {
if is_installed element-desktop; then
echo "💬 Element est déjà installé."
return
fi
run_step "💬 Installation de Element (Extrepo)" "
sudo extrepo enable element.io &&
sudo apt update &&
sudo apt install -y element-desktop
"
}
# 🌐 Google Chrome (via extrepo)
install_chrome() {
if is_installed google-chrome; then
echo "🌐 Google Chrome est déjà installé."
return
fi
run_step "🌐 Installation de Google Chrome (Extrepo)" "
sudo extrepo enable google_chrome &&
sudo apt update &&
sudo apt install -y google-chrome-stable
"
}
# 🧑‍💻 VSCodium (via extrepo)
install_vscodium() {
if is_installed codium; then
echo "🧑‍💻 VSCodium est déjà installé."
return
fi
run_step "🧑‍💻 Installation de VSCodium (Extrepo)" "
sudo extrepo enable vscodium &&
sudo apt update &&
sudo apt install -y codium
"
}