HyprRun is a minimal, terminal-based application launcher built specifically for dynamic tiling window managers like Hyprland.
Unlike other launchers (such as rofi or wofi), HyprRun was designed with dynamic tiling in mind: it never overlays windows or spawns floating pop-ups. Instead, it opens inside your terminal and closes instantly after launching the selected app — leaving your workspace clean and consistent.
- ⚡ Ultra-lightweight: A single, simple Bash script.
- 🎯 Focused: Uses
fzf
for fast, fuzzy-search-based navigation. - 🛠️ Simple Customization: Easily add your apps and scripts by editing one array.
- 🍃 Non-intrusive: Runs inside your existing terminal and closes immediately after use.
bash
(pre-installed on most Linux distributions)fzf
(a command-line fuzzy finder)
You can install fzf
using your distribution's package manager.
- Debian / Ubuntu:
sudo apt update && sudo apt install fzf
- Arch Linux:
sudo pacman -S fzf
- Fedora:
sudo dnf install fzf
- For other systems, please refer to the official fzf installation guide.
Follow these 3 simple steps to install HyprRun.
Clone this repository to your machine:
git clone https://github.com/fajremvp/HyprRun.git
cd HyprRun
Grant execution permissions to the script:
chmod +x hyprrun.sh
The best way to use HyprRun
is by binding it to a keyboard shortcut. In Hyprland, for example, you can add the following to your ~/.config/hyprland/hyprland.conf
:
# Replace 'kitty' with your preferred terminal emulator (e.g., Alacritty, foot)
bind = $mainMod, R, exec, kitty -e hyprrun.sh
With this setup, pressing Super + R
will launch HyprRun.
All configuration is done directly inside the hyprrun.sh
file. You can add your own applications and scripts by editing the apps
array.
apps=(
"Firefox:firefox"
"VSCodium:codium"
"My Script:~/.local/bin/my-script.sh"
"Only Office:flatpak run org.onlyoffice.desktopeditors"
# Add your entries here in "AppName:command" format
)
To add a program, you need to know which command executes it. Here are a few tips for finding those commands:
For most programs, the command is simply the application's name in lowercase.
- GIMP ->
gimp
- VLC ->
vlc
If you are unsure, you can:
- Type the first few letters in your terminal and press the
Tab
key for autocompletion. - Query your distribution's package manager (e.g.,
apt search
,pacman -Ss
). - Inspect the application's
.desktop
file (usually in/usr/share/applications
) and look for the line starting withExec=
.
Flatpak applications are executed with a specific command structure.
-
First, list all your installed Flatpaks to find the Application ID:
flatpak list
-
The output will show the name and the ID. For instance:
OnlyOffice Desktop Editors | org.onlyoffice.desktopeditors
. -
Use this ID to build the command in the format
flatpak run <Application-ID>
.Example for the
apps
array:"Only Office:flatpak run org.onlyoffice.desktopeditors"
You can run any custom script. Just make sure the script is executable (chmod +x my-script.sh
) and use its full path in the command.
Example for the apps
array:
"Check Date & Time:~/.local/bin/check_time.sh"
This is an open-source project, and you are welcome to contribute! Feel free to:
- Fork the repository: Create your own version and modify it as you see fit.
- Suggest improvements: Open an Issue to propose new features or report a bug.
- Submit Pull Requests: If you've implemented a fix or a feature, your pull request is welcome.