x="$(readlink -f "$BASH_SOURCE")"; source "${x%/*}/bash-trace"
-[[ $EUID == 0 ]] || exec sudo "${BASH_SOURCE}" "$@"
+[[ $EUID == 0 ]] || exec sudo -i "${BASH_SOURCE}" "$@"
usage() {
cat <<EOF
Separate from running this, faiserver needs to be setup in dns
to point to whatever host this is run on.
-For running on arm, it expects Ian's fai-basefiles repository at
-/a/bin/fai-basefiles
+It expects $BASEFILE_DIR/STRETCH64.tar.gz to exist, and it
+must have been generated around the same time as the nfsroot,
+at least so it has the same kernel version.
EOF
exit $1
base=stretch
sed="sed -ri --follow-symlinks"
+if [[ ! -e $BASEFILE_DIR/STRETCH64.tar.gz ]]; then
+ printf "%s\n" "$0: error BASEFILE_DIR=$BASEFILE_DIR \$BASEFILE_DIR/STRETCH64.tar.gz does not exist"
+ exit 1
+fi
+
+
if ! type -p wget &>/dev/null; then
apt-get install -y wget
fi
elif grep -xFq 'VERSION="8 (jessie)"' /etc/os-release; then
gpg -a --recv-keys 2BF8D9FE074BCDE4; gpg -a --export 2BF8D9FE074BCDE4 | apt-key add -
cat >/etc/apt/sources.list.d/fai.list <<'EOF'
-deb http://fai-project.org/download jessie koeln
+deb https://fai-project.org/download jessie koeln
EOF
elif grep -xFq 'VERSION="9 (stretch)"' /etc/os-release || grep -iE 'flidas|xenail' /etc/os-release ; then
# fai on ubuntu only has official support using the universe repo, but newer
gpg --keyserver hkp://pool.sks-keyservers.net -a --recv-keys 2BF8D9FE074BCDE4; gpg -a --export 2BF8D9FE074BCDE4 | apt-key add -
cat >/etc/apt/sources.list.d/fai.list <<'EOF'
-deb http://fai-project.org/download stretch koeln
+deb https://fai-project.org/download stretch koeln
EOF
else
rm -f /etc/apt/sources.list.d/fai.list
if armhf; then
cd /srv/fai
rm -rf nfsroot
- tar Jxf /a/bin/fai-basefiles/basefiles/STRETCH64.tar.xz
+ tar Jxf $BASEFILE_DIR/STRETCH64.tar.xz
# background: Can't build the nfsroot on my arm system now. First,
# fai-make-nfsroot won't work out of the box. One idea to make it work
# is by installing qemu-user-static, then copying qemu-x86_64-static
else # not armhf
# note, this copies the -B arg to
# /srv/fai/nfsroot/var/tmp/base.tar.xz
- e fai-setup -evf -B /a/bin/fai-basefiles/basefiles/STRETCH64.tar.gz
+ e fai-setup -evf -B $BASEFILE_DIR/STRETCH64.tar.gz
# fai-setup expert mode avoids writing to /var/log/fai/variables
# at least config_src is needed for autodiscover
$sed '/^FAI_CONFIGDIR|^FAI_CONFIG_SRC|^LOGUSER/d' /var/log/fai/variables