| Age | Commit message (Collapse) | Author | Files | Lines |
|
Sum drm-resident-vram0 from DRM fdinfo, the same per-client counters
gputop reads, counting each drm-client-id once since a client repeats
its totals on every fd it holds. One grep over /proc/*/fdinfo, about
10ms warm, sampled through new_gate every ~2s.
The 12 GiB total is hardcoded: xe exposes no VRAM capacity in sysfs.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Add card.ICON and a card.title helper that draws the glyph in the
highlight colour before the label, at the label's own size. The eight
labelled cards use it, in both the fit_unit width measurement and the
draw, so the icon cannot overrun a narrow cell. Clock (no label) and
weather (condition glyph already) are unchanged, and the no-data notice
titles stay text-only.
Codepoints were chosen against a rendered contact sheet, not fontconfig
alone, since a wrong codepoint draws a plausible neighbour.
|
|
The 'GPU' and 'CACHE' labels shared the big number's baseline, so they
read as sitting under it. Move them to the card's top-left, the same
title position the other cards use, level with the top of the value.
|
|
The big value moves to the right of the heading, on the same baseline,
so the card's width carries it instead of leaving the right half empty.
Type now scales to fill the cell: card.fit_unit measures the rows and
returns the largest size that fits the width, and the widget takes the
smaller of that and its height budget, shrinking only where a row would
collide.
|
|
Memoize hwmon_dir by chip name so sensor reads no longer popen grep on
every frame, cache misses included. Floor fractional byte counts in
card.human so it cannot raise. Drop the GPU package-temperature row,
which duplicated the headline. Set umask before mkdir in both samplers
so a fresh cache directory is not world-readable. Make render.lua exit
non-zero on a draw error and tolerate an unset HOME.
|
|
|