Publish tool cleanup and Framework monitoring refinements

This commit is contained in:
ajp_anton
2026-09-12 05:17:02 +00:00
parent db352083cf
commit 7f56368674
51 changed files with 1487 additions and 341 deletions
+36 -9
View File
@@ -36,7 +36,8 @@ its colour; existing enabled lines keep theirs. Disabled colours are released.
Axes use round ticks and relative ages, with units below the vertical axes.
Hover draws a guide at the same timestamp on every graph, even when their
time spans differ. The tooltip still describes only the graph under the pointer.
time spans differ. The popup describes only the graph under the pointer, stays
visible while hovering and follows new samples without needing mouse movement.
Hover for timestamps and the nearest
available readings; no readings are invented across gaps or sleep. Battery charge
uses the left percentage axis and rate the right watts axis (positive charging,
@@ -49,21 +50,45 @@ selected span has been collected. These viewing controls take effect immediately
and are remembered; the default is 24 hours with stretching enabled.
All detected sensors retain 24 hours of readings in memory, even when hidden,
plus one boundary sample for clipping. Quitting the app clears this history.
Monitor and tray lines show time-weighted averages per pixel, assuming straight
lines between readings. A faint band extends from the average to the maximum;
brief peaks remain visible without dominating the solid line. Missing data and
sleep remain gaps. Hover readings still report the original samples.
Changing the sampling interval preserves older lines and hover readings at their
original cadence; missing readings and sleep remain gaps.
Monitor and tray graphs fill each pixel column from its time-weighted average
to its maximum when readings are compressed. With sparse readings, columns
follow straight lines between samples. Bands have a minimum vertical height of
two logical pixels, padded equally above and below; they never widen sideways.
Monitor columns align to physical pixels and the vertical minimum follows display
scaling. Plasma scales the tray's 64-pixel icon image to its chosen display size.
Missing data and sleep remain gaps. Hover readings report the original samples.
Sampling choices are 0.5/1/2/4 seconds for frequencies and temperatures, and
Power usage shows the detected RAPL domains (CPU package, cores, uncore and memory)
and hwmon power readings. Unvalidated platform power and ACPI fan power-table
entries are excluded; fan speed and duty cycle remain available separately.
These domains overlap and must not be added together. Uncore coverage depends
on the hardware; it is not labelled GPU power.
RAPL watts are energy-counter differences divided by elapsed monotonic time.
Wraparound is handled; missing reads, long gaps, detected resets and sleep restart
the baseline instead of producing a spike. MSR/MMIO duplicates are not plotted
twice. The counters must be readable; this app does not change their permissions.
Power readings are also available as tray metrics, using the same history.
Sampling choices are 0.5/1/2/4 seconds for frequencies, power, fan and temperatures, and
15/30/60/120 seconds for the battery graph. Tray autostart is optional.
Closing the window leaves monitoring in the tray; Quit exits the application.
The Tray icon tab selects a normal icon, a history graph, or a number. Sources
The Tray icon tab supports one to ten independently configured icons, each showing
an application icon, a history graph, or a number. Settings cards wrap to fit the
window. New icons default to the application icon; your existing configuration
becomes Icon 1. Reducing the count keeps hidden drafts until Save and Apply;
saving retains only visible icons. The Move icon arrows swap all settings with
the adjacent icon while keeping the position numbers fixed. Undo restores the
saved set. All icons share
sensor sampling and history, and each has its own appearance and hover choices.
Sources
include CPU usage, CPU/GPU frequency, temperatures, charge level and battery rate.
Sensor graphs share Monitor's history, including gaps, regardless of which
sensor is selected for the tray. CPU usage also retains 24 hours. Switching
readings or resuming from sleep does not clear history. Frequency numbers use
GHz. The tray has optional
borders, a transparent or coloured background, line and fill colours, and optional
borders, a background colour with adjustable opacity, line and fill colours, and optional
area fill (including adjustable opacity). Frequency ceilings and temperature
ranges are saved per sensor; battery rate also has adjustable bounds (initially
7575 W), while percentages use 0100.
@@ -74,6 +99,8 @@ Outside readings can follow the inner edge, optionally in a different colour,
or be hidden. The line remains inside the border when a border is enabled.
Colour buttons show the opaque RGB swatch and label opacity separately, so a
translucent fill is not mistaken for a darker RGB colour.
Background opacity can be zero for full transparency; the former Transparent
background checkbox migrates to zero opacity without changing the RGB colour.
History and out-of-range controls are nested under the History graph display
choice. Hover information is configured separately: CPU usage; battery level
and remaining/full energy in mWh, followed by signed power and time to the charge
@@ -82,7 +109,7 @@ board temperatures. Multiple temperatures have a heading and indented lines.
Missing sensors are unavailable in the settings page. Batteries reporting only
charge are converted to mWh using nominal voltage.
Choose zero to three top CPU applications, displayed below CPU usage in descending
order. Zero disables process sampling; the previous checkbox migrates to zero or
order. Process sampling stops when no icon requests it; the previous checkbox migrates to zero or
one. Readable CPU counters are sampled while enabled. Processes are grouped by
application where identifiable, otherwise by executable. KDE's catalogue supplies
friendly names; ambiguous matches use executable names. Percentages use total