#!/usr/bin/env bash BASE_MENU="$HOME/.config/hypr/menu.list" HOST_MENU="$HOME/.config/hypr/menu-$(hostname).list" HISTORY_FILE="$HOME/.cache/tofi/launch-menu.txt" # Build effective menu (host-specific overrides public) MENU_CONTENT=$(cat "$BASE_MENU" 2>/dev/null) [ -f "$HOST_MENU" ] && MENU_CONTENT=$(cat "$BASE_MENU" "$HOST_MENU") pkill -x tofi || { chosen=$(printf '%s\n' "$MENU_CONTENT" \ | cut -d'=' -f1 \ | tofi --history-file="$HISTORY_FILE" --history=true --require-match=true --fuzzy-match=true) if [ -n "$chosen" ]; then script=$(printf '%s\n' "$MENU_CONTENT" \ | awk -F= -v sel="$chosen" '$1==sel {print $2}' \ | tail -n1) [ -n "$script" ] && eval "$script" & fi }