#!/bin/bash # # GT-salat-dikr Enhanced Installation Script (2025) - v3.1 # set -e echo "════════════════════════════════════════════════════════" echo " تثبيت GT-salat-dikr - نظام إشعارات الصلاة والأذكار" echo "════════════════════════════════════════════════════════" echo "" if [ "$EUID" -eq 0 ]; then echo "⚠️ لا تشغل هذا السكربت بصلاحيات root، استخدم حساب المستخدم العادي." exit 1 fi INSTALL_DIR="$HOME/.GT-salat-dikr" REPO_BASE="https://raw.githubusercontent.com/SalehGNUTUX/GT-salat-dikr/main" MAIN_SCRIPT="gt-salat-dikr.sh" CONFIG_FILE="$INSTALL_DIR/settings.conf" echo "🔍 فحص المتطلبات..." MISSING_TOOLS=() for tool in curl jq notify-send; do if ! command -v "$tool" >/dev/null 2>&1; then MISSING_TOOLS+=("$tool") fi done if [ "${#MISSING_TOOLS[@]}" -gt 0 ]; then echo "❌ الأدوات الناقصة: ${MISSING_TOOLS[*]}" echo "يرجى تثبيت الأدوات الناقصة قبل متابعة التثبيت." exit 1 fi # الكشف التلقائي عن نظام الخدمة if command -v systemctl >/dev/null 2>&1; then SYSTEMD_AVAILABLE=1 NOTIFY_SYSTEM="systemd" else SYSTEMD_AVAILABLE=0 NOTIFY_SYSTEM="sysvinit" fi # إعدادات افتراضية (بدون أسئلة) ENABLE_SALAT_NOTIFY=1 ENABLE_ZIKR_NOTIFY=1 TERMINAL_SALAT_NOTIFY=1 TERMINAL_ZIKR_NOTIFY=1 SYSTEM_SALAT_NOTIFY=1 SYSTEM_ZIKR_NOTIFY=1 echo "" echo "📁 إنشاء مجلد التثبيت..." mkdir -p "$INSTALL_DIR" cd "$INSTALL_DIR" echo "📁 إنشاء هيكل المجلدات الإضافية..." mkdir -p "$INSTALL_DIR/monthly_timetables" echo "⬇️ تحميل الملفات الأساسية..." for file in "$MAIN_SCRIPT" "install.sh" "uninstall.sh" "azkar.txt" "adhan.ogg" "short_adhan.ogg" "prayer_approaching.ogg"; do echo " تحميل: $file" curl -fsSL "$REPO_BASE/$file" -o "$file" || echo " ⚠️ لم يتم تحميل $file" done chmod +x "$MAIN_SCRIPT" install.sh uninstall.sh echo "🔗 إعداد المسار..." mkdir -p "$HOME/.local/bin" ln -sf "$INSTALL_DIR/$MAIN_SCRIPT" "$HOME/.local/bin/gtsalat" echo "" echo "📝 حفظ الإعدادات الأولية..." cat > "$CONFIG_FILE" < "$HOME/.config/systemd/user/gt-salat-dikr.service" < "$HOME/.config/autostart/gt-salat-dikr.desktop" <