[ "${ENV}" ] || export ENV="/etc/shell/main.sh"

main_env_root() {
	dirname "${ENV}"
}

main_link_bashrc() {
	local file="/etc/bash.bashrc"
	rm --force "${file}"
	ln --symbolic "${MAIN_USERS_FILE}" "${file}"
}

# import modules
main_import_modules() {
	local file="${1}"
	if [ -f "${file}" ]; then
		local count ifs module modules path root
		path="$(realpath --canonicalize-existing "${file}")"
		root="$(dirname "${path}")"
		modules="$(find "${root}" -type "f" -name "*.sh" -printf "%P
" | sort)"
		ifs="${IFS}"
		IFS="
"
		count=0
		echo
		echo ". ${root}"
		for module in ${modules}; do
			count=$((count + 1))
			printf "%02d" "${count}"
			echo " ${module%.sh}"
			module="${root}/${module}"
			if [ "${module}" != "${path}" ]; then
				. "${module}"
			fi
		done
		IFS="${ifs}"
		return 0
	else
		log_fatal "No file: ${file}"
		return 1
	fi
}

main_import_modules "${ENV}"