50 lines
1.3 KiB
Bash
Executable File
50 lines
1.3 KiB
Bash
Executable File
#!/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"
|
|
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
|
|
umounter "${dest}"
|
|
|
|
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 "${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}"
|