Commit graph

165 commits

Author SHA1 Message Date
0156255cac hyprland: remove nm-applet from macbook startup
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 12:54:11 +01:00
3f61cb6b09 quickshell: fix wifi detection and battery parsing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 12:51:21 +01:00
45275e29c9 quickshell: anchor-based layout instead of RowLayout
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 12:08:04 +01:00
1cb2389b0d quickshell: fix layout width with Row for workspaces
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 12:05:04 +01:00
d63097edb6 quickshell: use screen.width for RowLayout
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:59:46 +01:00
5e86856307 quickshell: bind RowLayout size to bar dimensions
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:58:40 +01:00
decde0aabb quickshell: restore implicitWidth for full-width bar
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:45:27 +01:00
6e27ccf6e0 quickshell: remove unnecessary width override
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:44:39 +01:00
3276f83948 quickshell: use width for full-width bar
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:34:41 +01:00
b3492a40cb quickshell: set implicitWidth to screen width
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:33:20 +01:00
51cfe675cd quickshell: remove deprecated width property
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:31:14 +01:00
ebd703fa15 quickshell: force bar width to screen width
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:29:00 +01:00
71661498d9 hyprland: autostart quickshell
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:19:28 +01:00
8e914e3131 quickshell: clock, calendar, battery; remove waybar
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:15:01 +01:00
4905389a3c quickshell: add click handler to open nm-connection-editor
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:07:14 +01:00
5207fe32f3 quickshell: fix network widget parent refs, drop click handler
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:04:34 +01:00
463cb4dd07 quickshell: network widget, bar transparency, drop nm-applet
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 11:02:35 +01:00
f1f33194b2 quickshell: auto-close context menu on outside click
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:58:40 +01:00
a3e83fa6f0 quickshell: inline monochrome tray icons on bar
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:55:21 +01:00
fbb7c2d494 quickshell: fix missing closing brace
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:52:14 +01:00
5f1618e49c quickshell: fix menu delegate, use inline repeater
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:39:19 +01:00
e02e1f41c1 quickshell: custom QML tray context menus
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:37:50 +01:00
63bd64ec56 quickshell: fix tray menu position
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:31:23 +01:00
67a09b2a7f quickshell: add UseQApplication pragma for tray menus
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:29:47 +01:00
88c2b7b107 quickshell: fix tray popup anchor and menu display
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:26:56 +01:00
9dc4067a59 quickshell: fix tray menu, improve popup styling
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:21:56 +01:00
d63693e87a quickshell: underline workspaces, dropdown tray
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:16:55 +01:00
69a72e9406 hyprland: add basic quickshell bar config
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 10:11:09 +01:00
5ac532d46f hyprland: add quickshell to gaming PC
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-26 09:51:03 +01:00
38b423ca29 hyprland: use loop for workspace binds
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-25 20:18:44 +01:00
9d67da0d7c revert: remove 7 Days to Die window rule — not needed
The floating issue was caused by the game's Unity display mode being
set to Windowed (mode 3), which locks X11 size hints (min=max) and
prevents any tiling WM from resizing it.  Fixed by switching the
game to Fullscreen Window (mode 1) in the Wine registry instead.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-20 20:56:54 +01:00
3f1729b3b9 hyprland: use tile action for 7 Days to Die window rule
float = false isn't a valid Lua API action; tile = true is the correct
way to force an XWayland window out of floating.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-20 20:38:08 +01:00
752d6c49a0 hyprland: force 7 Days to Die to tile instead of float
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-20 20:33:33 +01:00
2ed677bd8f Revert "macbook: disable touchpad while typing"
The per-device config block used invalid syntax for this Hyprland
version. Revert while we find a working approach.

This reverts commit dc7845a.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 17:16:33 +01:00
dc7845a7b9 macbook: disable touchpad while typing
The bcm5974 trackpad is classified as a mouse by Hyprland, not a
touchpad, so the global touchpad DWT setting had no effect. Use a
per-device config block to apply disable_while_typing directly to
the bcm5974.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 17:11:52 +01:00
28bac0dd46 macbook: disable touchpad while typing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 17:03:49 +01:00
111e8183d0 hyprland: remove snixembed — breaks native SNI tray icons
snixembed conflicts with waybar's tray, causing all SNI items
(Vesktop, nm-applet) to disappear. Battle.net's tray icon doesn't
use X11 embed protocol anyway, so snixembed doesn't help.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 16:04:45 +01:00
5a1cc4a7ca hyprland: add snixembed for X11 tray icon bridging (Battle.net)
Wine/XWayland apps use X11 embed tray protocol which waybar's SNI-based
tray doesn't see. snixembed proxies X11 tray icons as SNI items.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 15:32:34 +01:00
f7f258651e hyprland: remove dead config (WLR_DRM_DEVICES, pamixer, stale CSS, old activation)
- WLR_DRM_DEVICES: wlroots env var ignored by Aquamarine, AQ_DRM_DEVICES already set
- pamixer: not referenced anywhere, volume handled by swayosd-client
- #network.disconnected CSS: no network module in waybar config
- #custom-tray-toggle CSS: renamed to #custom-tray-handle to match actual module
- removeOldHyprlandConf activation: one-time migration already completed

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 13:25:07 +01:00
5655987f66 hyprland: remove GCC 15 LD_PRELOAD workaround — no longer needed
Hyprland 0.55.0 now links GCC 15.2.0 natively, so the symlinkJoin
wrapper that injected LD_PRELOAD for the GLIBCXX_3.4.34 symbol is
obsolete.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 13:09:19 +01:00
059e847b6e anyrun: reset-failed before daemon restart in power menu
systemctl stop/start in quick succession hits the start-rate limiter,
leaving the daemon in a failed state. Reset the failure counter before
restarting.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 12:58:48 +01:00
e77f4791be anyrun: fix upstream flake integration and use systemd daemon
Fix config for upstream anyrun HM module (no margin option, use
package refs for plugins). The upstream module provides a systemd
user service for the daemon with Restart=on-failure, so remove
manual daemon management from Hyprland startup.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 12:51:41 +01:00
9f2a5a2868 anyrun: switch to upstream flake for working daemon mode
Replace nixpkgs anyrun with the upstream anyrun-org/anyrun flake,
which provides its own HM module and plugin packages. The nixpkgs
build had a broken daemon (GTK activate crash). Re-enable daemon
startup and close/open toggle.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 12:48:00 +01:00
402f2f36f5 anyrun: revert to standalone mode — daemon crashes on GTK init
anyrun 25.12.0's daemon mode crashes with a GLib-GIO activate error.
Revert to the reliable standalone killall toggle until upstream fixes
the daemon.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 12:37:55 +01:00
0519efdf01 anyrun: fix config and restore toggle behavior
terminal field still expects Option<T> wrapper (Some("ghostty")).
Restore close-or-open toggle for Super+R — with the daemon running,
`anyrun close` correctly fails when no window is open.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 12:35:07 +01:00
76bef27ac7 anyrun: restart daemon after standalone power menu use
The power menu runs anyrun in standalone stdin mode, which kills the
daemon. Explicitly quit the daemon before, then restart it after the
standalone invocation so the launcher stays fast.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 12:30:28 +01:00
a673881fa5 anyrun: fix launcher bind for daemon mode
Just call `anyrun` directly — the daemon handles window display.
The previous `anyrun close || anyrun` toggle failed because close
returns success even with no window open.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 12:22:20 +01:00
8ec8e4c876 anyrun: switch to daemon mode and fix config warnings
Start `anyrun daemon` at Hyprland launch for instant open times.
Replace `killall anyrun` with `anyrun close` to dismiss without
killing the daemon. Fix applications.ron config — newer anyrun
expects plain values, not Option<T> wrappers (Some(8) → 8).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 12:20:02 +01:00
d89706736c hyprpaper: remove unnecessary wallpaper workarounds
The mkForce wallpaper override (explicit monitor names) and the IPC
startup script (sleep 2 + hyprctl) were stacked workarounds for a
misdiagnosed hyprpaper 0.8.4 bug.  Stylix's hyprpaper target (still
auto-enabled) correctly sets preload and wallpaper with the standard
wildcard syntax.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-18 10:35:26 +01:00
542d5b1ee6 hyprpaper: fix wallpaper IPC script (use writeShellScript)
The previous inline shell command had quoting/PATH issues. Replace with
a proper pkgs.writeShellScript that:
- Uses the full hyprctl store path (no PATH dependency)
- Reads the wallpaper from hyprpaper.conf at runtime ($HOME/.config)
- Avoids the Nix string-context conflict from embedding a store path

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-18 10:18:15 +01:00