#!/usr/bin/bash

SYSCONF="/etc/gamescope-session-steam/system.conf"

DEFAULT_USER=""
DEFAULT_SESSION=""

if [[ -f "$SYSCONF" ]]; then
  . "$SYSCONF"
fi

USERNAME="${DEFAULT_USER:-}"
SESSION_NAME="${DEFAULT_SESSION:-}"

DMCONF="/etc/sysconfig/displaymanager"

if [[ -f "$DMCONF" ]]; then
  if grep -q '^DISPLAYMANAGER_AUTOLOGIN=' "$DMCONF"; then
    sed -i "s|^DISPLAYMANAGER_AUTOLOGIN=.*|DISPLAYMANAGER_AUTOLOGIN=\"${USERNAME}\"|g" "$DMCONF"
  else
    printf '\nDISPLAYMANAGER_AUTOLOGIN="%s"\n' "$USERNAME" >> "$DMCONF"
  fi
else
  printf 'DISPLAYMANAGER_AUTOLOGIN="%s"\n' "$USERNAME" > "$DMCONF"
fi

KDECONF="/etc/sddm.conf.d/kde_settings.conf"
if [[ -f "$KDECONF" ]]; then
  if grep -q '^Session=' "$KDECONF"; then
    sed -i "s|^Session=.*|Session=${SESSION_NAME}|g" "$KDECONF"
  else
    sed -i "/^\[Autologin\]/a\Session=${SESSION_NAME}" "$KDECONF"
  fi

  if grep -q '^Relogin=' "$KDECONF"; then
    sed -i "s|^Relogin=.*|Relogin=true|g" "$KDECONF"
  else
    sed -i "/^\[Autologin\]/a\Relogin=true" "$KDECONF"
  fi
fi
