# live-initramfs header
-. /scripts/live-functions
-
-log_begin_msg "Setting up automatic login..."
-
-# live-initramfs script
+. /live.vars
-if [ -n "${NOXAUTOLOGIN}" ]
+if [ -n "${NOXAUTOLOGIN}" ] || [ -z "${USERNAME}" ]
then
exit 0
fi
+. /scripts/live-functions
+
+log_begin_msg "Setting up automatic login"
+
+# live-initramfs script
+
# chroot needed to handle symlinks correctly
if chroot /root [ -f /etc/gdm/gdm-cdd.conf ]
then
# chroot needed to handle symlinks correctly
if chroot /root [ -f ${GDMCONF} ]
then
- if [ "${BUILD_SYSTEM}" = "Debian" ]
- then
- # true hack ! -- nohar
- chroot /root cp /usr/share/gdm/defaults.conf /etc/gdm/gdm.conf
- fi
+ # true hack ! -- nohar
+ chroot /root cp /usr/share/gdm/defaults.conf /etc/gdm/gdm.conf
# Configure GDM autologin
chroot /root \
-e "s/^TimedLogin=.*\$/TimedLogin=${USERNAME}/" \
-e "s/^TimedLoginDelay=.*\$/TimedLoginDelay=10/" \
${GDMCONF}
+elif [ -d /root/etc/gdm3 ]
+then
+ GDMCustomFile=/root/etc/gdm3/custom.conf
+ AutologinParameters="AutomaticLoginEnable=true\n\
+AutomaticLogin=$USERNAME\n\
+TimedLoginEnable=true\n\
+TimedLogin=$USERNAME\n\
+TimedLoginDelay=10"
+
+ # Prevent from updating if parameters already present (persistent usb
+ # key)
+ if ! $(grep -qs '\[daemon\]' $GDMCustomFile)
+ then
+ echo '[daemon]' >> $GDMCustomFile
+ fi
+
+ sed -i "s/\[daemon\]/\[daemon\]\n$AutologinParameters/" $GDMCustomFile
fi
-if [ -f /root/etc/kde3/kdm/kdmrc ]
+if [ -d /root/etc/default/kdm.d/ ]
+then
+ if ! grep -qs "^AUTOLOGIN" /root/etc/default/kdm.d/live-autologin
+ then
+
+cat >> /root/etc/default/kdm.d/live-autologin << EOF
+AUTOLOGINUSER=${USERNAME}
+AUTOLOGINAGAIN=true
+AUTOLOGINDELAY=0
+EOF
+
+ fi
+
+elif [ -f /root/etc/kde3/kdm/kdmrc ]
then
# Configure KDM autologin
sed -i -r -e "s/^#?AutoLoginEnable=.*\$/AutoLoginEnable=true/" \
-e "s/^#?AutoLoginUser=.*\$/AutoLoginUser=${USERNAME}/" \
-e "s/^#?AutoReLogin=.*\$/AutoReLogin=true/" \
/root/etc/kde3/kdm/kdmrc
+elif [ -f /root/etc/kde4/kdm/kdmrc ]
+then
+ # Configure KDM-KDE4 autologin
+ sed -i -r -e "s/^#?AutoLoginEnable=.*\$/AutoLoginEnable=true/" \
+ -e "s/^#?AutoLoginUser=.*\$/AutoLoginUser=$USERNAME/" \
+ -e "s/^#?AutoReLogin=.*\$/AutoReLogin=true/" \
+ /root/etc/kde4/kdm/kdmrc
+fi
+
+if [ -f /root/etc/lxdm/lxdm.conf ]
+then
+ # Configure LXDM autologin
+ sed -i -r -e "s/^# autologin=dgod/autologin=$USERNAME/" \
+ -e "s/^# session/session/" \
+ /root/etc/lxdm/lxdm.conf
fi
log_end_msg