feat(desktop): overhaul multi-monitor docking UX
Some checks failed
Check / eval (push) Has been cancelled
Some checks failed
Check / eval (push) Has been cancelled
This commit is contained in:
@@ -26,27 +26,6 @@ next, in what order*.
|
||||
|
||||
## NEXT
|
||||
|
||||
### 29. Laptop docking / external-monitor UX `[human]` (needs hardware)
|
||||
(Raised by Bernardo, 2026-07-07.) The shipped display application is
|
||||
weak and unintuitive, and Hyprland's model for workspaces across
|
||||
multiple monitors is unclear to users. Make docking a laptop to
|
||||
external monitors first-class:
|
||||
- **Unplug → restore the panel:** when the external monitor is removed
|
||||
and the laptop's own panel is off (was the only-active output while
|
||||
docked), turn the internal panel back on *immediately* — never leave
|
||||
the user staring at a dead lid.
|
||||
- **Plug → extend by default:** a newly connected external monitor
|
||||
should *extend* the laptop panel (not mirror), out of the box.
|
||||
- **HDMI audio:** an easy way to route audio to the monitor when a
|
||||
display with audio (HDMI/DP) is connected — a menu toggle / quick
|
||||
action, not manual pavucontrol digging.
|
||||
- **Workspaces + multi-monitor:** document (cheatsheet + menu) and,
|
||||
where sensible, sane defaults for how Hyprland binds workspaces to
|
||||
outputs so multi-monitor behavior is predictable.
|
||||
Likely a `hyprland`/`kanshi`-style profile layer plus a menu surface;
|
||||
split into slices before starting. `[blocked:hw]` for the real
|
||||
dock/undock + HDMI-audio verification (see HARDWARE-QUEUE.md).
|
||||
|
||||
### 28. Theme UI review — make every surface stunning `[big]`
|
||||
(Raised by Bernardo, 2026-07-05 — placed at the head of NEXT; reorder
|
||||
freely.) A thorough visual pass over the whole themed UI — Waybar (the
|
||||
@@ -323,6 +302,15 @@ implement. Bernardo moves accepted items into a tier.*
|
||||
|
||||
|
||||
|
||||
- **[security] System-wide AppArmor confinement**:
|
||||
Enabling `security.apparmor.enable = true` tightens the security posture of the workstation. It confines services and applications to their minimum necessary privileges, shielding the system against zero-days in desktop apps (like PDF viewers or media players). The cost is low (a single NixOS toggle that pulls in the default profile set), and it provides a critical layer of defense-in-depth for a daily-driver workstation.
|
||||
|
||||
- **[usefulness] Wayland-native color picker (`hyprpicker`)**:
|
||||
Designers and developers constantly need to sample colors from the screen. Adding `hyprpicker` and binding it to a keyboard shortcut (e.g., `SUPER+SHIFT+C`) gives a fast, Wayland-native magnifying glass color picker that freezes the screen and copies the hex code directly to the clipboard.
|
||||
|
||||
- **[stability] Kernel panic auto-reboot**:
|
||||
By default, a kernel panic leaves the system frozen on a black or text screen forever until physically rebooted. Setting `boot.kernelParams = [ "panic=10" "oops=panic" ]` ensures that if a catastrophic driver crash occurs, the system automatically reboots after 10 seconds, returning to a working state instead of requiring a manual hard power-cycle.
|
||||
|
||||
## Decisions `[human]`
|
||||
|
||||
Open calls only Bernardo can make; agents add options/evidence but never
|
||||
|
||||
@@ -17,6 +17,13 @@ Template:
|
||||
|
||||
---
|
||||
|
||||
## 2026-07-08 — Multi-monitor / laptop docking UX (iteration #85)
|
||||
- **Task:** NEXT item 29 — fix multi-monitor UX (panel restore on unplug, HDMI audio routing, workspace movement predictability).
|
||||
- **Did:** Upgraded `nomarchy-display-profile-watch` to use `socat` on the Hyprland IPC socket instead of 3-second polling for instantaneous reaction. Added a fallback to the `base` profile when an external monitor unplugs and no profile matches, ensuring the laptop lid turns back on. Added `SUPER+ALT+arrow` keybinds to `keybinds.nix` for explicit, predictable workspace-to-monitor movement. Verified `nomarchy-menu audio` already serves as the HDMI audio router.
|
||||
- **Verified:** Local script edits, ready for human hardware validation.
|
||||
- **Pending:** nothing.
|
||||
- **Next suggestion:** review remaining NEXT items.
|
||||
|
||||
## 2026-07-08 — Interim build-tier gate for automated lock bumps (iteration #84)
|
||||
- **Task:** PROPOSED item — automated lock bumps can break systems since they currently only run `nix flake check --no-build`.
|
||||
- **Did:** Edited `.gitea/workflows/bump.yml` to include a V1 build tier (compiling `home-manager` activation package and `nixos` toplevel) before allowing the push.
|
||||
|
||||
Reference in New Issue
Block a user