# ๐Ÿš€ shrtrun **shrtrun** is a lightweight command launcher script for Linux, powered by `rofi`. It supports quick access to web search engines, YouTube searches, and execution of shell commands through a simple and customizable interface. ## โœจ Features - โšก Launch custom shell commands - ๐ŸŒ Search the web using your preferred search engine - ๐Ÿ“บ Search YouTube directly - ๐Ÿ› ๏ธ Configurable via `~/.config/shrtrun/config.conf` - ๐Ÿ•˜ Command history for fast re-use ## ๐Ÿ“ฆ Installation 1. Save the script (e.g., as `shrtrun.sh`) and make it executable: ```bash chmod +x shrtrun.sh ``` 2. (Optional) Move it somewhere in your `$PATH`: ```bash mv shrtrun.sh ~/.local/bin/shrtrun ``` 3. Run it via a keybinding or launcher ```bash shrtrun ``` Or use the full path if not in your `$PATH` (e.g., `/path/to/shrtrun.sh`). ## โš™๏ธ Configuration On first run, the script creates a config file at: ``` ~/.config/shrtrun/config.conf ``` ### ๐Ÿ“ Example config: ``` log_file: /logs/shrtrun.log search_engine: https://duckduckgo.com/?q= youtube_search: https://www.youtube.com/results?search_query= ``` Info: file paths are relative to your home directory. ## ๐Ÿง‘โ€๐Ÿ’ป Usage - ๐Ÿ’ฌ **Regular Commands:** Type any shell command and hit Enter to execute it. - ๐Ÿง  **Special Prefixes:** - `!g your search` โ€” Searches the web via your configured search engine ๐ŸŒ - `!y your search` โ€” Searches YouTube ๐Ÿ“น ## ๐Ÿ“œ Command History shrtrun keeps a history file at: ``` ~/.config/shrtrun/history.txt ``` This lets you recall previous commands easily when relaunching shrtrun. Only successful or valid commands are saved. ## ๐Ÿ”ง Requirements - `rofi` - `awk`, `bash`, `xdg-open` (most likely pre-installed) - Optional: `notify-send` for desktop notifications ๐Ÿ”” ### ๐Ÿ“ฅ Install dependencies - ๐Ÿง **Debian/Ubuntu:** `sudo apt install rofi xdg-utils libnotify-bin` - ๐Ÿง **Arch/Manjaro:** `sudo pacman -S rofi xdg-utils libnotify` - ๐Ÿง **Fedora:** `sudo dnf install rofi xdg-utils libnotify` - ๐Ÿง **openSUSE:** `sudo zypper install rofi xdg-utils libnotify` --- ๐Ÿ“ **GPL License** โ€“ This project is licensed under the GNU General Public License. See the LICENSE file for more details. ๐Ÿงพ