Commit graph

2025 commits

Author SHA1 Message Date
27414dafbc quickshell: pick the accent from the palette, don't trust base0D
Every icon in the bar was already bound to a Theme colour — the problem
was which one. base0D is the accent for 33 sites and every status colour
harmonises toward it, but the generator fills each slot independently:
on wallhaven-5y39p9 all six accent slots come back orange (H=0.08)
except base0D, which comes back blue-grey. Hence a blue NixOS logo and
a blue workspace pill in an amber bar.

Accent now auditions all six slots and takes the one nearest S=0.60.
Nearest, not max: max picks the neon fe5162 on wallhaven-k8dqr6, close
enough to err that errors stop reading as errors. Only 5y39p9 and
k8dqr6 change; the other four keep the colour they already had.

Renamed base0D -> accent since it no longer names the slot it comes from.
2026-08-30 14:57:37 +01:00
559ccc55db quickshell: sliders icon for quick settings, not a cog 2026-08-30 14:46:12 +01:00
7caf7f2541 quickshell: bury a full joint's depth, toast keeps one width
Toast is back to a fixed 320 — it is the same card wherever it appears
and should not restyle itself around whatever menu is open.

The residual indent was never the width step: two rounded boxes stacked
on one edge each contribute a corner that curves away over exactly one
radius, so the outline pinches and bulges at the joint. The curves only
cancel at 2*radius of overlap, where the corner circles coincide.

Burying that deep would drive the cards together, so a fused panel grows
by what it buries. Content is pinned 12px from the panel top, not
centred, so the extra height lands entirely below the cards and the
clearance stays 12px. Geometry now derives from baseH, keeping height
(which depends on fused) out of the position that decides it.
2026-08-30 14:42:46 +01:00
9eb728ca10 quickshell: match toast width to the panel it fuses with
The warp was a width step. Panel and toast are both left-anchored to the
bar, so different widths put a step on the shared right edge, and smin
fillets a step into an S-curve waist.

Toast now takes the open dropdown's drawn width, keyed off its declared
fullWidth so nothing closes a loop through the toast's own height. Below
a 200px floor there is no width worth matching (the power menu is a 64px
icon strip), so those stand off with a gap as before.
2026-08-30 14:29:02 +01:00
0ce584a261 Upload files to "walls" 2026-08-30 06:26:30 -07:00
e45c9644a1 quickshell: merge menu and toast into one surface, drop the double ease
The bump was two animations stacked: _dropdownRect is positioned off
chrome.y, so chrome already eased the panel to wherever y resolved, and
the Behavior added last commit put an OutExpo behind an OutExpo.

Panels now land ON the toast rather than a panelGap short of it, buried
half a radius so the shader smins them into one outline with a shared
waist. Cards inside still clear each other by ~14px.
2026-08-30 13:56:28 +01:00
6d58055723 quickshell: menus yield to the toast, not the other way round
The toast dodging open dropdowns meant it drifted around the column
depending on which menu was open. Invert it: the toast keeps its band
and melts into the frame as before, and a dropdown treats a live toast
as a shortened screen — its clamp ends short of the toast, so a menu
that would collide opens higher instead.

Snapping still tests against the frame, so a panel stopping above a
toast floats clear of it rather than fusing to its edge.
2026-08-30 13:50:15 +01:00
ddcc5c63be quickshell: snap dropdowns to frame by proximity, toast dodges open menus
alignTop/alignBottom were per-dropdown flags, so the battery menu pinned
to the bottom wherever its icon sat. Both replaced by a distance test
against Theme.snapDist, which the SDF already used to decide melting —
panels now fuse with a band only when they actually reach it, and a menu
that gains or loses a card re-decides on its own.

Toast steps clear of an open dropdown instead of drawing over it, and
stops melting into the frame band once it has.
2026-08-30 13:41:39 +01:00
ba4c32d852 quickshell: shared controls under one cog dropdown
Screen recorder was desktop-only, caffeine laptop-only, nightlight in
both places. Cog dropdown now holds recorder + nightlight on every host;
battery dropdown keeps the laptop-only power profile and brightness.
Caffeine stays gated: hypridle is mkIf isMacbook.
2026-08-30 13:20:49 +01:00
9b8e0b5242 redlib: default to HLS, Reddit dropped the mp4 fallback
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-30 12:44:28 +01:00
forgejo-actions[bot]
c140471ada Update flake inputs 2026-08-30 04:00:48 +00:00
a1deb804db authelia: allow reddit.nordhammer.it
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-29 16:09:48 +01:00
ce18b829cb redlib: build from upstream main, nixpkgs build is TLS-blocked 2026-08-29 14:16:13 +01:00
f97d7ac829 redlib: reddit front-end at reddit.nordhammer.it
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-29 13:45:03 +01:00
forgejo-actions[bot]
dcf7c4b0ff Update flake inputs 2026-08-29 04:00:43 +00:00
forgejo-actions[bot]
6806791202 Update flake inputs 2026-08-28 04:00:44 +00:00
f38bb57514 router: allow pelican0 bridge through firewall 2026-08-27 20:19:34 +01:00
c19f7b4a2b mediaserver: audible-cli + aaxtomp3 2026-08-27 14:32:39 +01:00
02efc0a46d quickshell: give slurp a tty-less stdin it can EOF
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-27 11:29:30 +01:00
700c85e39a quickshell: pin the focus grab around the recorder's slurp pick
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-27 10:27:15 +01:00
0d0009ca8e quickshell: run slurp from the recorder card, not inside the script
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-27 10:19:12 +01:00
forgejo-actions[bot]
87217f4675 Update flake inputs 2026-08-27 04:00:43 +00:00
11a856800a quickshell: screen recorder card in quick settings
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-26 22:52:55 +01:00
forgejo-actions[bot]
d725e68d1e Update flake inputs 2026-08-26 04:00:46 +00:00
forgejo-actions[bot]
ad5f44aef4 Update flake inputs 2026-08-25 04:00:42 +00:00
1f2f8ad5bd router: don't DHCPRELEASE the WAN lease on networkd stop 2026-08-24 19:49:59 +01:00
25319ea033 hyprland: keep Dungeon Runners tiled, suppress its fullscreen requests
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 11:30:16 +01:00
forgejo-actions[bot]
14b1882589 Update flake inputs 2026-08-24 04:00:45 +00:00
36b66e8654 cliamp: terminal winamp on desktops 2026-08-23 20:27:41 +01:00
ca63bc9544 quickshell: drop redundant keyring unlock, pam already does it in auth
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-23 19:55:10 +01:00
888eedad39 spotify: start after keyring unlock, not at hyprland startup
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-23 19:37:40 +01:00
e9ab223891 hypridle: one daemon, not two; battery dropdown pins to bottom
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-23 10:54:00 +01:00
2f50071695 lookout: package the Outlook-alike GNOME mail client
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-23 10:18:13 +01:00
1979a4957f quickshell: caffeine toggle in battery dropdown
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-23 10:07:54 +01:00
b851f73090 quickshell: second-precision clock so bar isn't stale after resume 2026-08-23 09:56:40 +01:00
forgejo-actions[bot]
6d3e4a6f87 Update flake inputs 2026-08-23 04:00:48 +00:00
618e0e0d26 quickshell: keyring unlock needs --replace, bare --unlock is a no-op
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-22 19:12:44 +01:00
bdefae41bc quickshell: unlock login keyring on lockscreen unlock
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-22 10:21:12 +01:00
forgejo-actions[bot]
c93d908cfa Update flake inputs 2026-08-22 04:00:43 +00:00
6bf3c3909e screenshots: clipboard-only, camera glyph instead of thumbnail 2026-08-21 17:13:12 +01:00
c3e8691c2c quickshell: index all YAMIS dirs, not just apps, for icon tinting
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-21 16:59:21 +01:00
e6b63d4eb1 macbook: drop geary 2026-08-21 16:54:53 +01:00
7c89ab366d quickshell: match mono icons by name, iconPath returns a URI
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-21 16:47:36 +01:00
d6dd93ea5a quickshell: match mono icons by theme dir name, not store path
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-21 16:38:04 +01:00
695e51beef quickshell: force Papirus-Fred icon theme, qt5ct bypasses gsettings
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-21 16:35:05 +01:00
a88ef1e8b2 Merge remote-tracking branch 'origin/main' 2026-08-21 14:44:16 +01:00
1d7bc04cf5 Merge branch 'worktree-yamis-survey' 2026-08-21 14:42:47 +01:00
1bea54f30c quickshell: tint YAMIS app icons to the wallpaper palette
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017EHJfY5Q72punsWX38nY1w
2026-08-21 14:40:02 +01:00
cb7b576a71 theming: YAMIS app icons under Papirus-Fred
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017EHJfY5Q72punsWX38nY1w
2026-08-21 14:25:34 +01:00
ab58af9a59 quickshell: pin wallpaper picker to top of screen
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015ARgsKhPrSr4QuNyHvYqyL
2026-08-21 12:52:09 +01:00