af7754b95b70bba0a27ef2587fd15ecbc0cc6b3b
[live-boot-grml.git] / scripts / casper-bottom / 10adduser
1 #!/bin/sh
2
3 PREREQ=""
4 DESCRIPTION="Adding live session user..."
5
6 . /scripts/casper-functions
7
8 prereqs()
9 {
10        echo "$PREREQ"
11 }
12
13 case $1 in
14 # get pre-requisites
15 prereqs)
16        prereqs
17        exit 0
18        ;;
19 esac
20
21 log_begin_msg "$DESCRIPTION"
22
23 if [ "${BUILD_SYSTEM}" == "Debian" ]; then
24     user_crypted="8Ab05sVQ4LLps" # as in `echo "live" | mkpasswd -s`
25 else
26     user_crypted="U6aMy0wojraho" # "ubuntu"
27 fi
28
29 # U6aMy0wojraho is just a blank password
30 chroot /root debconf-communicate -fnoninteractive casper > /dev/null <<EOF
31 set passwd/root-password-crypted *
32 set passwd/user-password-crypted ${user_crypted}
33 set passwd/user-fullname $USERFULLNAME
34 set passwd/username $USERNAME
35 set passwd/user-uid 999
36 EOF
37
38 if [ "${BUILD_SYSTEM}" == "Debian" ]; then
39     chroot /root /usr/bin/env -i HOME="/root" \
40         TERM="${TERM}" PATH="/usr/sbin:/usr/bin:/sbin:/bin" \
41         /usr/lib/user-setup/user-setup-apply > /dev/null
42 else
43     chroot /root /usr/lib/user-setup/user-setup-apply > /dev/null
44 fi
45
46 # Clear out debconf database again to avoid confusing ubiquity later.
47 chroot /root debconf-communicate -fnoninteractive casper > /dev/null <<EOF
48 set passwd/root-password-crypted
49 set passwd/user-password-crypted
50 set passwd/user-fullname
51 set passwd/username
52 set passwd/user-uid
53 EOF
54
55 if [ -f /root/etc/sudoers ]; then
56     if [ "${BUILD_SYSTEM}" == "Ubuntu" ]; then
57         # XXX - awful hack to stop xscreensaver locking the screen (#7150)
58         echo 'RUNNING_UNDER_GDM="yes"' >> /root/etc/environment
59         grep -q '^%admin' /root/etc/sudoers && sed -i -e '/^%admin/s/ALL$/NOPASSWD: ALL/' /root/etc/sudoers || echo '%admin  ALL=(ALL) NOPASSWD: ALL' >> /root/etc/sudoers
60         for file in /usr/share/applications/ubiquity-gtkui.desktop /usr/share/applications/kde/ubiquity-kdeui.desktop; do
61             if [ -f "/root/$file" ]; then
62                 chroot /root install -D -o $USERNAME -g $USERNAME $file /home/$USERNAME/Desktop/$(basename "$file")
63                 break
64             fi
65         done
66     else # We are in debian :-)
67         echo "${USERNAME}  ALL=(ALL) NOPASSWD: ALL" >> /root/etc/sudoers            
68     fi
69 fi
70
71 if [ -L /root/home/$USERNAME/Examples ]; then
72     chroot /root install -o $USERNAME -g $USERNAME -d /home/$USERNAME/Desktop/
73     mv /root/home/$USERNAME/Examples /root/home/$USERNAME/Desktop/
74 fi
75
76 log_end_msg