diff --git a/lib/default.nix b/lib/default.nix index b303716..3f4bc45 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -48,29 +48,7 @@ in { forSystems = systems: nixpkgs.lib.genAttrs systems; forAllSystems = nixpkgs.lib.genAttrs commonSystems; - shellModules.logs = '' - RED='\033[0;31m' - GREEN='\033[0;32m' - YELLOW='\033[1;33m' - BLUE='\033[0;34m' - PURPLE='\033[0;35m' - MAGENTA="$PURPLE" - CYAN='\033[0;36m' - WHITE='\033[1;37m' - NC='\033[0m' # No Color - - LOG_PATH="/var/log/hectic/activation.log" - - mkdir -p "$(dirname "$LOG_PATH")" - - log_info() { text=$1; shift; printf "%b ''${text}%b\n" "$BLUE" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } - log_success() { text=$1; shift; printf "%b ''${text}%b\n" "$GREEN" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } - log_warning() { text=$1; shift; printf "%b ''${text}%b\n" "$YELLOW" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } - log_error() { text=$1; shift; printf "%b ''${text}%b\n" "$RED" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } - log_step() { text=$1; shift; printf "%b ''${text}%b\n" "$PURPLE" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } - - log_header() { printf "\n%b=== %s ===%b\n" "$WHITE" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } - ''; + shellModules.logs = builtins.readFile ./shell/logs.sh; sharedShellAliases = { jc = ''journalctl''; diff --git a/lib/shell/logs.sh b/lib/shell/logs.sh new file mode 100644 index 0000000..0d63a79 --- /dev/null +++ b/lib/shell/logs.sh @@ -0,0 +1,23 @@ +RED='\033[0;31m' +GREEN='\033[0;32m' +YELLOW='\033[1;33m' +BLUE='\033[0;34m' +PURPLE='\033[0;35m' +MAGENTA="$PURPLE" +CYAN='\033[0;36m' +WHITE='\033[1;37m' +NC='\033[0m' # No Color + +LOG_PATH="/var/log/hectic/activation.log" + +if ! mkdir -p "$(dirname "$LOG_PATH")" 2>/dev/null; then + LOG_PATH="/dev/null" +fi + +log_info() { text=$1; shift; printf "%b ''${text}%b\n" "$BLUE" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } +log_success() { text=$1; shift; printf "%b ''${text}%b\n" "$GREEN" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } +log_warning() { text=$1; shift; printf "%b ''${text}%b\n" "$YELLOW" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } +log_error() { text=$1; shift; printf "%b ''${text}%b\n" "$RED" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } +log_step() { text=$1; shift; printf "%b ''${text}%b\n" "$PURPLE" "$@" "$NC" | tee -a "$LOG_PATH" >&2; } + +log_header() { printf "\n%b=== %s ===%b\n" "$WHITE" "$@" "$NC" | tee -a "$LOG_PATH" >&2; }