manhunt is a lightweight desktop search launcher for Linux.
It lets you:
- search the web from one prompt
- use short engine keywords like
gg,yt,rd,so - open saved bookmarks quickly
- add bookmarks from the launcher UI
When you run manhunt for the first time, it creates your config file automatically at:
~/.config/manhunt/config.json
Use this if you have Go installed.
go install github.com/bashnko/manhunt/cmd/manhunt@latestMake sure your Go bin directory is in PATH (usually ~/go/bin).
If you prefer npm, install the package named manhunt:
npm install -g manhuntClone and build from source:
git clone https://github.com/bashnko/manhunt.git
cd manhunt
go build -o manhunt ./cmd/manhunt
sudo install -m 0755 manhunt /usr/local/bin/manhuntOr run directly without installing:
go run ./cmd/manhuntmanhunt currently requires one external dependency:
Install it with your distro package manager.
Examples:
# Debian/Ubuntu
sudo apt install rofi
# Arch
sudo pacman -S rofi
# Fedora
sudo dnf install rofiOnce both are installed (rofi + manhunt), proceed with these steps:
- Run
manhuntfrom your terminal once typemanhunt(ormanhunt init) to create~/.config/manhunt/config.json. - Bind
manhuntto a hotkey in your compositor/window manager. - Press the hotkey and start searching.
Add one of these bindings to your desktop environment config.
Note
Keymap configuration can differ based on your system setup, compositor version, and how you manage your keybindings. Treat the examples below as templates and adjust paths/syntax to match your own configuration.
Hyprland
File: ~/.config/hypr/hyprland.conf
bind = SUPER, SPACE, exec, manhunti3wm
File: ~/.config/i3/config
bindsym $mod+space exec --no-startup-id manhuntniri
File: ~/.config/niri/config.kdl
binds {
Mod+Space { spawn "manhunt"; }
}Sway
File: ~/.config/sway/config
bindsym $mod+space exec manhuntbspwm (sxhkd)
File: ~/.config/sxhkd/sxhkdrc
super + space
manhunt
After changing keybind configs, reload your compositor/window manager config.
- type normal text to search with the default engine
- type
engine queryto use a specific engine, for example:yt lofi mix - type
:linksto browse saved bookmarks - type
:add_urlto add a bookmark interactively
Default engines:
ggGoogleytYouTuberdRedditsoStack Overflow
manhunt is fully extensible and configurable. You can customize engines, commands, prefixes, and bookmark shortcuts to match your workflow.
{
"DefaultEngine": "gg",
"CommandPrefix": ":",
"LinksCommand": ":links",
"AddURLCommand": ":add_url",
"SearchEngines": {
"gg": "https://www.google.com/search?q=%s",
"ms": "https://music.youtube.com/search?q=%s",
"rd": "https://www.reddit.com/search/?q=%s",
"so": "https://stackoverflow.com/search?q=%s",
"yt": "https://www.youtube.com/results?search_query=%s"
},
"Bookmarks": [
{
"keyword": "vercel",
"name": "vercel",
"url": "https://vercel.app/"
},
{
"keyword": "gh",
"name": "GitHub",
"url": "https://github.com"
}
]
}