diff --git a/uninstall.sh b/uninstall.sh index f0a5d97..ec9592d 100755 --- a/uninstall.sh +++ b/uninstall.sh @@ -1,26 +1,71 @@ #!/bin/bash +# uninstall.sh - Удаление Stego App +# Запуск: chmod +x uninstall.sh && ./uninstall.sh + set -e echo "==========================================" echo "Удаление Stego App" echo "==========================================" -# 1. Удаление через pipx -pipx uninstall stego-app +PROJECT_DIR="$(pwd)" +USER_BIN="$HOME/.local/bin" -echo "✓ Пакет удалён" +# 1. Удаление запускаторов +echo "Удаление запускаторов..." +rm -f "$USER_BIN/stego" +rm -f "$USER_BIN/stego-gui" +echo "✓ Запускаторы удалены" # 2. Удаление иконки echo "Удаление иконки..." sudo rm -rf /usr/local/share/stego +echo "✓ Иконка удалена" -# 3. Удаление .desktop файла -echo "Удаление ярлыка..." +# 3. Удаление .desktop файла из меню +echo "Удаление ярлыка из меню..." rm -f ~/.local/share/applications/stego.desktop +update-desktop-database ~/.local/share/applications/ 2>/dev/null || true +echo "✓ Ярлык из меню удалён" -# 4. Обновление базы приложений -sudo update-desktop-database +# 4. Удаление ярлыка с рабочего стола (если есть) +echo "Удаление ярлыка с рабочего стола..." +rm -f ~/Desktop/stego.desktop +rm -f ~/Рабочий\ стол/stego.desktop +echo "✓ Ярлык с рабочего стола удалён" +# 5. Удаление виртуального окружения (опционально) +read -p "Удалить виртуальное окружение (.venv)? (y/n): " -n 1 -r +echo +if [[ $REPLY =~ ^[Yy]$ ]]; then + rm -rf "$PROJECT_DIR/.venv" + echo "✓ Виртуальное окружение удалено" +else + echo "Виртуальное окружение сохранено" +fi + +# 6. Удаление через pipx (если установлено, без ошибок) +if command -v pipx &> /dev/null; then + if pipx list 2>/dev/null | grep -q "stego-app"; then + pipx uninstall stego-app + echo "✓ Пакет stego-app удалён через pipx" + else + echo "ℹ️ Пакет stego-app не найден в pipx (пропускаем)" + fi +fi + +# 7. Очистка кэша Python +echo "Очистка кэша Python..." +find "$PROJECT_DIR" -type d -name "__pycache__" -exec rm -rf {} + 2>/dev/null || true +find "$PROJECT_DIR" -type f -name "*.pyc" -delete 2>/dev/null || true +echo "✓ Кэш очищен" + +# 8. Очистка PATH от ~/.local/bin (только если ничего не осталось) +if [ ! -f "$USER_BIN/stego" ] && [ ! -f "$USER_BIN/stego-gui" ]; then + echo "ℹ️ Запускаторы удалены" +fi + +echo "" echo "==========================================" -echo "Удаление завершено!" +echo "✅ Удаление завершено!" echo "==========================================" \ No newline at end of file