Skip to content

V0.2.0

Latest

Choose a tag to compare

@mglourido mglourido released this 18 Sep 04:17
· 37 commits to main since this release

0.2.0


Frontend

UI-exposed checks have been reorganized, more general checks added, and a fan RPM min/max calibration check added (the same calibration performed when installing the driver; this lets you know when the driver needs recalibrating)

Minor translation fixes

Minor UI/UX changes

Vital data refresh (CPU, GPU, RAM, disks, network, processes) now fully pauses when you're not looking at a screen that displays it (Home, Vital Data, Performance, Advanced, Network). Previously it kept polling the daemon every 2s regardless of screen (Settings, Lighting, Cleanup...), which on laptops with a dedicated GPU kept the Nvidia driver needlessly awake in the background. Refresh resumes instantly when returning to one of those screens.


Installer

Improved installer; the gtk4-layer-shell package is now handled by the installer in case the user doesn't have it

Fixed a possible bug at the end of installation where the generated .desktop file could fail to link correctly to the app's bin


GitHub

Improved the push GitHub workflow: more checks, code formatting, fixed outdated tests


Hardware safety

Added guards on fans, performance profiles, and lighting so nothing can run that could damage the hardware.

Fans: thermal safety checker (enabled by default): if it's hot and RPM isn't rising, switches to automatic mode; if that still doesn't raise it, switches to maximum until it cools down, then restores your previous mode. Maximum forced above 90°C. If the temperature sensor fails, fans switch to maximum or automatic depending on a new setting (maximum by default). When the daemon closes (or crashes), fans return to automatic control. Calibration and speed checks abort above 60°C. Curve validation (can't decrease speed as temperature rises). Stalled fan detection.

Performance profiles: power and turbo limits are not written unless the user has changed them. Power limits are validated for consistency before being applied. Detects if the firmware locks the limits (RAPL) and if another power manager is active (TLP, tuned...) to avoid conflicting with it. OS mode switching is disabled by default.

Lighting: in four-zone mode, writes only happen if the firmware's response matches the expected shape (option to allow truncated responses, enabled by default for compatibility). Only one process can write to the lighting hardware at a time.

Bugs

Fixed a thermal safety bug that caused the fan's automatic controller to trigger unexpectedly at high temperatures (3 simultaneous bugs fixed)

Debugging

Added a complete logging system for PYREN (tauri, daemons...). Logs are split between .cache/pyren and /var/cache/pyren/

Tests

Added tests for the pyren/app Tauri app

Full testing of function behavior (setting-by-setting testing still pending, not all are tested)