#!/usr/bin/env bash # ================================================== # KoolDots (2026) # Project URL: https://github.com/LinuxBeginnings # License: GNU GPLv3 # SPDX-License-Identifier: GPL-3.0-or-later # ================================================== # For Searching via web browsers # Define the path to the config file config_file=$HOME/.config/hypr/UserConfigs/01-UserDefaults.conf if ! command -v jq >/dev/null 2>&1; then notify-send -u low "Rofi Search" "jq is required for URL encoding. Please install jq." exit 1 fi # Check if the config file exists if [[ ! -f "$config_file" ]]; then echo "Error: Configuration file not found!" exit 1 fi # Process the config file in memory, removing the $ and fixing spaces config_content=$(sed 's/\$//g' "$config_file" | sed 's/ = /=/') # Source the modified content directly from the variable eval "$config_content" # Check if $term is set correctly if [[ -z "$Search_Engine" ]]; then echo "Error: \$Search_Engine is not set in the configuration file!" exit 1 fi # Rofi theme and message rofi_theme="$HOME/.config/rofi/config-search.rasi" msg='‼️ **note** ‼️ search via default web browser' # Kill Rofi if already running before execution if pgrep -x "rofi" >/dev/null; then pkill rofi fi # Open Rofi and pass the selected query to xdg-open for the configured search engine query=$(printf '' | rofi -dmenu -config "$rofi_theme" -mesg "$msg") if [[ -z "$query" ]]; then exit 0 fi encoded_query=$(printf '%s' "$query" | jq -sRr @uri) xdg-open "${Search_Engine}${encoded_query}" >/dev/null 2>&1 &