V8.03.920.2025.08.07
All checks were successful
🛡️ Retrieve DNSSEC status of coresecret.dev. / 🛡️ Retrieve DNSSEC status of coresecret.dev. (push) Successful in 53s
🛡️ Shell Script Linting / 🛡️ Shell Script Linting (push) Successful in 1m3s
🔐 Generating a Private Live ISO FLV 0. / 🔐 Generating a Private Live ISO FLV 0. (push) Successful in 1h1m12s
🔐 Generating a Private Live ISO FLV 1. / 🔐 Generating a Private Live ISO FLV 1. (push) Successful in 1h0m1s
💙 Generating a PUBLIC Live ISO. / 💙 Generating a PUBLIC Live ISO. (push) Successful in 58m31s
All checks were successful
🛡️ Retrieve DNSSEC status of coresecret.dev. / 🛡️ Retrieve DNSSEC status of coresecret.dev. (push) Successful in 53s
🛡️ Shell Script Linting / 🛡️ Shell Script Linting (push) Successful in 1m3s
🔐 Generating a Private Live ISO FLV 0. / 🔐 Generating a Private Live ISO FLV 0. (push) Successful in 1h1m12s
🔐 Generating a Private Live ISO FLV 1. / 🔐 Generating a Private Live ISO FLV 1. (push) Successful in 1h0m1s
💙 Generating a PUBLIC Live ISO. / 💙 Generating a PUBLIC Live ISO. (push) Successful in 58m31s
Signed-off-by: Marc S. Weidner <msw@coresecret.dev>
This commit is contained in:
@@ -13,34 +13,71 @@
|
||||
### Contributions so far see ./docs/CREDITS.md
|
||||
|
||||
### WHY BASH?
|
||||
# Ease of installation.
|
||||
# No compiling or installing gems, CPAN modules, pip packages, etc.
|
||||
# Simple to use and read. Clear syntax and straightforward output interpretation.
|
||||
# Built-in power.
|
||||
# Pattern matching, line processing, and regular expression support are available natively,
|
||||
# no external binaries required.
|
||||
# Cross-platform consistency.
|
||||
# '/bin/bash' is the default shell on most Linux distributions, ensuring scripts run unmodified across systems.
|
||||
# macOS compatibility.
|
||||
# Since macOS Catalina (10.15), the default login shell has been zsh, but bash remains available at '/bin/bash'.
|
||||
# Windows support.
|
||||
# You can use bash via WSL, MSYS2, or Cygwin on Windows systems.
|
||||
# Ease of installation. No compiling or installing gems, CPAN modules, pip packages, etc. Simple to use and read. Clear syntax
|
||||
# and straightforward output interpretation. Built-in power. Pattern matching, line processing, and regular expression support
|
||||
# are available natively, no external binaries required. Cross-platform consistency. '/bin/bash' is the default shell on most
|
||||
# Linux distributions, ensuring scripts run unmodified across systems. macOS compatibility. Since macOS Catalina (10.15), the
|
||||
# default login shell has been zsh, but bash remains available at '/bin/bash'. Windows support. You can use bash via WSL, MSYS2,
|
||||
# or Cygwin on Windows systems.
|
||||
|
||||
### Preliminary checks
|
||||
### PRELIMINARY CHECKS.
|
||||
### No ash, dash, ksh, sh.
|
||||
# shellcheck disable=2292
|
||||
[ -z "${BASH_VERSINFO[0]}" ] && {
|
||||
. ./var/global.var.sh; printf "\e[91m❌ Please make sure you are using 'bash'! Bye... \e[0m\n" >&2; exit "${ERR_UNSPPTBASH}"; }
|
||||
. ./var/global.var.sh
|
||||
printf "\e[91m❌ Please make sure you are using 'bash'! Bye... \e[0m\n" >&2
|
||||
exit "${ERR_UNSPPTBASH}"
|
||||
}
|
||||
|
||||
### No zsh.
|
||||
[[ -n "${ZSH_VERSION:-}" ]] && {
|
||||
. ./var/global.var.sh
|
||||
printf "\e[91m❌ Please make sure you are using 'bash'! Bye... \e[0m\n" >&2
|
||||
exit "${ERR_UNSPPTBASH}"
|
||||
}
|
||||
|
||||
### Not root.
|
||||
[[ ${EUID} -ne 0 ]] && {
|
||||
. ./var/global.var.sh; printf "\e[91m❌ Please make sure you are 'root'! Bye... \e[0m\n" >&2; exit "${ERR_NOT_USER_0}"; }
|
||||
. ./var/global.var.sh
|
||||
printf "\e[91m❌ Please make sure you are 'root'! Bye... \e[0m\n" >&2
|
||||
exit "${ERR_NOT_USER_0}"
|
||||
}
|
||||
|
||||
### Not called by sh.
|
||||
# shellcheck disable=2312
|
||||
[[ $(kill -l | grep -c SIG) -eq 0 ]] && {
|
||||
. ./var/global.var.sh; printf "\e[91m❌ Please make sure you are calling the script without leading 'sh'! Bye... \e[0m\n" >&2; exit "${ERR_UNSPPTBASH}"; }
|
||||
. ./var/global.var.sh
|
||||
printf "\e[91m❌ Please make sure you are calling the script without leading 'sh'! Bye... \e[0m\n" >&2
|
||||
exit "${ERR_UNSPPTBASH}"
|
||||
}
|
||||
|
||||
### Not sourced.
|
||||
[[ "${BASH_SOURCE[0]}" != "$0" ]] && {
|
||||
. ./var/global.var.sh
|
||||
printf "\e[91m❌ This script must be executed, not sourced. Please run '%s' directly! Bye... \e[0m\n" "$0" >&2
|
||||
exit "${ERR_UNSPPTBASH}"
|
||||
}
|
||||
|
||||
### Minimum Bash version 5.
|
||||
[[ ${BASH_VERSINFO[0]} -lt 5 ]] && {
|
||||
. ./var/global.var.sh; printf "\e[91m❌ Minimum requirement is bash 5.1. You are using '%s'! Bye... \e[0m\n" "${BASH_VERSION}" >&2; exit "${ERR_UNSPPTBASH}"; }
|
||||
. ./var/global.var.sh
|
||||
printf "\e[91m❌ Minimum requirement is bash 5.1. You are using '%s'! Bye... \e[0m\n" "${BASH_VERSION}" >&2
|
||||
exit "${ERR_UNSPPTBASH}"
|
||||
}
|
||||
|
||||
### Minimum Bash version 5.1.
|
||||
[[ ${BASH_VERSINFO[0]} -le 5 ]] && [[ ${BASH_VERSINFO[1]} -le 1 ]] && {
|
||||
. ./var/global.var.sh; printf "\e[91m❌ Minimum requirement is bash 5.1. You are using '%s'! Bye... \e[0m\n" "${BASH_VERSION}" >&2; exit "${ERR_UNSPPTBASH}"; }
|
||||
. ./var/global.var.sh
|
||||
printf "\e[91m❌ Minimum requirement is bash 5.1. You are using '%s'! Bye... \e[0m\n" "${BASH_VERSION}" >&2
|
||||
exit "${ERR_UNSPPTBASH}"
|
||||
}
|
||||
|
||||
### No arguments.
|
||||
[[ ${#} -eq 0 ]] && {
|
||||
. ./lib/lib_usage.sh; usage; exit 1; }
|
||||
. ./lib/lib_usage.sh
|
||||
usage
|
||||
exit 1
|
||||
}
|
||||
|
||||
### SOURCING MUST SET EARLY VARIABLES, GUARD_SOURCING(), CHECK_GIT()
|
||||
. ./var/early.var.sh
|
||||
@@ -49,12 +86,12 @@
|
||||
|
||||
### CHECK FOR CONTACT, HELP, VERSION STRING, AND XTRACE DEBUG
|
||||
for arg in "$@"; do case "${arg,,}" in -c|--contact) . ./lib/lib_contact.sh; contact; exit 0;; esac; done
|
||||
for arg in "$@"; do case "${arg,,}" in -h|--help) . ./lib/lib_usage.sh; usage; exit 0;; esac; done
|
||||
for arg in "$@"; do case "${arg,,}" in -h|--help) . ./lib/lib_usage.sh ; usage ; exit 0;; esac; done
|
||||
for arg in "$@"; do case "${arg,,}" in -v|--version) . ./lib/lib_version.sh; version; exit 0;; esac; done
|
||||
|
||||
### ALL CHECKS DONE. READY TO START THE SCRIPT
|
||||
check_git
|
||||
for arg in "$@"; do case "${arg,,}" in -d|--debug) . ./meta_sources_debug.sh; debugger "${@}";; esac; done
|
||||
for arg in "$@"; do case "${arg,,}" in -d|--debug) . ./meta_sources_debug.sh; debugger "${@}";; esac; done
|
||||
declare -gx VAR_SETUP="true"
|
||||
|
||||
### SOURCING VARIABLES
|
||||
|
||||
Reference in New Issue
Block a user