Commit Graph
1177 Commits
Author SHA1 Message Date
Ilya Zlobintsev fa5e8cc237 fix: add hwdata flatpak module 2026-06-19 19:05:11 +03:00
Ilya Zlobintsev 2a8fe3e7c0 fix: add new dependency to flatpak 2026-06-19 18:43:39 +03:00
Ilya Zlobintsev 0eed267ac1 fix ui imports 2026-06-19 18:33:12 +03:00
Ilya Zlobintsev 9a73dd4513 fix: ci 2026-06-19 18:24:07 +03:00
Ilya Zlobintsev 2017dbf22c chore: make display-info an optional feature, add build dependency 2026-06-19 18:21:13 +03:00
Ilya Zlobintsev 144e6aa1a9 chore: cleanup 2026-06-19 18:07:34 +03:00
Ilya Zlobintsev 2606991a9b Merge remote-tracking branch 'origin/master' into display-info 2026-06-19 18:04:28 +03:00
Ilya Zlobintsev ef30d3acf4 chore: clippy fixes 2026-06-19 17:59:38 +03:00
Ilya Zlobintsev 384a47c780 feat: reuse display handle 2026-06-19 17:56:31 +03:00
Ilya Zlobintsev 51b911476d feat: WIP nvidia 2026-06-16 22:28:07 +03:00
vepvlo 6c4e27d1d8 fix: correct nvidia fan curve pwm to percent conversion (#1055)
The curve control loop converted PWM (0-255) to the percentage NVML
expects with `/ 2.5`, mapping a 255 PWM to 102% - outside the valid
0-100 range. A curve top point of 1.0 was therefore rejected with
INVALID_ARGUMENT, after which the daemon disabled fan control for the
GPU. Static mode was unaffected because it computes the percentage
directly as `static_speed * 100`.

The divisor should be 2.55 - the inverse of the `* 2.55` percent-to-pwm
conversion already used in this file (255 / 2.55 = 100).
2026-06-08 07:15:49 +02:00
Roman Makarov 4560297377 refactor: improve gui folder structure (#1047)
* refactor: move reusable components

* move css

* refactor: move GUI modules

* use features/ and refactor pages structure

* make pwfw private again

* rollback "features"

* clean up
2026-06-06 17:44:21 +03:00
Ilya Zlobintsev aacd7d9495 feat: add GUI 2026-06-05 15:11:58 +02:00
Ilya Zlobintsev 24d400e8dd feat: use libdisplay-info, add screen size 2026-06-04 13:11:39 +03:00
Ilya Zlobintsev 99d4ddb784 chore: add other display types 2026-06-04 12:57:06 +03:00
Ilya Zlobintsev 021b290511 Merge branch 'master' into display-info 2026-06-04 12:56:10 +03:00
Ilya Zlobintsev 8677c10531 feat: dp info on amd 2026-06-04 12:53:34 +03:00
Ilya Zlobintsev efb488ceaa chore: use tokio local runtime instead of LocalSet (#1050) 2026-05-30 15:58:30 +03:00
Christopher SnowhillandIlya Zlobintsev 9391747869 chore: add another GIGABYTE 9070 XT to device_ids.json (#1049)
* Add new GPU model to device_ids.json

Add new GPU model 'Gigabyte Gaming OC ICE RX 9070 XT' to device IDs.

* fix: use existing section

---------

Co-authored-by: Ilya Zlobintsev <ilya.zl@protonmail.com>
2026-05-30 15:14:30 +03:00
Nicolas OchsnerandIlya Zlobintsev c70ef77607 feat: add range selection feature for VF curve editor (#1032)
* Add range selection for vf curve editor

* Add shaded area and modified cursor

* Disable moving selection endpoint when editing is disabled

* Check if any points are included before setting

* Remove selection when editing is disabled

* chore: unselect vf curve when disabling editing faster

---------

Co-authored-by: Ilya Zlobintsev <ilya.zl@protonmail.com>
2026-05-29 23:59:59 +03:00
Ilya Zlobintsev 5972c098c0 fix: gracefully handle missing get_device_api_info in daemon 2026-05-28 09:31:01 +03:00
Ilya Zlobintsev b017b9ee20 fix: gracefully handle missing get_device_api_info in daemon 2026-05-28 09:30:26 +03:00
Ilya Zlobintsev 8864b6284b perf: fetch Vulkan/OpenCL info asynchronously after startup (#1046) 2026-05-28 09:14:47 +03:00
Ilya Zlobintsev 8d2536da65 chore: bump libdrm-amdgpu 2026-05-28 09:11:27 +03:00
Ilya Zlobintsev e5c5822f3b feat: use banner instead of dialog to signal daemon reconnection (#1044) 2026-05-26 22:16:19 +03:00
Ilya Zlobintsev 60e81fdb30 refactor: use helper methods for component launch (#1041) 2026-05-25 23:13:13 +03:00
Ilya Zlobintsev b3b007e2da perf: avoid unnecessary ui config rewrite on startup (#1040) 2026-05-25 22:51:13 +03:00
Ilya Zlobintsev ddfadbb048 fix: wrap flatpak service startup with bash (#1039) 2026-05-25 10:21:16 +03:00
Ilya Zlobintsev e60b162e3f chore: make clippy warnings fail CI, fix them (#1038)
* chore: make clippy warnings fail CI, fix them

* chore: pin docker cache action
2026-05-24 21:25:23 +03:00
Ilya Zlobintsev 8d23a31fff chore: move gpu test data to a shared directory (#1037) 2026-05-24 19:27:26 +03:00
Roman Makarov 35f548bc25 feat: support amd deep sleep state (#1035)
* upd deps

* migrate to PowerLevelId

* update snapshot

* cleanup

* fix fmt
2026-05-24 00:24:12 +03:00
Roman Makarov 877f550d37 feat: add custom loader (#1031)
* feat: add custom loader

* remove min_init duration for loader

* slowdown animation
2026-05-22 21:55:18 +03:00
Ilya Zlobintsev df7c61e4cd Revert "WIP UI snapshot tests"
This reverts commit 3027d72bd5.
2026-05-22 21:47:50 +03:00
Ilya Zlobintsev 3027d72bd5 WIP UI snapshot tests 2026-05-22 21:47:42 +03:00
Ilya Zlobintsev 7548f1d032 fix: missing fan curve options on nvidia (#1034) 2026-05-22 19:20:28 +03:00
Gabriele MuscoandGabriele Musco 33d7941aef feat: use revealer for graphs window edit mode toolbar (#1029)
Co-authored-by: Gabriele Musco <gabmus@disroot.org>
2026-05-20 09:56:02 +03:00
Gabriele MuscoandGabriele Musco 07b080b803 feat: rework app menu using actions; add keyboard shortcuts for preferences and quit (#1028)
Co-authored-by: Gabriele Musco <gabmus@disroot.org>
2026-05-20 09:52:49 +03:00
Roman MakarovandIlya Zlobintsev a36039ff98 fix: fix regression with dirty init state (#1027)
* fix: prevent SettingsChanged event during fan_curve_frame init

* use blocking instead

* chore: slightly nicer workaround

---------

Co-authored-by: Ilya Zlobintsev <ilya.zl@protonmail.com>
2026-05-19 21:44:49 +03:00
Arimil 76d2ea6008 chore: add Gigabyte RTX 4070 Ti Super WindForce Max OC to device ids (#1026) 2026-05-18 21:00:04 +03:00
Ilya Zlobintsev 77844a3b49 test 2026-05-15 23:52:43 +03:00
Roman Makarov 05094b12fe perf: optimize gui bootstrap (#1023)
* feat: optimize gui bootstrap

* prefer dedicated gpu

* refactor profiles init

* upd

* make loader bigger

* fix imports
2026-05-15 23:20:41 +03:00
Roman Makarov 965f9ced2d feat: remember window size (#1022) 2026-05-14 22:09:32 +03:00
e-tho dc0af6d1ff feat: add hold/release cookie mechanism for profile state management (#995)
* feat: add hold/release cookie mechanism for profile state management

Clients that need to temporarily activate a profile had no safe
way to restore the previous state on cleanup, and concurrent clients
would silently overwrite each other's profile choice.

Introduce HoldProfile/ReleaseProfile commands modelled after
power-profiles-daemon's HoldProfile/ReleaseProfile API. Acquiring a
hold activates the requested profile and returns an opaque cookie; the
previous state is saved automatically. Releasing the cookie restores
it. Multiple concurrent holds are supported with last-write-wins
semantics — releasing the active hold falls back to the next most
recent one, and releasing the last hold restores the original state.
If the client connection drops without releasing, the hold is released
automatically.

* fix: extract type aliases for profile hold fields

* refactor: remove requester field from HoldProfile request

* refactor: improve hold lifecycle signalling
2026-05-14 10:09:29 +03:00
Ilya Zlobintsev 4b050d46e5 chore: update vulkan schema to 1.4.351 2026-05-14 10:03:08 +03:00
Ilya Zlobintsev 34bdd1919b fix: bump flatpak sources 2026-05-14 00:39:18 +03:00
Ilya Zlobintsev bc4770bbe1 fix: bump amdgpu-sysfs with deep sleep pstate handling (#1021) 2026-05-14 00:04:45 +03:00
Roman Makarov 79f9532d72 chore: improve p-state reads logs (#1019)
* chore: improve p-state reads logs

* add more logs

* fmt

* use inspects
2026-05-12 20:35:55 +03:00
Ilya Zlobintsev 84ea62f8df fix: avoid leaking amdgpu device descriptors on reload (#1020) 2026-05-12 20:13:20 +03:00
Ilya Zlobintsev eee2b3a41f fix: bump libdrm_amdgpu_sys to 0.8.14 (#1018) 2026-05-12 19:11:37 +03:00
Ilya Zlobintsev 756953f62a doc: mention nvidia VF curve in README 2026-05-11 00:07:56 +03:00