#!/usr/bin/bash get_config() { SETUP_CONFIG_FILE="${SETUP_CONFIG_FILE:-/etc/ublue-os/setup.json}" QUERY="$1" FALLBACK="$2" shift shift OUTPUT="$(jq -r "$QUERY" "$SETUP_CONFIG_FILE" 2>/dev/null || echo "$FALLBACK")" if [ "$OUTPUT" == "null" ] ; then echo "$FALLBACK" return fi echo "$OUTPUT" } SYSTEM_HOOKS_DIRECTORY="$(get_config '."system-hooks-directory"' "/usr/share/ublue-os/system-setup.hooks.d")" HOOKS_VERBOSE="${HOOKS_VERBOSE:-$(get_config '."verbose"' "false")}" if [ "${HOOKS_VERBOSE}" == "true" ] ; then set -x fi if [ -d "${SYSTEM_HOOKS_DIRECTORY}" ] ; then for script in $SYSTEM_HOOKS_DIRECTORY/* ; do bash $script done fi