#!/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" } USER_HOOKS_DIRECTORY="$(get_config '."user-hooks-directory"' "/usr/share/ublue-os/user-setup.hooks.d")" HOOKS_VERBOSE="${HOOKS_VERBOSE:-$(get_config '."verbose"' "false")}" if [ "${HOOKS_VERBOSE}" == "true" ] ; then set -x fi # Privileged setup can be called via user services if [ -d "$USER_HOOKS_DIRECTORY" ] ; then for script in $USER_HOOKS_DIRECTORY/* ; do bash $script done fi