summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--functions18
-rwxr-xr-xlsinitcpio17
-rwxr-xr-xmkinitcpio17
3 files changed, 20 insertions, 32 deletions
diff --git a/functions b/functions
index 8be43ed..2286ac1 100644
--- a/functions
+++ b/functions
@@ -668,4 +668,22 @@ run_build_hook() {
return 0
}
+try_enable_color() {
+ local colors
+
+ if ! colors=$(tput colors 2>/dev/null); then
+ warning "Failed to enable color. Check your TERM environment variable"
+ return
+ fi
+
+ if (( colors > 0 )) && tput setaf 0 &>/dev/null; then
+ _color_none=$(tput sgr0)
+ _color_bold=$(tput bold)
+ _color_blue=$_color_bold$(tput setaf 4)
+ _color_green=$_color_bold$(tput setaf 2)
+ _color_red=$_color_bold$(tput setaf 1)
+ _color_yellow=$_color_bold$(tput setaf 3)
+ fi
+}
+
# vim: set ft=sh ts=4 sw=4 et:
diff --git a/lsinitcpio b/lsinitcpio
index c4129d5..0a60399 100755
--- a/lsinitcpio
+++ b/lsinitcpio
@@ -258,22 +258,7 @@ done
_image=$1
if [[ -t 1 ]] && (( _optcolor )); then
- # prefer terminal safe colored and bold text when tput is supported
- if type -P tput >/dev/null; then
- _color_none="$(tput sgr0)"
- _color_bold="$(tput bold)"
- _color_blue="$_color_bold$(tput setaf 4)"
- _color_green="$_color_bold$(tput setaf 2)"
- _color_red="$_color_bold$(tput setaf 1)"
- _color_yellow="$_color_bold$(tput setaf 3)"
- else
- _color_none="\e[1;0m"
- _color_bold="\e[1;1m"
- _color_blue="$_color_bold\e[1;34m"
- _color_green="$_color_bold\e[1;32m"
- _color_red="$_color_bold\e[1;31m"
- _color_yellow="$_color_bold\e[1;33m"
- fi
+ try_enable_color
fi
[[ $_image ]] || die "No image specified (use -h for help)"
diff --git a/mkinitcpio b/mkinitcpio
index d5cf895..9802fd5 100755
--- a/mkinitcpio
+++ b/mkinitcpio
@@ -414,22 +414,7 @@ while :; do
done
if [[ -t 1 ]] && (( _optcolor )); then
- # prefer terminal safe colored and bold text when tput is supported
- if type -P tput >/dev/null; then
- _color_none="$(tput sgr0)"
- _color_bold="$(tput bold)"
- _color_blue="$_color_bold$(tput setaf 4)"
- _color_green="$_color_bold$(tput setaf 2)"
- _color_red="$_color_bold$(tput setaf 1)"
- _color_yellow="$_color_bold$(tput setaf 3)"
- else
- _color_none="\e[1;0m"
- _color_bold="\e[1;1m"
- _color_blue="$_color_bold\e[1;34m"
- _color_green="$_color_bold\e[1;32m"
- _color_red="$_color_bold\e[1;31m"
- _color_yellow="$_color_bold\e[1;33m"
- fi
+ try_enable_color
fi
# insist that /proc and /dev be mounted (important for chroots)