#!/usr/bin/env bash # install.sh — Pi Session Launcher # Crea la voce nel menu applicazioni KDE (.desktop) e rende eseguibile lo script. set -euo pipefail DIR="$(cd "$(dirname "$0")" && pwd)" APP="$DIR/pi-session-launcher.py" BIN="$DIR/dist/pi-session-launcher" APP_ID="it.enne2.pi-session-launcher" DESKTOP="$HOME/.local/share/applications/$APP_ID.desktop" # usa l'eseguibile portabile se presente, altrimenti lo script python if [[ -x "$BIN" ]]; then EXEC="$BIN" else EXEC="$APP" fi # sintassi: ./install.sh [--uninstall] if [[ "${1:-}" == "--uninstall" ]]; then rm -f "$DESKTOP" echo "Rimossa la voce di menu: $DESKTOP" exit 0 fi chmod +x "$APP" 2>/dev/null || true # icona nel tema icone KDE (più dimensioni: KDE le scala dal tema) ICON_SRC="$DIR/assets/pi-session-launcher.png" if [[ -f "$ICON_SRC" ]]; then for size in 48 64 128 256 512; do ICON_DIR="$HOME/.local/share/icons/hicolor/${size}x${size}/apps" mkdir -p "$ICON_DIR" if [[ -f "$DIR/assets/pi-session-launcher-${size}.png" ]]; then cp "$DIR/assets/pi-session-launcher-${size}.png" "$ICON_DIR/$APP_ID.png" else cp "$ICON_SRC" "$ICON_DIR/$APP_ID.png" fi done ICON_NAME="$APP_ID" else ICON_NAME="utilities-terminal" fi mkdir -p "$(dirname "$DESKTOP")" cat > "$DESKTOP" <