#!/bin/bash LOG_FILE="/var/log/tyleo-station-setup.log" mkdir -p "$(dirname "$LOG_FILE")" exec > >(tee -a "$LOG_FILE") 2>&1 log() { echo "$(date '+%d/%m/%Y @ %H:%M:%S') | $1" } USE_NVIDIA=false if [[ "$1" == "--nvidia" ]]; then USE_NVIDIA=true log "Mode NVIDIA activé : les applications Flatpak seront configurées avec le offloading GPU" fi log "=== DÉBUT DE L'INSTALLATION ===" # RPM Fusion log "Ajout du dépôt RPM Fusion Free" sudo dnf install -y --nogpgcheck https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm # Flatpak & Flathub log "Installation de Flatpak et configuration de Flathub" sudo dnf install -y flatpak flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo flatpak remote-delete fedora || log "Remote 'fedora' déjà supprimé ou inexistant." # Désinstallation de Firefox log "Désinstallation de Firefox" sudo dnf remove -y firefox # Steam + Proton tools log "Installation de Steam, ProtonTricks, ProtonPlus" flatpak install -y flathub com.valvesoftware.Steam com.github.Matoking.protontricks io.github.Foldex.AdaptiveProtonPlus # Navigateur, utilitaires, thèmes log "Installation de Vivaldi, Bitwarden, SaveDesktop, Linux Themes Store" flatpak install -y flathub com.vivaldi.Vivaldi com.bitwarden.desktop com.github.alainm23.savedesktop com.github.fsobolev.SetTheme # Flatseal + DistroShelf log "Installation de Flatseal et DistroShelf" flatpak install -y flathub com.github.tchx84.Flatseal dev.distrobox.DistroShelf flatpak override --user --filesystem=home --filesystem=/etc --filesystem=/var \ --device=all --socket=ssh-auth --socket=x11 --socket=wayland \ --talk-name=org.freedesktop.Flatpak dev.distrobox.DistroShelf # VSCode log "Installation de VSCode avec accès étendu" flatpak install -y flathub com.visualstudio.code flatpak override --user --filesystem=home --filesystem=/etc --filesystem=/var \ --socket=wayland --socket=x11 com.visualstudio.code # Ptyxis Terminal log "Installation de Ptyxis Terminal" flatpak install -y flathub io.ayan4m1.ptyxis xdg-mime default io.ayan4m1.ptyxis.desktop x-terminal-emulator.desktop || true # Polices système log "Installation des polices Comfortaa, JetBrains Mono, Oxanium" FONT_DIR="/usr/share/fonts/extra" sudo mkdir -p "$FONT_DIR" cd /tmp declare -A fonts fonts["Comfortaa"]="https://github.com/google/fonts/raw/main/ofl/comfortaa/Comfortaa%5Bwght%5D.ttf" fonts["JetBrainsMono"]="https://download.jetbrains.com/fonts/JetBrainsMono-2.304.zip" fonts["Oxanium"]="https://github.com/google/fonts/raw/main/ofl/oxanium/Oxanium%5Bwght%5D.ttf" sudo wget -q -O "$FONT_DIR/Comfortaa.ttf" "${fonts["Comfortaa"]}" wget -q -O JetBrainsMono.zip "${fonts["JetBrainsMono"]}" unzip -q JetBrainsMono.zip -d jetbrains sudo cp jetbrains/ttf/*.ttf "$FONT_DIR" sudo wget -q -O "$FONT_DIR/Oxanium.ttf" "${fonts["Oxanium"]}" sudo fc-cache -f -v # Emulateurs + Prism Launcher log "Installation des émulateurs et Prism Launcher" flatpak install -y flathub net.pcsx2.PCSX2 org.ppsspp.PPSSPP org.duckstation.DuckStation org.prismlauncher.PrismLauncher if [ "$USE_NVIDIA" = true ]; then for app in net.pcsx2.PCSX2 org.ppsspp.PPSSPP org.duckstation.DuckStation org.prismlauncher.PrismLauncher; do flatpak override --user --env=FLATPAK_GL_DRIVERS=nvidia \ --env=__NV_PRIME_RENDER_OFFLOAD=1 \ --env=__GLX_VENDOR_LIBRARY_NAME=nvidia "$app" log "Configuration NVIDIA offloading appliquée à $app" done fi log "=== INSTALLATION TERMINÉE AVEC SUCCÈS ==="