From 51cb026d70d83b7e301011168e6af46e3fbaa653 Mon Sep 17 00:00:00 2001 From: Martin Sekera Date: Sun, 21 May 2023 13:06:52 +0200 Subject: [PATCH] prompt: don't call the python thing if sysload is high --- lib/prompt-init | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/prompt-init b/lib/prompt-init index d81358a..407b715 100755 --- a/lib/prompt-init +++ b/lib/prompt-init @@ -30,9 +30,19 @@ function __over_prompt_preexec { OVER_PROMPT_CMD_START=${EPOCHSECONDS} } +function __over_prompt_sysload { + LOADAVG=($(< /proc/loadavg)) + echo $(($LOADAVG[1] / $(nproc))) +} + function __over_prompt_precmd { __over_prompt_set_title "${PWD//*\//} (${PWD})" - python3 /usr/share/over-env/prompt.py "${COLUMNS}" "${PWD}" "${OVER_PROMPT_LAST_REFRESH}" "${OVER_PROMPT_SYSLOAD_WARN:=1.25}" "${OVER_PROMPT_SYSLOAD_YELL:=3.0}" "${OVER_PROMPT_FREESPACE_WARN:=0.15}" "${OVER_PROMPT_FREESPACE_YELL:=0.05}" "${OVER_PROMPT_CMD_START}" + LOAD_NORM=$(__over_prompt_sysload) + if [[ $LOAD_NORM -lt 2 ]]; then + python3 /usr/share/over-env/prompt.py "${COLUMNS}" "${PWD}" "${OVER_PROMPT_LAST_REFRESH}" "${OVER_PROMPT_SYSLOAD_WARN:=1.25}" "${OVER_PROMPT_SYSLOAD_YELL:=3.0}" "${OVER_PROMPT_FREESPACE_WARN:=0.15}" "${OVER_PROMPT_FREESPACE_YELL:=0.05}" "${OVER_PROMPT_CMD_START}" + else + echo "Overloaded" + fi PS1="$(print "%(?.%{\e[1;36m%}.%{\e[1;31m%}%?%{\e[0m%}:%{\e[1;31m%})%(\!.#.$)%{\e[0m%} ")" OVER_PROMPT_LAST_REFRESH=${EPOCHSECONDS} OVER_PROMPT_CMD_START=0