static usb ethnet addresses
[automated-distro-installer] / arch-init-remote
index 4210b5f8ce86f83ba73924372147232302a5e3aa..d8e4e29732b994178d7c34ad76faaa523005982c 100755 (executable)
@@ -1,16 +1,31 @@
-#!/bin/bash -l
+#!/bin/bash
+# Copyright (C) 2019 Ian Kelling
+# SPDX-License-Identifier: AGPL-3.0-or-later
+if [[ -s ~/.bashrc ]];then . ~/.bashrc;fi
 
 set -x
 
 set -eE -o pipefail
 trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
 
+usage() {
+    cat <<EOF
+Usage: ${0##*/} [-h|--help] HOSTNAME
+install arch after it's been booted into it's setup env
+EOF
+    exit $1
+}
+case $1 in
+    -h|--help) usage ;;
+esac
+
 if [[ ! $1 ]]; then
     echo "error: expect a hostname in \$1 "
-    exit 1
+    usage 1
 fi
 host=$1
 
+
 scp -o StrictHostKeyChecking=false -o UserKnownHostsFile=/dev/null \
     /p/c/machine_specific/$host/filesystem/etc/ssh/* root@$host:/etc/ssh
 
@@ -18,27 +33,19 @@ if [[ -e  /var/cache/pacman/pkg ]]; then
     darkhttpd /var/cache/pacman/pkg &
     mirror=http://$HOSTNAME:8080
 fi
-faid=/a/bin/fai
-fai_files=(
-    distro-install-common
-    hooks/partition.DEFAULT
-    class/50-host-classes
-
-)
-sudo scp -r /a/bin/fai/arch-init{,-chroot} \
-     /a/bin/fai/encrypt \
-     ${fai_files[@]/#//a/bin/fai/fai/config/} \
-     /a/bin/devbyid \
-     /q/root/luks /q/root/shadow root@$host:
+
+rsync -rlpthvi --relative /a/bin/fai/ root@$host:/
+rsync /a/bin/fai/ root@$host:/a/bin/fai/
+sudo scp -r /q/root/luks /q/root/shadow root@$host:
 # creating shadow file string:
 # on debian, you can use mkpasswd -m sha-512 to generate a pass.
 # arch doesn't have this program. instead, you can do passwd,
 # and extract it from the shadow file.
-ssh root@$host bash -x ./arch-init $host $mirror
+ssh root@$host bash -x /a/bin/fai/arch-init $host $mirror
 
-#ssh root@$host reboot now || [[ $? == 255 ]]
+ssh root@$host reboot || [[ $? == 255 ]]
 
-# next up is:
+# next up is sync data, then
 # ssh $host /a/bin/distro-begin
 
 if [[ -e  /var/cache/pacman/pkg ]]; then