#!/bin/bash dir="$(pwd)" wrksrc="${dir}/tmp" functions="${dir}/functions" modules="${dir}/modules" config_mods="${modules}/config" install_mods="${modules}/install" chroot_mods="${modules}/chroot" vars="${wrksrc}/vars" dest="${wrksrc}/dest" 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 umounter "${dest}" set -x export run="config" for i in $(find "${modules}" -mindepth 1 -maxdepth 1 -type d | sort -n ); do test -f "${i}"/config && source "${i}"/config done export run="postconfig" for i in $(find "${modules}" -mindepth 1 -maxdepth 1 -type d | sort -n ); do test -f "${i}"/postconfig && source "${i}"/postconfig done mkdir -p "${dest}"/tmp/installer/tmp "${dest}"/etc cp -rf /etc/resolv.conf "${dest}"/etc cp -rf "${vars}" "${dest}"/tmp/installer/tmp #rm -rf "${vars}" cp -rf "${modules}" "${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}"