#!/usr/bin/env bash
# Install systemd unit so XAMPP (Apache + MySQL) starts on boot.
set -euo pipefail

if [[ ! -x /opt/lampp/lampp ]]; then
  echo "XAMPP not found at /opt/lampp. Install XAMPP for Linux first." >&2
  exit 1
fi

if [[ "${EUID}" -ne 0 ]]; then
  echo "Run with sudo: sudo bash scripts/install-local-xampp-autostart.sh" >&2
  exit 1
fi

UNIT_PATH="/etc/systemd/system/xampp.service"

cat > "${UNIT_PATH}" << 'EOF'
[Unit]
Description=XAMPP (Apache, MySQL, ProFTPD)
After=network-online.target
Wants=network-online.target

[Service]
Type=forking
ExecStart=/opt/lampp/lampp start
ExecStop=/opt/lampp/lampp stop
RemainAfterExit=yes
TimeoutStartSec=120

[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload
systemctl enable xampp.service
systemctl start xampp.service

echo ""
echo "XAMPP autostart enabled (systemd: xampp.service)"
systemctl is-enabled xampp.service
systemctl status xampp.service --no-pager -l | head -15
echo ""
/opt/lampp/lampp status
echo ""
echo "Laravel scheduler: run ./scripts/install-local-cron.sh (user crontab, separate from XAMPP)."
