- Idle is handled in the shell instead of hypridle: the screen dims
slowly at 4 minutes, locks at 5, powers down at 6, and suspends at 15
on battery. Idle inhibitors hold every stage off; Super+Shift+I does
the same by hand and puts a cup on the rail.
- The shell draws the wallpaper (backdrop/), so hyprpaper is gone. The
picture is drawn a little larger than the screen and drifts with the
workspace a beat after the windows, and dims a shade while windows are
open. The path lives in quickshell/wallpaper.
- The lock screen and power menu say "Take your time." instead of the
NieR slogan.
- hyprpaper is no longer launched twice, the media module keeps the
player that played last instead of an empty browser tab, and grouped
windows show thin untitled tabs with their place in the group (2/3)
in the bar title.
- qt6ct uses Darkly; the package list gains adw-gtk-theme and darkly-bin.
fuzzel could only answer "which app", so launching Brave at a URL meant
picking the app, waiting for it, then typing the address somewhere else.
The launcher now takes a verb and an object in one line: type
`gitlab.enqs.de` and every app that can open it sorts to the top, default
browser first, ready for Enter — or arrow/hjkl down to Brave's New
Incognito Window, which is offered as a peer of Brave itself rather than
hidden behind a submenu.
services/Apps.qml is the brain and holds no UI: it flattens desktop
entries and their actions into one index, classifies the typed argument
(url / mail / path), ranks by fuzzy match plus handler affinity plus
frecency, and launches. Launching through `uwsm app` keeps each app in its
own scope; entries whose Exec declares no field code (Brave's
`--incognito` action, among others) are launched by tokenising Exec per
the Desktop Entry spec and appending the argument, never via `sh -c`.
Four prefixes reuse the same window, so there is one picker and one set of
keys: `>` runs a command, `=` evaluates arithmetic, `:` is clipboard
history (cliphist, which had been a second fuzzel invocation), and a
dmenu mode is driven over IPC.
quickshell/scripts/takemi-dmenu is the bridge for that last one — a
`fuzzel --dmenu` drop-in for scripts that want a picker, symlinked into
~/.local/bin. fluxo's bt menu now goes through it.
Living in the Quickshell process means the window is on screen on the
frame the bind fires, with no process to spawn.
Removes fuzzel entirely: its config, its theme submodule, the package,
and the last consumers (the bar sigil, fluxo's menu_command). Also drops
hypr/scripts/powermenu.sh, which was fuzzel-based and bound to nothing.