#!/bin/sh -eu # SYNTAX: $user tool=$(readlink -e "${0%/*}/..") . "$tool"/local/lib.sh "$tool"/local/apt-get-install bash-completion sudo install -m 660 -o root -g root \ "$tool"/etc/adduser.conf \ /etc/adduser.conf sudo install -d -m 750 -o root -g root \ /etc/skel \ /etc/skel/etc \ /etc/skel/etc/gpg \ /etc/skel/etc/ssh sudo install -d -m 770 -o root -g root \ /etc/skel/var \ /etc/skel/var/cache \ /etc/skel/var/log \ /etc/skel/var/run \ /etc/skel/var/run/ssh sudo ln -fns etc/ssh /etc/skel/.ssh sudo ln -fns etc/gpg /etc/skel/.gnupg sudo install -m 640 -o root -g root /dev/stdin \ /etc/sudoers.d/passwd-init <<-EOF %sudo ALL=(ALL) NOPASSWD: /bin/sh -e -f -u -c \\ case \$(/usr/bin/passwd --status "\$SUDO_USER") in \\ ("\$SUDO_USER L "*) /usr/bin/passwd \$SUDO_USER;; esac EOF sudo install -m 640 -o root -g root /dev/stdin \ /etc/sudoers.d/etckeeper-unclean <<-EOF %sudo ALL=(ALL) NOPASSWD: /usr/bin/etckeeper unclean EOF sudo install -m 640 -o root -g root /dev/stdin \ /etc/sudoers.d/env_keep <<-EOF Defaults env_keep = " \\ EDITOR \\ GIT_AUTHOR_NAME \\ GIT_AUTHOR_EMAIL \\ GIT_COMMITTER_NAME \\ GIT_COMMITTER_EMAIL \\ " EOF sudo install -m 755 -o root -g root \ "$tool"/local/passwd-init \ /usr/local/bin/passwd-init sudo install -m 644 -o root -g root \ "$tool"/etc/bash.bashrc \ /etc/bash.bashrc sudo install -m 644 -o root -g root \ "$tool"/etc/inputrc \ /etc/inputrc sudo install -m 644 -o root -g root \ "$tool"/etc/screenrc \ /etc/screenrc for sh in "$tool"/etc/user.d/*/local.sh do sh=${sh#"$tool"/etc/user.d/} user="${sh%/local.sh}" ( . "$tool"/etc/user.d/"$sh" || return 1 ) done