diff options
Diffstat (limited to 'dots/home/scripts/greet.sh')
-rwxr-xr-x | dots/home/scripts/greet.sh | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/dots/home/scripts/greet.sh b/dots/home/scripts/greet.sh new file mode 100755 index 0000000..cb2aae5 --- /dev/null +++ b/dots/home/scripts/greet.sh @@ -0,0 +1,29 @@ +#!/bin/bash +source log.sh "greet.sh" + +pick_greeting() { + path="$1" + greetings=("$1"/*) + greeting_path="${greetings[$RANDOM % ${#greetings[@]}]}" + echo "$greeting_path" +} + +GREETINGS_LIST="$XDG_CONFIG_HOME/zsh/greetings" +if [ ! -d "$GREETINGS_LIST" ]; then + log DEBUG "no such file $GREETINGS_LIST" + exit 0 +fi + +for greetings in $(ls "$GREETINGS_LIST" | sort); do + echo + log DEBUG "greeting $greetings" + + path="$GREETINGS_LIST/$greetings" + if [ ! -d "$path" ]; then + log DEBUG "greetings $path is not a directory" + continue + fi + + greeting=$(pick_greeting "$path") + cat "$greeting" +done |