arch use by-id and various fixes
[automated-distro-installer] / fai / config / scripts / GRUB_PC / 11-ian
1 #!/bin/bash -x
2
3 set -eE -o pipefail
4 trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?"' ERR
5
6 $ROOTCMD adduser --disabled-password --gecos ian ian
7
8 if [[ ! $ROOTPW ]]; then
9 echo "$0: error: empty \$ROOTPW"
10 exit 1
11 fi
12
13 $ROOTCMD usermod -p "$ROOTPW" ian
14
15 if ifclass STABLE; then
16 fcopy -M /etc/apt/preferences
17 fi
18
19 if ifclass DEBIAN; then
20 fcopy -M /etc/apt/preferences.d/unstable
21 fcopy -riM /etc/apt/sources.list.d
22 fi
23
24
25 # note:
26 # fcopy -i = ignore nonmatching class error, always return 0.
27
28 f=/target/home/ian/.ssh/authorized_keys
29 if [[ ! -L $f || -e $f ]]; then
30 fcopy -r -M /home/ian/.ssh
31 fi
32 /var/lib/fai/config/distro-install-common/end
33
34 rm -f /target/etc/apt/sources.list
35
36 chroot /target bash <<'EOF'
37 set -eE -o pipefail
38 chown -R 1000:1000 /home/ian/.ssh
39 chmod -R u=Xrw,og= /home/ian/.ssh
40 cp -ar /home/ian/.ssh /root
41 chown -R root:root /root/.ssh
42
43 # default jessie groups + kvm & systemd-journal
44 usermod -aG cdrom,floppy,sudo,audio,dip,video,plugdev,netdev,kvm,systemd-journal ian
45 EOF
46
47
48 $ROOTCMD apt-get -y install unison-gtk
49 if ifclass STABLE; then
50 # don't think this is needed since I figured out how to
51 # deal with mismatching unison compilers, but I don't
52 # see any reason to revert it, since it only installs
53 # a single package which is primarily a single binary
54 $ROOTCMD apt-get -y install unison-gtk/testing
55 fi
56
57
58
59 $ROOTCMD adduser --disabled-password --gecos traci traci
60 $ROOTCMD usermod -a -G traci ian
61 # reading through the groups that ian is in but traci isn't,
62 for g in plugdev audio video cdrom; do
63 $ROOTCMD usermod -a -G $g traci
64 done
65
66 if ifclass frodo; then
67 $ROOTCMD usermod -p "$(cat /var/lib/fai/config/distro-install-common/shadow/traci-simple)" traci
68 fi