blob: b8c9138735c514c7ae46a55352c456d22661d2c6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# Hey Emacs; this is a -*- shell-script -*-.
# Hopefully invoked by bash 🤞
_apps_dir=$(realpath --no-symlinks $(dirname ${BASH_SOURCE}))
_apps_PATH=$(
shopt -s nullglob
bins=( "${_apps_dir}"/*/bin )
IFS=: eval 'echo "${bins[*]}"'
)
export PATH=${_apps_PATH}:${PATH}
_apps_XDG_DATA_DIRS=$(
shopt -s nullglob
# We could set globstar and let Bash loose, searching the depths
# of _apps_dir for
# **/{applications/*.desktop,systemd/user/*.service}
# but it seems like asking for trouble. Make some assumptions
# about where applications typically dump their XDG-related files.
datadirs=($(
{
for dkentry in "${_apps_dir}"/*/share/applications/*.desktop
do
echo ${dkentry%/applications/*.desktop}
done
for unit in "${_apps_dir}"/*/lib*/systemd/user/*.service
do
echo ${unit%/systemd/user/*.service}
done
} | sort -u
))
IFS=: eval 'echo "${datadirs[*]}"'
)
export XDG_DATA_DIRS="${_apps_XDG_DATA_DIRS}:${XDG_DATA_DIRS:-/usr/local/share:/usr/share}"
|