Floating Waybar
A floating-pill status bar for Omarchy (Quickshell). Drop-in bar plugin for
omarchy-shell that detaches the strip from the screen edge, rounds it into a
pill, and turns the bar surface into a frosted-glass panel that blurs the
wallpaper behind it. All of your existing bar widgets keep working untouched —
it is a drop-in replacement for the stock omarchy.bar.
Features
- Floating pill — the bar hovers off the chosen screen edge with a configurable gap, rounded corners, and its own slide-in entrance animation.
- Frosted glass — pill fill painted at ~60% alpha; Hyprland's layer blur on
the
omarchy-barnamespace turns the wallpaper behind it into frosted glass. - Theme-aware — pulls
Style/Colorfrom the active Omarchy theme, so it matches whatever theme you switch to (no extra theming to maintain). - Gliding hover capsule — an accent pill eases under whichever widget your pointer is over; hover them to see it glide between slots.
- Press bounce — widgets squash-and-pop on click so interactions feel physical.
- Style CLI — tweak the look live from the terminal with
floating-waybar(gap, opacity, frosted on/off, hover glider, floating on/off). No manual QML editing needed for day-to-day styling. - All widgets
omarchy.barsupports — workspaces, clock, tray, audio, network, power, media, and any customcommand/qmlmodules from yourshell.jsonbar layout.
Requirements
- Omarchy 4.0.0+ (omarchy-shell / Quickshell)
- Hyprland layer blur rule for the bar namespace (default Omarchy ships it in
looknfeel.lua):
If your setup lacks it, the pill still works — it just reads as a slightly transparent solid color instead of frosted glass.hl.layer_rule({ match = { namespace = "omarchy-bar" }, blur = true, ignore_alpha = 0.2 })
Install
The plugin is a git repo with manifest.json at its root, so it installs
straight from the marketplace-ish omarchy plugin add flow:
omarchy plugin add https://github.com/TECHNOCRAFT27/floating-waybar --enable --yes
Or without --yes to review the code before enabling:
omarchy plugin add https://github.com/TECHNOCRAFT27/floating-waybar
omarchy plugin enable floating-waybar
After enabling, point the bar at the plugin. The plugin is selected by the
bar.id key in ~/.config/omarchy/shell.json:
{
"version": 1,
"bar": {
"id": "floating-waybar",
"position": "top",
"layout": { "left": [/* ... */], "center": [/* ... */], "right": [/* ... */] }
}
}
The bar hot-reloads on save. floating-waybar replaces whatever bar provider
was active; your existing widgets, popups, and omarchy bar ... gestures all
keep working.
By hand
Prefer the git install above. To install from a checkout:
mkdir -p ~/.config/omarchy/plugins
cp -a /path/to/floating-waybar ~/.config/omarchy/plugins/
omarchy-shell shell rescanPlugins
# then set bar.id to "floating-waybar" in shell.json
Updating
omarchy plugin update floating-waybar
Uninstalling
omarchy plugin disable floating-waybar # bar falls back to omarchy.bar
omarchy plugin remove floating-waybar
Style CLI
Ship bin/floating-waybar (also symlinked to ~/.local/bin on this machine).
It reads and writes style.json in the plugin directory and the bar applies
changes live — no restarts.
floating-waybar get [key] # show all (defaults + overrides) or one key
floating-waybar set <key> <value> # change a property, applied instantly
floating-waybar reset # delete style.json, back to built-in defaults
floating-waybar path # print the style file being written
floating-waybar help # usage and property list
Properties
| Key | Type | Default | Description |
|---|---|---|---|
floating |
true/false |
true |
Detach the bar as a floating pill (false = docked stock) |
frosted |
true/false |
true |
Frosted-glass fill (false = solid theme background) |
opacity |
0.0 – 1.0 |
0.6 |
Pill fill alpha when frosted |
gap |
0 – 200 px |
10 |
Distance between the pill and its screen edge |
hover-glider |
true/false |
true |
Accent capsule gliding under the hovered widget |
Examples
floating-waybar set opacity 0.75 # a more solid pill
floating-waybar set gap 16 # float further from the edge
floating-waybar set frosted false # solid colored pill
floating-waybar set hover-glider false
floating-waybar get
Values live in <plugin-dir>/style.json:
{
"floating": true,
"frosted": true,
"opacity": 0.6,
"gap": 10,
"hover-glider": true
}
Missing keys fall back to the built-in defaults compiled into Bar.qml, so the
plugin works with no style file at all. style.example.json documents every
key.
Customization
Anything beyond the CLI knobs is QML. All the floating behavior lives in the
// ---- Floating bar ---- block near the top of Bar.qml:
floatRadius— pill corner radius (derived from the theme by default)chromeentranceParallelAnimation— slide + fade timingshoverGlider— accent color / inset / easing of the hover capsule
Change these in your clone — the plugin dir is a plain git checkout, so future
omarchy plugin update runs will show you a diff before fast-forwarding.
How it works
Bar.qml is a fork of the stock omarchy.bar engine with one structural
change: the layer window is always transparent and everything visual lives in a
rounded Rectangle (chrome) behind the widget rows, so the pill's corners cut
out cleanly against the wallpaper. The gap is folded into every PanelWindow
margin (including the off-screen parking offset used when hiding the bar), which
keeps tiled windows' exclusion zones stable. Style properties are watched from
style.json via FileView + a Process, so CLI writes reflow the bar live.
Layout
floating-waybar/
├── manifest.json # plugin manifest (id: floating-waybar, kind: bar)
├── Bar.qml # floating-pill bar engine (fork of omarchy.bar)
├── BarModel.js
├── bin/floating-waybar # style CLI
├── style.example.json # documented default values
├── indicators/ # first-party bar indicator widgets
└── widgets/ # manifest-backed bar widgets
License
MIT © 2026 TECHNOCRAFT27