summary refs log tree commit diff
path: root/bin
diff options
context:
space:
mode:
Diffstat (limited to 'bin')
-rwxr-xr-xbin/iconez15
1 files changed, 13 insertions, 2 deletions
diff --git a/bin/iconez b/bin/iconez
index f000b6d..9c78450 100755
--- a/bin/iconez
+++ b/bin/iconez
@@ -30,8 +30,19 @@ while getopts n:p:dfsh opt; do
 done
 shift $((OPTIND - 1))
 
-desktop_dirs="/usr/share/applications/ /usr/local/share/applications/"
-icon_dirs="/usr/share/icons/ /usr/local/share/icons/"
+data_dirs=$(
+	set -f
+	IFS=":"
+	set -- ${XDG_DATA_DIRS:-"$HOME/.local/share:/usr/local/share:/usr/share"}
+	printf "%s\n" "$@"
+)
+
+desktop_dirs=
+icon_dirs=
+for d in $data_dirs; do
+	desktop_dirs="${desktop_dirs## } ${d}/applications"
+	icon_dirs="${icon_dirs## } ${d}/icons"
+done
 
 by_name() {
 	name=$1