From 2c485ce2b43bd810a88278215b771136a2a17881 Mon Sep 17 00:00:00 2001 From: Martin Michalec Date: Wed, 11 Feb 2026 05:47:33 +0300 Subject: add scripts --- private_dot_local/bin/executable_menu-drun | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 private_dot_local/bin/executable_menu-drun (limited to 'private_dot_local/bin/executable_menu-drun') diff --git a/private_dot_local/bin/executable_menu-drun b/private_dot_local/bin/executable_menu-drun new file mode 100644 index 0000000..e655672 --- /dev/null +++ b/private_dot_local/bin/executable_menu-drun @@ -0,0 +1,23 @@ +#!/bin/sh + +SEARCH_PATHS=$(echo $XDG_DATA_HOME:$XDG_DATA_DIRS | tr ':' '\n' | awk '{print $1 "/applications"}') + +LIST=$(find -L $SEARCH_PATHS -maxdepth 1 -name "*.desktop" -print0 2>/dev/null | xargs -0 awk -F'=' ' + BEGINFILE { name=""; section="" } + /^\[Desktop Entry\]/ { section="main" } + /^\[Desktop Action / { section=substr($0, 17, length($0)-17) } + /^Name=/ && section=="main" { name=$2 } + ENDFILE { + if (name != "") { + printf "%s:%s\n", FILENAME, name + } + } +') + +CHOICE=$(echo "$LIST" | cut -d: -f2 | sort -u | $MENU "$@") + +[ -z "$CHOICE" ] && exit + +FILE=$(echo "$LIST" | grep -F ":$CHOICE" | head -n 1 | cut -d: -f1) + +gtk4-launch $(basename $FILE) -- cgit v1.3