Silence a number of annoying and distracting bootup messages.
[live-boot-grml.git] / scripts / live-bottom / 10adduser
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 if [ -n "${NOUSER}" ]
24 then
25         exit 0
26 fi
27
28 . /scripts/live-functions
29
30 log_begin_msg "Adding live session user"
31
32 # live-initramfs script
33
34 user_crypted="8Ab05sVQ4LLps" # as in $(echo "live" | mkpasswd -s)
35
36 # U6aMy0wojraho is just a blank password
37 chroot /root debconf-communicate -fnoninteractive live-initramfs > /dev/null << EOF
38 set passwd/make-user true
39 set passwd/root-password-crypted *
40 set passwd/user-password-crypted ${user_crypted}
41 set passwd/user-fullname ${USERFULLNAME}
42 set passwd/username ${USERNAME}
43 set passwd/user-uid 999
44 EOF
45
46 chroot /root /usr/bin/env -i HOME="/root" \
47         TERM="${TERM}" PATH="/usr/sbin:/usr/bin:/sbin:/bin" \
48         /usr/lib/user-setup/user-setup-apply > /dev/null
49
50 # Clear out debconf database again to avoid confusing ubiquity later.
51 chroot /root debconf-communicate -fnoninteractive live-initramfs > /dev/null << EOF
52 set passwd/make-user
53 set passwd/root-password-crypted
54 set passwd/user-password-crypted
55 set passwd/user-fullname
56 set passwd/username
57 set passwd/user-uid
58 EOF
59
60 if [ -z "${NOSUDO}" ]
61 then
62         if ! grep -q "${USERNAME}" /root/etc/sudoers
63         then
64                 echo "${USERNAME}  ALL=(ALL) NOPASSWD: ALL" >> /root/etc/sudoers
65
66                 chroot /root sudo -u "${USERNAME}" sh -c "echo 'SU_TO_ROOT_SU=sudo' >> /home/${USERNAME}/.su-to-rootrc"
67
68                 if [ -x /root/usr/bin/gconftool-2 ]
69                 then
70                         chroot /root sudo -u "${USERNAME}" gconftool-2 -s -t bool /apps/gksu/sudo-mode true
71                         chroot /root sudo -u "${USERNAME}" gconftool-2 -s -t bool /apps/gksu/display-no-pass-info false
72                 fi
73
74 chroot /root sudo -u "${USERNAME}" sh -c "umask 0077 && mkdir -p /home/${USERNAME}/.kde/share/config && cat > /home/${USERNAME}/.kde/share/config/kdesurc" << EOF
75 [super-user-command]
76 super-user-command=sudo
77 EOF
78
79                 if [ -f /root/usr/share/apps/konsole/sumc.desktop ]
80                 then
81                         chroot /root sudo -u "${USERNAME}" sh -c "umask 0077 && mkdir -p /home/${USERNAME}/.kde/share/apps/konsole && sed -e's/Exec=su.*$/Exec=sudo mc -c/' /usr/share/apps/konsole/sumc.desktop > /home/${USERNAME}/.kde/share/apps/konsole/sumc.desktop"
82                 fi
83
84                 if [ -f /root/usr/share/apps/konsole/su.desktop ]
85                 then
86                         chroot /root sudo -u "${USERNAME}" sh -c "umask 0077 && mkdir -p /home/${USERNAME}/.kde/share/apps/konsole && sed -e's/Exec=su.*$/Exec=sudo -i/' /usr/share/apps/konsole/su.desktop > /home/${USERNAME}/.kde/share/apps/konsole/su.desktop"
87                 fi
88         fi
89 fi
90
91 if [ -L /root/home/${USERNAME}/Examples ]
92 then
93         chroot /root install -o ${USERNAME} -g ${USERNAME} -d /home/${USERNAME}/Desktop/
94         mv /root/home/${USERNAME}/Examples /root/home/${USERNAME}/Desktop/
95 fi
96
97 log_end_msg