void-bash-installer/main.sh

49 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
dir="$(pwd)"
wrksrc="${dir}/tmp"
step="${dir}/step"
functions="${dir}/functions"
vars="${wrksrc}/vars"
dest="/mnt"
files="${dir}/files"
rm -rf "${vars}"
mkdir -p "${wrksrc}" "${vars}" "${dest}"
declare -A cfg=()
declare -A users=()
#set -x
remote="https://alpha.de.repo.voidlinux.org/current"
#remote="https://void.cijber.net/current/"
source "${functions}"/functions
source "${dir}"/config
umounter "${dest}"
export run="config"
for i in $(find "${step}1" -mindepth 1 -maxdepth 1 -type f | sort -n ); do
test -f "${i}" && source "${i}"
done
export run="postconfig"
for i in $(find "${step}2" -mindepth 1 -maxdepth 1 -type f | sort -n ); do
test -f "${i}" && source "${i}"
done
mkdir -p "${dest}"/tmp/installer/tmp "${dest}"/etc
cp -rf /etc/resolv.conf "${dest}"/etc
cp -rf "${vars}" "${dest}"/tmp/installer/tmp
cp -rf "${step}3" "${dest}"/tmp/installer
cp -rf "${step}4" "${dest}"/tmp/installer
cp -rf "${files}" "${dest}"/tmp/installer
cp -rf "${functions}" "${dest}"/tmp/installer
cp -rf ./run_in_chroot.sh "${dest}"/tmp/installer
for i in $(seq 1 "${users[amount]}"); do
pw+=( "${users[pw$i]}" )
done
chroot "${dest}" "/tmp/installer/run_in_chroot.sh" "${cfg[diskpw]}" "${pw[@]}"
umounter "${dest}"