#!/bin/bash

set -e

USERNAME="vicharak"
HOMEDIR="/home/$USERNAME"
URL="https://www.google.com"

echo "🔧 Installing necessary packages..."
apt update
apt install -y \
  xserver-xorg xinit openbox \
  x11-xserver-utils xinput evtest \
  fonts-dejavu \
  unclutter

sudo add-apt-repository -y ppa:jjriek/rockchip-multimedia
sudo apt update
echo "🔧 Installing Chromium packages..."
sudo apt install chromium-browser

echo "📁 Creating .xinitrc for $USERNAME..."
touch "$HOMEDIR/.xinitrc"

# Enable autologin for kioskuser
mkdir -p /etc/systemd/system/getty@tty1.service.d
cat > /etc/systemd/system/getty@tty1.service.d/override.conf <<EOF
[Service]
ExecStart=
ExecStart=-/sbin/agetty --autologin $USERNAME --noclear %I \$TERM
EOF

chown "$USERNAME:$USERNAME" "$HOMEDIR/.xinitrc"
chmod +x "$HOMEDIR/.xinitrc"

echo "🚫 Removing any old auto-start from .profile..."
sed -i '/startx/d' "$HOMEDIR/.profile" || true
chown "$USERNAME:$USERNAME" "$HOMEDIR/.profile"

echo "🚀 Creating /usr/local/bin/startx-tty1.sh..."
cat > /usr/local/bin/startx-tty1.sh <<EOF
#!/bin/bash

export DISPLAY=:0
chvt 1
sudo -u $USERNAME xinit $HOMEDIR/.xinitrc -- vt1
sudo startx &
sleep 5
sudo touch /root/log
DISPLAY=:0 chromium-browser --no-sandbox --kiosk --noerrdialogs --disable-infobars --disable-session-crashed-bubble $URL
echo "Chromium" > /root/log
EOF

chmod +x /usr/local/bin/startx-tty1.sh

echo "🛠️ Creating systemd service: kiosk-x-tty1.service..."
cat > /etc/systemd/system/kiosk-x-tty1.service <<EOF
[Unit]
Description=Start X on TTY1 with Chromium Kiosk
After=multi-user.target

[Service]
Type=simple
ExecStart=/usr/local/bin/startx-tty1.sh
StandardOutput=journal
StandardError=journal
Restart=always

[Install]
WantedBy=multi-user.target
EOF

echo "📌 Enabling systemd service..."
systemctl enable kiosk-x-tty1.service

echo "✅ Kiosk setup complete. Reboot to start Chromium in TTY1."
