From b15d1e61cff3cbd9543f323c3074ff20244532b8 Mon Sep 17 00:00:00 2001 From: Salt Date: Thu, 27 Sep 2018 20:23:15 -0500 Subject: [PATCH] dtfscript: Implement service logging coloration --- .config/dtfscripts/common_service.sh | 16 +++++++++++++--- .config/dtfscripts/services/bspwm_sxhkd.dtf | 2 +- .config/dtfscripts/services/compton.dtf | 2 +- .config/dtfscripts/services/conky.dtf | 2 +- .config/dtfscripts/services/polybar.dtf | 8 ++++---- 5 files changed, 20 insertions(+), 10 deletions(-) diff --git a/.config/dtfscripts/common_service.sh b/.config/dtfscripts/common_service.sh index 6e0549d7..5cf9335b 100755 --- a/.config/dtfscripts/common_service.sh +++ b/.config/dtfscripts/common_service.sh @@ -14,17 +14,27 @@ service_flags="" # Basic logging service. Do not override unless necessary function svc_log() { if [ -z ${1+x} ]; then return 1; fi - dtf_log "$service_name: $1" + out=1 + if ! [ -z ${2+x} ]; then out="$2"; fi + col_reset="\e[0m" + col_svcname="\e[94m" + col_message="\e[39m" + if ! [ "$out" -eq "1" ]; then col_message="\e[31m"; fi + if [ "$out" -eq "0" ]; then + out=1 + col_message="\e[37m" + fi + dtf_log "${col_svcname}${service_name}${col_reset}: ${col_message}${1}${col_reset}" >&${out} } # Basic pre-start checks. Stick extra checks in prestart-extra function prestart() { if pgrep $service_process > /dev/null 2>&1; then - svc_log "Already running" + svc_log "Already running" 0 return 1 fi if ! which $service_process > /dev/null 2>&1; then - svc_log "Could not find associated binary: \"${service_process}\"" + svc_log "Could not find associated binary: \"${service_process}\"" 2 return 1 fi return 0 diff --git a/.config/dtfscripts/services/bspwm_sxhkd.dtf b/.config/dtfscripts/services/bspwm_sxhkd.dtf index 39b81472..6b44da4d 100755 --- a/.config/dtfscripts/services/bspwm_sxhkd.dtf +++ b/.config/dtfscripts/services/bspwm_sxhkd.dtf @@ -11,7 +11,7 @@ service_process="sxhkd" function prestart-extra() { if ! pgrep bspwm > /dev/null 2>&1; then - svc_log "Not under bspwm" + svc_log "Not under bspwm" 2 return 1 fi return 0 diff --git a/.config/dtfscripts/services/compton.dtf b/.config/dtfscripts/services/compton.dtf index 8c1c3232..5fa5730f 100755 --- a/.config/dtfscripts/services/compton.dtf +++ b/.config/dtfscripts/services/compton.dtf @@ -11,7 +11,7 @@ service_process="compton" function prestart-extra() { if [[ "$HOST" == "vm-*" ]]; then - svc_log "Will not start: in a VM" + svc_log "Will not start: in a VM" 2 return 1 fi return 0 diff --git a/.config/dtfscripts/services/conky.dtf b/.config/dtfscripts/services/conky.dtf index 45d7d94e..3da8a0d9 100755 --- a/.config/dtfscripts/services/conky.dtf +++ b/.config/dtfscripts/services/conky.dtf @@ -22,7 +22,7 @@ function start-extra() { if xprop -name "Conky" > /dev/null 2>&1; then break; fi sleep 0.01 if (( $i > 99 )); then - svc_log "Conky may spawn behind the current desktop" + svc_log "Conky may spawn behind the current desktop" 2 break fi done diff --git a/.config/dtfscripts/services/polybar.dtf b/.config/dtfscripts/services/polybar.dtf index 8ee8fac5..c1a13994 100755 --- a/.config/dtfscripts/services/polybar.dtf +++ b/.config/dtfscripts/services/polybar.dtf @@ -20,8 +20,8 @@ function start() { # Spawn bars on the primary monitor export PB_MONITOR=$(xrandr -q | awk '/primary/{print $1}') svc_log "Starting primary on monitor $PB_MONITOR" - polybar -r primary& > /dev/null 2>&1 - polybar -r primary-2& > /dev/null 2>&1 + polybar -r primary& >/dev/null 2>&1 + polybar -r primary-2& >/dev/null 2>&1 # Spawn more for each secondary export secondary_monitors=$(xrandr -q | grep ' connected' | grep -v 'primary' | awk '{print $1}') @@ -31,8 +31,8 @@ function start() { for monitor in $secondary_monitors; do svc_log "Starting secondary on monitor $monitor" PB_MONITOR=$monitor - polybar -r secondary& > /dev/null 2>&1 - polybar -r secondary-2& > /dev/null 2>&1 + polybar -r secondary& >/dev/null 2>&1 + polybar -r secondary-2& >/dev/null 2>&1 done return 0 }