#!/bin/bash # SPDX-FileCopyrightText: 2024 3mdeb # # SPDX-License-Identifier: Apache-2.0 SBIN_DIR="/usr/sbin" FUM_EFIVAR="/sys/firmware/efi/efivars/FirmwareUpdateMode-d15b327e-ff2d-4fc1-abf6-c12bd08c1359" export DTS_FUNCS="$SBIN_DIR/dts-functions.sh" export DTS_ENV="$SBIN_DIR/dts-environment.sh" export DTS_SUBS="$SBIN_DIR/dts-subscription.sh" export DTS_HAL="$SBIN_DIR/dts-hal.sh" export DTS_MOCK_COMMON="$SBIN_DIR/common-mock-func.sh" export BASH_ENV="$SBIN_DIR/logging" export TMP_LOG_DIR="/tmp/logs" export ERR_LOG_FILE_REALPATH export DTS_LOG_FILE export DTS_VERBOSE_LOG_FILE export ERR_LOG_FILE export SHELLOPTS mkdir -p "$TMP_LOG_DIR" # $ERR_LOG_FILE is fd that can only be written to: '>()'. To copy logs # we need underlying file that can be copied ERR_LOG_FILE_REALPATH="/var/local/dts-err_$(basename "$(tty)").log" DTS_LOG_FILE="$TMP_LOG_DIR/dts_$(basename "$(tty)").log" DTS_VERBOSE_LOG_FILE="$TMP_LOG_DIR/dts-verbose_$(basename "$(tty)").log" # shellcheck source=./logging source "$BASH_ENV" start_trace_logging start_logging if [ -z "$ERR_LOG_FILE" ]; then # pass everything written to $ERR_LOG_FILE to logger function and save it's # output to $ERR_LOG_FILE_REALPATH file exec {ERR_LOG_FILE}> >(logger >>"$ERR_LOG_FILE_REALPATH") ERR_LOG_FILE="/proc/$$/fd/$ERR_LOG_FILE" fi # shellcheck source=../include/dts-environment.sh source $DTS_ENV # shellcheck source=../include/dts-functions.sh source $DTS_FUNCS # shellcheck source=../include/hal/dts-hal.sh source $DTS_HAL mkdir -p "$TEMP_DIR" if [ -f $FUM_EFIVAR ]; then $SBIN_DIR/dasharo-deploy update fum else $SBIN_DIR/dts fi