feat(legacy): +writeDash +helpers
This commit is contained in:
3
legacy/helper/default.nix
Normal file
3
legacy/helper/default.nix
Normal file
@@ -0,0 +1,3 @@
|
||||
{ callPackage }: {
|
||||
posix-shell = callPackage ./posix-shell {};
|
||||
}
|
||||
54
legacy/helper/posix-shell/colors.sh
Normal file
54
legacy/helper/posix-shell/colors.sh
Normal file
@@ -0,0 +1,54 @@
|
||||
NC='\033[0m'
|
||||
|
||||
# Regular text colors
|
||||
BLACK='\033[30m'
|
||||
RED='\033[31m'
|
||||
GREEN='\033[32m'
|
||||
YELLOW='\033[33m'
|
||||
BLUE='\033[34m'
|
||||
MAGENTA='\033[35m'
|
||||
CYAN='\033[36m'
|
||||
WHITE='\033[37m'
|
||||
|
||||
# Bright text colors
|
||||
BBLACK='\033[90m'
|
||||
BRED='\033[91m'
|
||||
BGREEN='\033[92m'
|
||||
BYELLOW='\033[93m'
|
||||
BBLUE='\033[94m'
|
||||
BMAGENTA='\033[95m'
|
||||
BCYAN='\033[96m'
|
||||
BWHITE='\033[97m'
|
||||
|
||||
# Background colors
|
||||
BG_BLACK='\033[40m'
|
||||
BG_RED='\033[41m'
|
||||
BG_GREEN='\033[42m'
|
||||
BG_YELLOW='\033[43m'
|
||||
BG_BLUE='\033[44m'
|
||||
BG_MAGENTA='\033[45m'
|
||||
BG_CYAN='\033[46m'
|
||||
BG_WHITE='\033[47m'
|
||||
|
||||
# Bright background colors
|
||||
BG_BBLACK='\033[100m'
|
||||
BG_BRED='\033[101m'
|
||||
BG_BGREEN='\033[102m'
|
||||
BG_BYELLOW='\033[103m'
|
||||
BG_BBLUE='\033[104m'
|
||||
BG_BMAGENTA='\033[105m'
|
||||
BG_BCYAN='\033[106m'
|
||||
BG_BWHITE='\033[107m'
|
||||
|
||||
# Text effects
|
||||
RESET='\033[0m'
|
||||
BOLD='\033[1m'
|
||||
DIM='\033[2m'
|
||||
ITALIC='\033[3m'
|
||||
UNDERLINE='\033[4m'
|
||||
BLINK='\033[5m'
|
||||
INVERSE='\033[7m'
|
||||
HIDDEN='\033[8m'
|
||||
STRIKE='\033[9m'
|
||||
|
||||
: "$NC" "$BLACK" "$RED" "$GREEN" "$YELLOW" "$BLUE" "$MAGENTA" "$CYAN" "$WHITE" "$BBLACK" "$BRED" "$BGREEN" "$BYELLOW" "$BBLUE" "$BMAGENTA" "$BCYAN" "$BWHITE" "$BG_BLACK" "$BG_RED" "$BG_GREEN" "$BG_YELLOW" "$BG_BLUE" "$BG_MAGENTA" "$BG_CYAN" "$BG_WHITE" "$BG_BBLACK" "$BG_BRED" "$BG_BGREEN" "$BG_BYELLOW" "$BG_BBLUE" "$BG_BMAGENTA" "$BG_BCYAN" "$BG_BWHITE" "$RESET" "$BOLD" "$DIM" "$ITALIC" "$UNDERLINE" "$BLINK" "$INVERSE" "$HIDDEN" "$STRIKE"
|
||||
15
legacy/helper/posix-shell/default.nix
Normal file
15
legacy/helper/posix-shell/default.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{ dash, hectic }: let
|
||||
shell = "${dash}/bin/dash";
|
||||
bashOptions = [
|
||||
"errexit"
|
||||
"nounset"
|
||||
];
|
||||
in {
|
||||
log = hectic.writeDash "log.sh" ''
|
||||
${builtins.readFile ./colors.sh}
|
||||
${builtins.readFile ./log.sh}
|
||||
'';
|
||||
colors = hectic.writeDash "colors.sh" ''
|
||||
${builtins.readFile ./colors.sh}
|
||||
'';
|
||||
}
|
||||
21
legacy/helper/posix-shell/log.sh
Normal file
21
legacy/helper/posix-shell/log.sh
Normal file
@@ -0,0 +1,21 @@
|
||||
#!/bin/dash
|
||||
|
||||
log() {
|
||||
level="${1:?}"; shift
|
||||
case "$level" in
|
||||
trace) color="$MAGENTA" ;;
|
||||
debug) color="$BLUE" ;;
|
||||
info) color="$GREEN" ;;
|
||||
notice) color="$CYAN" ;;
|
||||
warn) color="$YELLOW" ;;
|
||||
error) color="$RED" ;;
|
||||
*) color="$WHITE" ;;
|
||||
esac
|
||||
|
||||
|
||||
|
||||
# shellcheck disable=SC1003
|
||||
fmt="$(printf "%s" "${1:?}" | sed 's/\\033\[0m/''\'"$color"'/g')"
|
||||
shift
|
||||
printf "%b\n" "$color$fmt$NC" "$@" >&2
|
||||
}
|
||||
Reference in New Issue
Block a user