update t440p script
This commit is contained in:
@@ -0,0 +1,98 @@
|
||||
#!/bin/sh
|
||||
# Utility functions for coreboot-t440p interactive script
|
||||
|
||||
# Colors
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
PURPLE='\033[0;35m'
|
||||
CYAN='\033[0;36m'
|
||||
BOLD='\033[1m'
|
||||
DIM='\033[2m'
|
||||
NC='\033[0m'
|
||||
|
||||
# Logging
|
||||
info() { printf "${BLUE}[*]${NC} %s\n" "$1"; }
|
||||
warn() { printf "${YELLOW}[!]${NC} %s\n" "$1"; }
|
||||
error() { printf "${RED}[x]${NC} %s\n" "$1"; }
|
||||
success() { printf "${GREEN}[+]${NC} %s\n" "$1"; }
|
||||
|
||||
# Print a section header
|
||||
section() {
|
||||
printf "\n${BOLD}${PURPLE}--- %s ---${NC}\n\n" "$1"
|
||||
}
|
||||
|
||||
# Prompt user to continue or quit
|
||||
prompt_continue() {
|
||||
printf "\n${CYAN}Press Enter to continue (or 'q' to quit)...${NC} "
|
||||
read -r _response
|
||||
case "$_response" in
|
||||
q|Q) echo "Exiting."; exit 0 ;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Prompt yes/no, default no
|
||||
prompt_yes_no() {
|
||||
printf "${CYAN}%s [y/N]:${NC} " "$1"
|
||||
read -r _response
|
||||
case "$_response" in
|
||||
[yY]|[yY][eE][sS]) return 0 ;;
|
||||
*) return 1 ;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Prompt yes/no, default yes
|
||||
prompt_yes_default() {
|
||||
printf "${CYAN}%s [Y/n]:${NC} " "$1"
|
||||
read -r _response
|
||||
case "$_response" in
|
||||
[nN]|[nN][oO]) return 1 ;;
|
||||
*) return 0 ;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Prompt for a value with a default
|
||||
prompt_value() {
|
||||
printf "${CYAN}%s [%s]:${NC} " "$1" "$2"
|
||||
read -r _response
|
||||
if [ -z "$_response" ]; then
|
||||
echo "$2"
|
||||
else
|
||||
echo "$_response"
|
||||
fi
|
||||
}
|
||||
|
||||
# Check if a command is available
|
||||
check_command() {
|
||||
command -v "$1" >/dev/null 2>&1
|
||||
}
|
||||
|
||||
# Run a command with display
|
||||
run_cmd() {
|
||||
printf " ${DIM}\$ %s${NC}\n" "$1"
|
||||
eval "$1"
|
||||
_status=$?
|
||||
if [ $_status -ne 0 ]; then
|
||||
error "Command failed (exit code $_status)"
|
||||
fi
|
||||
return $_status
|
||||
}
|
||||
|
||||
# Handle step failure - ask user how to proceed
|
||||
handle_failure() {
|
||||
echo ""
|
||||
error "Step failed: $1"
|
||||
echo ""
|
||||
echo " 1) Retry this step"
|
||||
echo " 2) Skip and continue"
|
||||
echo " 3) Quit"
|
||||
echo ""
|
||||
printf "${CYAN}Choice [1-3]:${NC} "
|
||||
read -r _choice
|
||||
case "$_choice" in
|
||||
1) return 1 ;; # Signal retry
|
||||
2) return 0 ;; # Signal skip
|
||||
*) exit 1 ;;
|
||||
esac
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user