Skip to content

Hyprland setup

hyprburst opens its own Wayland window with app-id hyprburst; it does not run inside a terminal. Install one small Hyprland snippet, then customize behavior in ~/.config/hyprburst/config.toml.

Pick the snippet matching your Hyprland config format. Hyprland loads hyprland.lua if present, otherwise hyprland.conf; the two formats cannot be mixed.

Terminal window
install -Dm644 packaging/hyprburst.lua ~/.config/hypr/hyprburst.lua
# then add to ~/.config/hypr/hyprland.lua:
# dofile(os.getenv("HOME") .. "/.config/hypr/hyprburst.lua")
hl.bind("SUPER + Space", hl.dsp.exec_cmd("hyprburst"))

The snippet only binds the key. Placement and opacity come from hyprburst’s TOML config:

[window]
placement = "centered" # default; or "fullscreen"
opacity = 0.85

centered uses [window] width and height, keeping your normal Hyprland border and rounding. fullscreen is a full-monitor overlay without border or rounded corners. hyprburst translates these into launch-time rules:

Placement Hyprland behavior
centered float, pin, stay_focused, size = { window.width, window.height }, center = true
fullscreen float, pin, stay_focused, size = { "monitor_w", "monitor_h" }, move = { 0, 0 }, border_size = 0, rounding = 0, opacity = "... override"
Terminal window
install -Dm644 packaging/hyprburst.conf ~/.config/hypr/hyprburst.conf
echo 'source = ~/.config/hypr/hyprburst.conf' >> ~/.config/hypr/hyprland.conf
windowrule = match:class ^(hyprburst)$, float on
windowrule = match:class ^(hyprburst)$, pin on
windowrule = match:class ^(hyprburst)$, size 640 720
windowrule = match:class ^(hyprburst)$, center 1
windowrule = match:class ^(hyprburst)$, opacity 0.9 0.9
windowrule = match:class ^(hyprburst)$, stay_focused on
windowrule = match:class ^(hyprburst)$, dim_around on
bind = SUPER, Space, exec, hyprburst

These static rules center the window. For a full-monitor overlay, swap size 640 720 and center 1 for size (monitor_w) (monitor_h), move 0 0, border_size 0 and rounding 0.

hyprburst is a normal Wayland window, so layer-shell surfaces on the top layer can still draw above it. Set Waybar’s own config to the bottom layer and restart it:

{
"layer": "bottom",
}

To migrate, move terminal.class to window.app_id (if you customized it) and delete the rest of [terminal]. The Super+Space bind is unchanged, and hyprburst tui still runs inline as a fallback.