X-Git-Url: https://iankelling.org/git/?a=blobdiff_plain;f=fai%2Fconfig%2Fscripts%2FGRUB_PC%2F11-ian;h=221b6d4da9277a9eb8a70dbef7df53052cc7570b;hb=4c0b3d508093cd1561f6ae887f154f06383b67d3;hp=18c51ff9b673f9fd657aa58cf2397e46bc0be647;hpb=019b7e5971ba8fd5fe45daad02a25180392e9429;p=automated-distro-installer diff --git a/fai/config/scripts/GRUB_PC/11-ian b/fai/config/scripts/GRUB_PC/11-ian index 18c51ff..221b6d4 100755 --- a/fai/config/scripts/GRUB_PC/11-ian +++ b/fai/config/scripts/GRUB_PC/11-ian @@ -1,16 +1,74 @@ #!/bin/bash -x set -eE -o pipefail -trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?"' ERR +trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR $ROOTCMD adduser --disabled-password --gecos ian ian + +if [[ ! $ROOTPW ]]; then + echo "$0: error: empty \$ROOTPW" + exit 1 +fi + $ROOTCMD usermod -p "$ROOTPW" ian +if ifclass STABLE; then + fcopy -M /etc/apt/preferences +fi + +if ifclass DEBIAN; then + fcopy -M /etc/apt/preferences.d/unstable + fcopy -riM /etc/apt/sources.list.d +fi + + +# note: +# fcopy -i = ignore nonmatching class error, always return 0. + +f=/target/home/ian/.ssh/authorized_keys +if [[ ! -L $f || -e $f ]]; then + fcopy -r -M /home/ian/.ssh +fi /var/lib/fai/config/distro-install-common/end -fcopy -r -m 1000,1000,700 -i /home/ian/.ssh -cp -ar $target/home/ian/.ssh $target/root -chown -R root:root $target/root/.ssh +rm -f /target/etc/apt/sources.list + +chroot /target bash <<'EOF' +set -eE -o pipefail +chown -R 1000:1000 /home/ian/.ssh +chmod -R u=Xrw,og= /home/ian/.ssh +rm -rf /root/.ssh +cp -rL /home/ian/.ssh /root +chown -R root:root /root/.ssh + +# default jessie groups + kvm & systemd-journal +usermod -aG cdrom,floppy,sudo,audio,dip,video,plugdev,netdev,kvm,systemd-journal ian +EOF + + +$ROOTCMD apt-get -y install unison-gtk +if ifclass STABLE; then + # don't think this is needed since I figured out how to + # deal with mismatching unison compilers, but I don't + # see any reason to revert it, since it only installs + # a single package which is primarily a single binary + $ROOTCMD apt-get -y install unison-gtk/testing +fi + + + +$ROOTCMD adduser --disabled-password --gecos traci traci +$ROOTCMD usermod -a -G traci ian +# reading through the groups that ian is in but traci isn't, +for g in plugdev audio video cdrom; do + $ROOTCMD usermod -a -G $g traci +done + +if ifclass frodo; then + $ROOTCMD usermod -p "$(cat /var/lib/fai/config/distro-install-common/shadow/traci-simple)" traci +fi + -# the defaults in wheezy -$ROOTCMD usermod -aG cdrom,floppy,sudo,audio,dip,video,plugdev,netdev ian +# makes the journal be saved to disk. +$ROOTCMD mkdir -p /target/var/log/journal +$ROOTCMD chmod 755 /target/var/log/journal