Some checks failed
Check / eval (push) Has been cancelled
#139 — calcurse/doctor floated full-screen. Two faults stacked, which is why it looked like the float rules were dead: 1. Hyprland 0.55.4 silently ignores percentage `size` rules. Matrix on hardware (both orders, kitty memory off): `size 60% 65%` never applies, `size 1536 936` applies either way, configerrors empty both times. Rule order was a red herring. 2. Kitty defaults to remember_window_size=yes and replays the last OS window's size into every float — so after a tiled terminal, a sheet opens maximized. This is the Ghostty regression: Ghostty had no such memory, so fault 1 stayed invisible until #95. Fix: remember_window_size=no (floats must be deterministic) and the sheets ask for their own size — term-sheet.nix reads the focused monitor and hands kitty the px, because px in a rule cannot mean "a fraction of *this* screen" and one pair cannot serve 2560x1440 and the 1366x768 Acer (#131). Those windows keep float/center and deliberately carry no size rule. #141 — the updates click did nothing: whole-swaps hand-wrote `sh -c '$TERMINAL …'` and Waybar has no TERMINAL (home.sessionVariables → login shells only; the bar is spawned by Hyprland). Fixed at the root: `nomarchy-updates upgrade-window` opens its own window, so all five call sites name one env-free command and a theme file stops having an opinion about terminals. checks.waybar-swap-env guards the class. Bernardo asked mid-task for the update window to float — it is now the third caller of the sheet helper (com.nomarchy.updates, 45%x50%). V3 on the dev box: calendar 1536x936, doctor 1408x1008, updates 1152x720 — exactly the intended fractions, floating and centred; #141 driven under `env -i` with no TERMINAL, matching Waybar's real environment; the guard proven by reintroducing the bug. Acer V3 queued. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
183 lines
4.7 KiB
JSON
183 lines
4.7 KiB
JSON
{
|
|
"margin-top": 0,
|
|
"margin-left": 0,
|
|
"margin-bottom": 0,
|
|
"margin-right": 0,
|
|
"height": 34,
|
|
"layer": "bottom",
|
|
"position": "top",
|
|
"spacing": 0,
|
|
"reload_style_on_change": true,
|
|
"modules-left": [
|
|
"custom/nomarchy",
|
|
"hyprland/workspaces"
|
|
],
|
|
"modules-center": [
|
|
"clock"
|
|
],
|
|
"modules-right": [
|
|
"custom/recording",
|
|
"idle_inhibitor",
|
|
"custom/nightlight",
|
|
"hyprland/language",
|
|
"custom/updates",
|
|
"pulseaudio",
|
|
"custom/powerprofile",
|
|
"battery",
|
|
"custom/vpn",
|
|
"custom/airplane",
|
|
"custom/doctor",
|
|
"custom/notification",
|
|
"tray",
|
|
"custom/powermenu"
|
|
],
|
|
"custom/nomarchy": {
|
|
"interval": "once",
|
|
"format": "\uf000",
|
|
"on-click": "nomarchy-menu",
|
|
"tooltip-format": "Nomarchy menu"
|
|
},
|
|
"hyprland/workspaces": {
|
|
"disable-scroll": true,
|
|
"all-outputs": true,
|
|
"on-click": "activate",
|
|
"on-scroll-up": "hyprctl dispatch workspace r+1",
|
|
"on-scroll-down": "hyprctl dispatch workspace r-1"
|
|
},
|
|
"clock": {
|
|
"format": "{:%H:%M \u00b7 %a %d %b}",
|
|
"on-click": "nomarchy-calendar",
|
|
"tooltip": true,
|
|
"tooltip-format": "{:%A, %d %B %Y\n%Z (UTC%z)}"
|
|
},
|
|
"custom/recording": {
|
|
"return-type": "json",
|
|
"interval": 10,
|
|
"signal": 8,
|
|
"exec": "nomarchy-record status",
|
|
"on-click": "nomarchy-record stop"
|
|
},
|
|
"idle_inhibitor": {
|
|
"format": "{icon}",
|
|
"format-icons": {
|
|
"activated": " \udb80\udd76 ",
|
|
"deactivated": " \udb83\udfaa "
|
|
}
|
|
},
|
|
"custom/nightlight": {
|
|
"return-type": "json",
|
|
"interval": 3,
|
|
"exec": "nomarchy-nightlight status",
|
|
"on-click": "nomarchy-nightlight toggle"
|
|
},
|
|
"hyprland/language": {
|
|
"format": "<span size='13pt'>\udb80\udf0c </span>{short}",
|
|
"tooltip": false
|
|
},
|
|
"custom/updates": {
|
|
"return-type": "json",
|
|
"interval": 1800,
|
|
"signal": 9,
|
|
"exec": "nomarchy-updates status",
|
|
"on-click": "nomarchy-updates upgrade-window"
|
|
},
|
|
"pulseaudio": {
|
|
"scroll-step": 5,
|
|
"format": "<span size='13pt'>{icon}</span>{volume}%",
|
|
"format-bluetooth": "<span size='13pt'>{icon}\uf294 </span>{volume}%",
|
|
"format-bluetooth-muted": "\uf6a9 {icon}\uf294",
|
|
"format-muted": "<span size='13pt'>\uf6a9 </span>muted",
|
|
"format-icons": {
|
|
"headphone": "\uf025 ",
|
|
"hands-free": "\uf025 ",
|
|
"headset": "\uf025 ",
|
|
"phone": "\uf095 ",
|
|
"portable": "\uf095 ",
|
|
"car": "\uf1b9 ",
|
|
"default": [
|
|
"\uf026 ",
|
|
"\uf027 ",
|
|
"\uf028 "
|
|
]
|
|
},
|
|
"on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle",
|
|
"on-click-right": "pwvucontrol",
|
|
"tooltip-format": "{desc} | {volume}%"
|
|
},
|
|
"custom/powerprofile": {
|
|
"return-type": "json",
|
|
"interval": 5,
|
|
"exec": "nomarchy-powerprofile-status",
|
|
"on-click": "nomarchy-menu powermgmt"
|
|
},
|
|
"battery": {
|
|
"interval": 30,
|
|
"states": {
|
|
"warning": 25,
|
|
"critical": 10
|
|
},
|
|
"format": "<span size='13pt'>{icon}</span>{capacity}%",
|
|
"format-charging": "<span size='13pt'>\uf0e7 </span>{capacity}%",
|
|
"format-plugged": "<span size='13pt'>\uf1e6 </span>{capacity}%",
|
|
"tooltip-format-plugged": "Plugged in, not charging \u2014 held at {capacity}% by the battery charge cap\nCharging resumes ~10% below the cap \u00b7 click to adjust",
|
|
"format-icons": [
|
|
"\uf244 ",
|
|
"\uf243 ",
|
|
"\uf242 ",
|
|
"\uf241 ",
|
|
"\uf240 "
|
|
],
|
|
"on-click": "nomarchy-menu powermgmt",
|
|
"tooltip-format": "Battery status"
|
|
},
|
|
"custom/vpn": {
|
|
"return-type": "json",
|
|
"interval": 5,
|
|
"exec": "nomarchy-vpn-status",
|
|
"on-click": "nomarchy-vpn"
|
|
},
|
|
"custom/doctor": {
|
|
"return-type": "json",
|
|
"format": "{}",
|
|
"interval": 300,
|
|
"signal": 10,
|
|
"exec": "nomarchy-doctor-status",
|
|
"on-click": "nomarchy-menu doctor"
|
|
},
|
|
"custom/notification": {
|
|
"format": "{icon}",
|
|
"return-type": "json",
|
|
"exec": "swaync-client -swb",
|
|
"exec-if": "which swaync-client",
|
|
"escape": true,
|
|
"tooltip": true,
|
|
"on-click": "swaync-client -t -sw",
|
|
"on-click-right": "swaync-client -d -sw",
|
|
"format-icons": {
|
|
"none": "\udb80\udc9c",
|
|
"notification": "\udb80\udc9a",
|
|
"dnd-none": "\udb80\udc9b",
|
|
"dnd-notification": "\udb80\udc9b",
|
|
"inhibited-none": "\udb80\udc9b",
|
|
"inhibited-notification": "\udb80\udc9b",
|
|
"dnd-inhibited-none": "\udb80\udc9b",
|
|
"dnd-inhibited-notification": "\udb80\udc9b"
|
|
}
|
|
},
|
|
"tray": {
|
|
"spacing": 8
|
|
},
|
|
"custom/powermenu": {
|
|
"format": "\uf011",
|
|
"on-click": "nomarchy-menu power",
|
|
"tooltip": false
|
|
},
|
|
"custom/airplane": {
|
|
"return-type": "json",
|
|
"interval": 5,
|
|
"signal": 11,
|
|
"exec": "nomarchy-airplane status",
|
|
"on-click": "nomarchy-airplane toggle"
|
|
}
|
|
}
|