85 lines
4.0 KiB
Bash
85 lines
4.0 KiB
Bash
#!/bin/bash
|
||
# SPDX-Version: 3.0
|
||
# SPDX-CreationInfo: 2025-05-05; WEIDNER, Marc S.; <msw@coresecret.dev>
|
||
# SPDX-ExternalRef: GIT https://git.coresecret.dev/msw/CISS.debian.live.builder.git
|
||
# SPDX-FileContributor: WEIDNER, Marc S.; Centurion Intelligence Consulting Agency
|
||
# SPDX-FileCopyrightText: 2024–2025; WEIDNER, Marc S.; <msw@coresecret.dev>
|
||
# SPDX-FileType: SOURCE
|
||
# SPDX-License-Identifier: EUPL-1.2 OR LicenseRef-CCLA-1.0
|
||
# SPDX-LicenseComment: This file is part of the CISS.debian.installer.secure framework.
|
||
# SPDX-PackageName: CISS.debian.live.builder
|
||
# SPDX-Security-Contact: security@coresecret.eu
|
||
|
||
# shellcheck disable=SC2155
|
||
declare -gr VAR_SYSTEM="$(uname -a)"
|
||
# shellcheck disable=SC2155
|
||
declare -gr VAR_ISO8601="$(date +%Y_%m_%d_%H_%M_%S)"
|
||
# shellcheck disable=SC2155
|
||
declare -gr VAR_KERNEL_INF="$(mktemp)"
|
||
# shellcheck disable=SC2155
|
||
declare -gr VAR_KERNEL_TMP="$(mktemp)"
|
||
# shellcheck disable=SC2155
|
||
declare -gr VAR_KERNEL_SRT="$(mktemp)"
|
||
# shellcheck disable=SC2155
|
||
declare -gr VAR_NOTES="$(mktemp)"
|
||
|
||
if "${VAR_EARLY_DEBUG}"; then
|
||
declare -gr LOG_VAR="/tmp/ciss_live_builder_$$_var.log"
|
||
touch "${LOG_VAR}" && chmod 0600 "${LOG_VAR}"
|
||
fi
|
||
|
||
declare -gr LOG_ERROR="/tmp/ciss_live_builder_$$_error.log"
|
||
touch "${LOG_ERROR}" && chmod 0600 "${LOG_ERROR}"
|
||
|
||
declare -g VAR_ARCHITECTURE=""
|
||
declare -g VAR_HANDLER_BUILD_DIR=""
|
||
declare -g VAR_HANDLER_CDI=""
|
||
declare -g VAR_HANDLER_DHCP=""
|
||
declare -g VAR_HANDLER_SPLASH=""
|
||
declare -g VAR_SSHPORT=""
|
||
declare -g VAR_SSHPUBKEY=""
|
||
declare -g VAR_SCRIPT_SUCCESS=""
|
||
declare -g VAR_HANDLER_PRIORITY=""
|
||
declare -g VAR_HANDLER_NETCUP_IPV6=""
|
||
declare -g VAR_HASHED_PWD=""
|
||
declare -g VAR_HANDLER_STA=""
|
||
declare -g VAR_REIONICE_CLASS=""
|
||
declare -g VAR_REIONICE_PRIORITY=""
|
||
declare -gr VAR_CHROOT_DIR="chroot"
|
||
declare -gr VAR_PACKAGES_FILE="chroot.packages.live"
|
||
declare -ga ARY_HANDLER_JUMPHOST=()
|
||
declare -ga ARY_HANDLER_NETCUP_IPV6=()
|
||
declare -ga ARY_HANDLER_JUMPHOST_UNIQUE=()
|
||
|
||
### Definition of error codes
|
||
declare -gir ERR_UNCRITICAL=127
|
||
declare -gir ERR_NOT_USER_0=128 # Not running as root
|
||
declare -gir ERR_FLOCK_WRTG=129 # Cannot open lockfile for writing
|
||
declare -gir ERR_FLOCK_COLL=130 # The Script is already running
|
||
declare -gir ERR_SPLASH_PNG=200 # --change-splash MUST be 'club' or 'hexagon'
|
||
declare -gir ERR_CONTROL_CT=201 # --control MUST be an integer between '1' and '65535'
|
||
declare -gir ERR_RENICE_PRI=202 # --renice-priority MUST an integer between '-19' and '19'
|
||
declare -gir ERR_REIONICE_P=203 # --reionice-priority no values provided.
|
||
declare -gir ERR_REIO_P_VAL=204 # --reionice-priority PRIORITY MUST be an integer between '0' and '7'
|
||
declare -gir ERR_REIO_C_VAL=205 # --reionice-priority CLASS MUST be an integer between '1' and '3'
|
||
declare -gir ERR_MISS_PWD_P=206 # --root-password-file missing password file path argument
|
||
declare -gir ERR_MISS_PWD_F=207 # --root-password-file password file does not exist
|
||
declare -gir ERR_OWNS_PWD_F=208 # --root-password-file failed to set owner root:root on the PWD file
|
||
declare -gir ERR_RGHT_PWD_F=209 # --root-password-file failed to set permissions 0400 on the PWD file
|
||
declare -gir ERR_PASS_LENGH=210 # --root-password-file password MUST be between 20 and 64 characters
|
||
declare -gir ERR_PASS_PLICY=211 # --root-password-file password MUST NOT contain double quotes
|
||
declare -gir ERR__SSH__PORT=212 # --ssh-port MUST be an integer between '1' and '65535'
|
||
declare -gir ERR_ARG_MSMTCH=213 # Wrong Number of optional Arguments provided
|
||
declare -gir ERR_NOTABSPATH=252 # Not an absolute path
|
||
declare -gir ERR_INVLD_CHAR=253 # Invalid Character
|
||
declare -gir ERR_UNBOUNDVAR=254 # Unbound Variable
|
||
declare -gir ERR_UNSPPTBASH=255 # Unsupported Bash
|
||
|
||
### Definition of error trap vars
|
||
declare -g ERRCODE="" # = $? = $1 = ERRCODE
|
||
declare -g ERRSCRT="" # = ${BASH_SOURCE[0]} = $2 = ERRSCRT
|
||
declare -g ERRLINE="" # = ${LINENO} = $3 = ERRLINE
|
||
declare -g ERRFUNC="" # = ${FUNCNAME[0]:-main} = $4 = ERRFUNC
|
||
declare -g ERRCMMD="" # = ${$BASH_COMMAND} = $5 = ERRCMMD
|
||
# vim: number et ts=2 sw=2 sts=2 ai tw=128 ft=sh
|