dmenu_run: Split cache logic to dmenu_path again

This allows to run dmenu_path to update the cache using
a packager manager hook system
This commit is contained in:
Quentin Glidic 2012-07-30 17:02:12 +02:00
parent 1299e41447
commit dec9a28863
3 changed files with 18 additions and 16 deletions

View file

@ -1,15 +1,2 @@
#!/bin/sh
cachedir=${XDG_CACHE_HOME:-"$HOME/.cache"}
if [ -d "$cachedir" ]; then
cache=$cachedir/dmenu_run
else
cache=$HOME/.dmenu_cache # if no xdg dir, fall back to dotfile in ~
fi
(
IFS=:
if stest -dqr -n "$cache" $PATH; then
stest -flx $PATH | sort -u | tee "$cache" | dmenu "$@"
else
dmenu "$@" < "$cache"
fi
) | ${SHELL:-"/bin/sh"} &
dmenu_path | dmenu "$@" | ${SHELL:-"/bin/sh"} &