Sync with Debian git, incorporating 09_use_udevadm_info.dpatch
[live-initramfs-grml.git] / scripts / live-bottom / 15autologin
1 #!/bin/sh
2
3 #set -e
4
5 # initramfs-tools header
6
7 PREREQ=""
8
9 prereqs()
10 {
11         echo "${PREREQ}"
12 }
13
14 case "${1}" in
15         prereqs)
16                 prereqs
17                 exit 0
18                 ;;
19 esac
20
21 # live-initramfs header
22
23 . /live.vars
24
25 if [ -n "${NOXAUTOLOGIN}" ] || [ -z "${USERNAME}" ]
26 then
27         exit 0
28 fi
29
30 . /scripts/live-functions
31
32 log_begin_msg "Setting up automatic login"
33
34 # live-initramfs script
35
36 # chroot needed to handle symlinks correctly
37 if chroot /root [ -f /etc/gdm/gdm-cdd.conf ]
38 then
39         GDMCONF=/etc/gdm/gdm-cdd.conf
40 else
41         GDMCONF=/etc/gdm/gdm.conf
42 fi
43
44 # chroot needed to handle symlinks correctly
45 if chroot /root [ -f ${GDMCONF} ]
46 then
47         # true hack ! -- nohar
48         chroot /root cp /usr/share/gdm/defaults.conf /etc/gdm/gdm.conf
49
50         # Configure GDM autologin
51         chroot /root \
52         sed -i -e "s/^AutomaticLoginEnable=.*\$/AutomaticLoginEnable=true/" \
53                -e "s/^AutomaticLogin=.*\$/AutomaticLogin=${USERNAME}/" \
54                -e "s/^TimedLoginEnable=.*\$/TimedLoginEnable=true/" \
55                -e "s/^TimedLogin=.*\$/TimedLogin=${USERNAME}/" \
56                -e "s/^TimedLoginDelay=.*\$/TimedLoginDelay=10/" \
57         ${GDMCONF}
58 fi
59
60 if [ -d /root/etc/default/kdm.d/ ]
61 then
62         if ! grep -qs "^AUTOLOGIN" /root/etc/default/kdm.d/live-autologin
63         then
64
65 cat >> /root/etc/default/kdm.d/live-autologin << EOF
66 AUTOLOGINUSER=${USERNAME}
67 AUTOLOGINAGAIN=true
68 AUTOLOGINDELAY=0
69 EOF
70
71         fi
72
73 elif [ -f /root/etc/kde3/kdm/kdmrc ]
74 then
75         # Configure KDM autologin
76         sed -i -r -e "s/^#?AutoLoginEnable=.*\$/AutoLoginEnable=true/" \
77                   -e "s/^#?AutoLoginUser=.*\$/AutoLoginUser=${USERNAME}/" \
78                   -e "s/^#?AutoReLogin=.*\$/AutoReLogin=true/" \
79         /root/etc/kde3/kdm/kdmrc
80 elif [ -f /root/etc/kde4/kdm/kdmrc ]
81 then
82         # Configure KDM-KDE4 autologin
83         sed -i -r -e "s/^#?AutoLoginEnable=.*\$/AutoLoginEnable=true/" \
84                   -e "s/^#?AutoLoginUser=.*\$/AutoLoginUser=$USERNAME/" \
85                   -e "s/^#?AutoReLogin=.*\$/AutoReLogin=true/" \
86         /root/etc/kde4/kdm/kdmrc
87 fi
88
89 log_end_msg