#!/bin/bash
# ============================================
# Скрипт отключает автоматические обновления Ubuntu 22.04
# Автор: ChatGPT (GPT-5)
# ============================================

# Проверка прав root
if [[ $EUID -ne 0 ]]; then
  echo "? Запусти скрипт с правами root (через sudo)"
  exit 1
fi

echo "=== ?? Отключение автообновлений Ubuntu 22.04 ==="

echo "[1/6] Отключаю systemd-таймеры APT..."
systemctl disable --now apt-daily.timer apt-daily-upgrade.timer >/dev/null 2>&1
systemctl mask apt-daily.service apt-daily-upgrade.service >/dev/null 2>&1

echo "[2/6] Останавливаю возможные фоновые процессы..."
killall apt.systemd.daily unattended-upgrade 2>/dev/null

echo "[3/6] Очищаю cron-задания APT..."
rm -f /etc/cron.daily/apt-compat 2>/dev/null

echo "[4/6] Обновляю конфигурацию /etc/apt/apt.conf.d/20auto-upgrades..."
cat <<EOF > /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";
EOF

echo "[5/6] Удаляю пакет unattended-upgrades (если установлен)..."
apt-get remove -y unattended-upgrades >/dev/null 2>&1

echo "[6/6] Проверяю статус..."
if ! systemctl list-timers --all | grep -q apt; then
  echo "? systemd-таймеры APT отключены."
else
  echo "?? Найдены активные таймеры APT — проверь вручную:"
  systemctl list-timers --all | grep apt
fi

if ! dpkg -l | grep -q unattended-upgrades; then
  echo "? Пакет unattended-upgrades удалён."
else
  echo "?? Пакет unattended-upgrades всё ещё установлен."
fi

echo
echo "=== ? Автоматические обновления отключены ==="
echo "Теперь обновляйте систему вручную командой:"
echo "    sudo apt update && sudo apt upgrade -y"
echo "============================================"
