New backup 2025-11-28 11:00:02
This commit is contained in:
parent
b3dca76aa5
commit
745d748571
1 changed files with 30 additions and 23 deletions
|
|
@ -39,35 +39,40 @@ get_hardcoded_icon() {
|
|||
|
||||
get_desktop() {
|
||||
app="$1"
|
||||
p="/usr/share/applications"
|
||||
plist=("/usr/share/applications", "/var/lib/flatpak/exports/share/applications/")
|
||||
|
||||
[[ "$verbose" ]] && echo "searching for '$app'" >&2
|
||||
|
||||
# fast and easy cases first:
|
||||
for prefix in "" org.kde. org.gnome. org.freedesktop.; do
|
||||
d="$p/$prefix$app.desktop"
|
||||
[[ -r "$d" ]] && {
|
||||
echo "$d"
|
||||
[[ "$verbose" ]] && echo "found '$d'" >&2
|
||||
return
|
||||
}
|
||||
for p in "${plist[@]}";do
|
||||
for prefix in "" org.kde. org.gnome. org.freedesktop.; do
|
||||
d="$p/$prefix$app.desktop"
|
||||
[[ -r "$d" ]] && {
|
||||
echo "$d"
|
||||
[[ "$verbose" ]] && echo "found '$d'" >&2
|
||||
return
|
||||
}
|
||||
done
|
||||
done
|
||||
|
||||
# maybe lowercase
|
||||
for prefix in "" org.kde. org.gnome. org.freedesktop.; do
|
||||
d="$p/$prefix${app,,}.desktop"
|
||||
[[ -r "$d" ]] && {
|
||||
echo "$d"
|
||||
[[ "$verbose" ]] && echo "found '$d'" >&2
|
||||
return
|
||||
}
|
||||
for p in "${plist[@]}";do
|
||||
for prefix in "" org.kde. org.gnome. org.freedesktop.; do
|
||||
d="$p/$prefix${app,,}.desktop"
|
||||
[[ -r "$d" ]] && {
|
||||
echo "$d"
|
||||
[[ "$verbose" ]] && echo "found '$d'" >&2
|
||||
return
|
||||
}
|
||||
done
|
||||
done
|
||||
|
||||
# this is fairly reliable but slow:
|
||||
# look for a .desktop file with Exec=$app eg
|
||||
# gnome-disks (but exclude gnome-disk-image-writer.desktop)
|
||||
# gnome-font-viewer
|
||||
GREP='egrep -r'
|
||||
type rg &>/dev/null && GREP=rg
|
||||
d=$( $GREP -il "^exec=$app( %u)*[[:space:]]*$" $p | head -n 1)
|
||||
d=$( $GREP -il "^exec=$app( %u)*[[:space:]]*$" ${p[@]} | head -n 1)
|
||||
[[ -r "$d" ]] && {
|
||||
echo "$d"
|
||||
[[ "$verbose" ]] && echo "found '$d'" >&2
|
||||
|
|
@ -76,12 +81,14 @@ get_desktop() {
|
|||
|
||||
# desperation - weird apps like com.github.wwmm.pulseeffects.desktop!!
|
||||
# shellcheck disable=SC2012
|
||||
d=$( ls "$p/"*".$app.desktop" 2>/dev/null | head -n 1 )
|
||||
[[ -r "$d" ]] && {
|
||||
echo "$d"
|
||||
[[ "$verbose" ]] && echo "found '$d'" >&2
|
||||
return
|
||||
}
|
||||
for p in "${plist[@]}";do
|
||||
d=$( ls "$p/"*".$app.desktop" 2>/dev/null | head -n 1 )
|
||||
[[ -r "$d" ]] && {
|
||||
echo "$d"
|
||||
[[ "$verbose" ]] && echo "found '$d'" >&2
|
||||
return
|
||||
}
|
||||
done
|
||||
}
|
||||
|
||||
get_icon() {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue