#!/usr/bin/sh
#
# live-kde: kde specific setup for livesys
# SPDX-License-Identifier: GPL-3.0-or-later
#

# detect if we can run wayland or not.
# sig/core#11
if strstr "\`cat /proc/cmdline\`" nomodeset ; then
  PLASMA_SESSION_FILE="plasmax11.desktop"
else
  PLASMA_SESSION_FILE="plasma.desktop"
fi

# set up autologin for user liveuser
# modify session according to the above
# sig/core#11
if [ -f /etc/sddm.conf ]; then
sed -i 's/^#User=.*/User=liveuser/' /etc/sddm.conf
sed -i "s/^#Session=.*/Session=${PLASMA_SESSION_FILE}/" /etc/sddm.conf
else
cat > /etc/sddm.conf << SDDM_EOF
[Autologin]
User=liveuser
Session=\${PLASMA_SESSION_FILE}
SDDM_EOF
fi

# add liveinst.desktop to favorites menu
mkdir -p /home/liveuser/.config/
cat > /home/liveuser/.config/kickoffrc << MENU_EOF
[Favorites]
FavoriteURLs=/usr/share/applications/firefox.desktop,/usr/share/applications/org.kde.dolphin.desktop,/usr/share/applications/systemsettings.desktop,/usr/share/applications/org.kde.konsole.desktop,/usr/share/applications/liveinst.desktop
MENU_EOF

# show liveinst.desktop on desktop and in menu
sed -i 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop
# set executable bit disable KDE security warning
chmod +x /usr/share/applications/liveinst.desktop
mkdir /home/liveuser/Desktop
cp -a /usr/share/applications/liveinst.desktop /home/liveuser/Desktop/

# Set akonadi backend
mkdir -p /home/liveuser/.config/akonadi
cat > /home/liveuser/.config/akonadi/akonadiserverrc << AKONADI_EOF
[%General]
Driver=QSQLITE3
AKONADI_EOF

# Disable plasma-discover-notifier
mkdir -p /home/liveuser/.config/autostart
cp -a /etc/xdg/autostart/org.kde.discover.notifier.desktop /home/liveuser/.config/autostart/
echo 'Hidden=true' >> /home/liveuser/.config/autostart/org.kde.discover.notifier.desktop

# Disable plasma-welcome for now
# Cf. https://bugs.kde.org/show_bug.cgi?id=466282
rm -f /etc/xdg/autostart/org.kde.plasma-welcome.desktop

# Disable baloo
cat > /home/liveuser/.config/baloofilerc << BALOO_EOF
[Basic Settings]
Indexing-Enabled=false
BALOO_EOF

# Disable kres-migrator
cat > /home/liveuser/.kde/share/config/kres-migratorrc << KRES_EOF
[Migration]
Enabled=false
KRES_EOF

# Disable kwallet migrator
cat > /home/liveuser/.config/kwalletrc << KWALLET_EOL
[Migration]
alreadyMigrated=true
KWALLET_EOL

# Disable automount of 'known' devices
# https://bugzilla.redhat.com/show_bug.cgi?id=2073708
cat > /home/liveuser/.config/kded_device_automounterrc << AUTOMOUNTER_EOF
[General]
AutomountEnabled=false
AutomountOnLogin=false
AutomountOnPlugin=false
AUTOMOUNTER_EOF

# disable kdeconnect - this always seems to crash on Rocky Linux.
# sig/core#11
cat > /home/liveuser/.config/autostart/org.kde.kdeconnect.daemon.desktop << KDECONNECT_EOF
[Desktop Entry]
Hidden=true
KDECONNECT_EOF
mkdir -p /home/liveuser/.local/share/dbus-1/services/
cat > /home/liveuser/.local/share/dbus-1/services/org.kde.kdeconnect.service << DBUS_EOF
[D-BUS Service]
Name=org.kde.kdeconnect
Exec=/usr/bin/false
DBUS_EOF

