Commit Graph
233 Commits
Author SHA1 Message Date
Ilya Zlobintsev bd9aa0c1df feat: add UMA carveout option for AMD iGPUs (#1219)
* feat: UMA carveout daemon option

* feat: working UI

* chore: switch to released lib
2026-10-04 13:44:54 +03:00
Ilya Zlobintsev 4d02610d46 refactor: abstract away intel DRM logic, add a mock implementation (#1182)
* refactor: put intel drm logic behind a trait, add mock

* chore: use full device snapshot

* feat: make mock usable not just from tests
2026-08-29 17:48:57 +03:00
Ilya Zlobintsev c3a574c4b7 fix: Mb -> MiB in vram size 2026-08-29 13:18:14 +03:00
Ilya Zlobintsev df20b606de feat: show additional clock domains in UI (#1172)
* feat: show additional clock domains in UI

* fix: tests
2026-08-23 18:14:33 +03:00
Roman Makarov 6f02740b2f fix: swtich nvidia V/F curve to offsets (#1161)
* wip

* clean up

* upd comment

* fix vfcurve flip to enabled

* fmt

* rename old curve_is_configured

* move enable edit checkbox from VFCurve to OC panel

* cleanup tests

* set offset 0 on curve reset

* add defauilt to freq_offset

* bail if vf_curve is invalid or not editable

* hide apply/default buttons on ro curve

* fix curve margins

* vfcurve - show info that editing is disabled

* move top vf curve ceiling a bit

* center vf-curve-editing label

* fix flipping edit vfcurve checkbox

* easen up warning

* add abs to offset migration

* fix point_min_offset_mhz calculation

* don't let offset to be same or bigger than basefreq

* fix test
2026-08-23 16:16:21 +03:00
Roman Makarov bd687203e2 feat: fmt gpu name in gpu-picker (#1157)
* feat: fmt gpu name in gpu-picker

* move implementation to daemon

* move to schema

* add Radeon/Geforce prefix back

* remove from info_elements
2026-08-17 10:49:12 +03:00
Tunahan Yardımcı 979f087096 fix: complete Turkish translations (#1152)
* fix: complete Turkish translations

* fix: localize service setup dialog
2026-08-15 08:32:09 +03:00
Ilya Zlobintsev 871d166a7f fix: show time in local timezone in chart rendering 2026-08-14 09:54:11 +03:00
Ilya Zlobintsev 2aa6d0d770 chore: prepare for release 2026-08-12 09:50:26 +03:00
Roman Makarov 8342f83d34 feat: support nvidia voltage boost (#1133)
* feat: implement voltage boost for nvidia

* make NvApiVoltageBoost private

* fix typo

* cleanups

* switch from tooltip to popover
2026-08-02 23:00:10 +03:00
Ilya Zlobintsev b3efeb273f feat: new service setup GUI (#1043)
* feat: WIP service setup GUI

* fix: avoid crash when closing dialog with app already running

* wip

* feat: make it more usable

* wip logs

* feat: working logs display

* feat: use new dialog for version mismatch

* chore: cleanup

* fix: tcp functionality

* feat: handle setup errors

* perf: avoid refetching system info

* fix test
2026-07-26 18:54:32 +03:00
Ilya Zlobintsev 504d300d02 feat: add detach/reattach option to temporarily ignore a GPU (#1123)
* feat: add detach/reattach option to temporarily ignore a GPU

* chore: require explicit gpu id arg for detach

* feat: keep NVML and NvAPI behind a refcount instead of global init

* fix: clippy
2026-07-25 19:01:59 +03:00
Ilya Zlobintsev 2d7c5c23c6 feat: add per-memory-chip temperatures for Nvidia GDDR6X/GDDR7 (#1125)
* feat: GDDR6x per-chip sensors

* feat: handle GDDR7, better labels

* chore: improve labeling

* fix: ui test
2026-07-24 22:01:51 +03:00
Roman MakarovandIlya Zlobintsev 852b3e5db6 chore: update rust deps (#1110)
* chore: update rust deps

* fix

* chore: add fix for proc-macro-error-2 warning

* fix: re-update bitflags

---------

Co-authored-by: Ilya Zlobintsev <ilya.zl@protonmail.com>
2026-07-12 23:24:38 +03:00
Roman MakarovandIlya Zlobintsev 41c4f3a999 feat: support nvidia powermizer (#1092)
* update nvml bindings

* add basic power-mizer get/set

* upd generated-sources

* simplify schema

* finish rename

* gui: drop nvidia_power_mizer_modes

* controller: remove get_nvidia_power_mizer_info

* minor clean-ups

* hacky fix of tests

* use correct repo url for nvml-wrapper

* controller: rollback to Auto when no value is supplied

* gui: handle set_model reset on each tick

* chore: extremely minor cleanup

---------

Co-authored-by: Ilya Zlobintsev <ilya.zl@protonmail.com>
2026-07-12 21:42:20 +03:00
Ilya Zlobintsev acefe5b4d6 feat: add GTT usage bar (#1053)
* refactor: make size group less verbose

* feat: add GTT usage indicator for AMD

* feat: make GTT stat available in the graphs
2026-07-01 22:22:24 +03:00
Ilya Zlobintsev eba0b999aa chore: bump flatpak runtime 2026-06-26 22:43:49 +03:00
c112af23d5 Translations update from Fedora Weblate (#1009)
* chore: translated using Weblate (Korean)

Currently translated at 100.0% (23 of 23 strings)

chore: translated using Weblate (Korean)

Currently translated at 100.0% (23 of 23 strings)

chore: translated using Weblate (Korean)

Currently translated at 100.0% (23 of 23 strings)

chore: added translation using Weblate (Korean)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Junghee Lee <daemul72@gmail.com>
Co-authored-by: 김인수 <simmon@nplob.com>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/ko/
Translation: LACT/lact-schema

* chore: translated using Weblate (Lao)

Currently translated at 100.0% (23 of 23 strings)

chore: added translation using Weblate (Lao)

Co-authored-by: Bone NI <bounkirdni@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/lo/
Translation: LACT/lact-schema

* chore: translated using Weblate (Russian)

Currently translated at 100.0% (23 of 23 strings)

Co-authored-by: Andrei Stepanov <adem4ik@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/ru/
Translation: LACT/lact-schema

---------

Co-authored-by: Junghee Lee <daemul72@gmail.com>
Co-authored-by: 김인수 <simmon@nplob.com>
Co-authored-by: Bone NI <bounkirdni@gmail.com>
Co-authored-by: Andrei Stepanov <adem4ik@gmail.com>
2026-06-25 23:14:00 +03:00
Roman MakarovandIlya Zlobintsev 36e273fc90 feat: de-couple nvidia target temp from amd pmfw target temp (#1086)
* migrate schema/config

* gui: de-couple nvidia and amd target temp

* de-couple reset

* fix tests

* feat: rework target temperature setting

* chore: revert unnecessary rename

* chore: avoid adding new option to SetFanControl call

---------

Co-authored-by: Ilya Zlobintsev <ilya.zl@protonmail.com>
2026-06-24 22:43:27 +03:00
Ilya Zlobintsev 8b5523db4e feat: QOL for displays info (#1085)
* feat: show message when no displays are detected

* feat: avoid showing 0 when dp info cannot be read
2026-06-23 12:08:44 +03:00
Ilya Zlobintsev e2caa24ca8 feat: add displays info (#1052)
* test

* feat: dp info on amd

* chore: add other display types

* feat: use libdisplay-info, add screen size

* feat: add GUI

* feat: WIP nvidia

* feat: reuse display handle

* chore: clippy fixes

* chore: cleanup

* chore: make display-info an optional feature, add build dependency

* fix: ci

* fix ui imports

* fix: add new dependency to flatpak

* fix: add hwdata flatpak module
2026-06-19 22:22:03 +03:00
Ilya Zlobintsev 8864b6284b perf: fetch Vulkan/OpenCL info asynchronously after startup (#1046) 2026-05-28 09:14:47 +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
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
Tunahan Yardımcı f31d862060 chore: add Turkish translations (#1011) 2026-05-09 18:19:09 +03:00
Ilya Zlobintsev 3a4125879a feat: improve profile process rule selector (#1003)
* feat: improve profile process rule selector

* perf: only convert filter to lowercase once
2026-05-02 22:03:52 +03:00
Weblate (bot)andМарко Костић dcaf0e5e75 chore: translated using Weblate (Serbian) (#977)
Currently translated at 100.0% (23 of 23 strings)


Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/sr/
Translation: LACT/lact-schema

Co-authored-by: Марко Костић (Marko Kostić) <marko.m.kostic@gmail.com>
2026-04-25 18:13:38 +03:00
Vukašin VojinovićandIlya Zlobintsev 56e4d9d3bd chore: update dependencies (#979)
* chore: update dependencies

* chore: update flatpak sources

---------

Co-authored-by: Ilya Zlobintsev <ilya.zl@protonmail.com>
2026-04-22 18:46:10 +03:00
Ilya Zlobintsev 2fa29cc335 chore: bump version 2026-04-19 17:51:05 +03:00
Weblate (bot)andМарко Костић e4bac00c38 chore: added translation using Weblate (Serbian) (#960)
Co-authored-by: Марко Костић (Marko Kostić) <marko.m.kostic@gmail.com>
2026-04-18 23:23:55 +03:00
Ilya Zlobintsev 09f1bc1893 feat: filter out "non-primary" temperatures for immediate display, move them to a popdown (#959)
* feat: filter out "non-primary" temperatures for immediate display, move them to a popdown

* fix: use different item based on presence of secondary sensors
2026-04-18 18:16:16 +03:00
Ilya Zlobintsev 3d5c216374 feat: add Nvidia VF curve editor (#957)
* feat: WIP nvidia VF curve support

* feat: drag whole curve by holding shift

* feat: add right click menu to flatten curve

* feat: more controls on the VF curve, add button to open editor

* feat: add locked clocks indicators to vf curve

* chore: hide editor button on no curve

* feat: make visible curve range configurable

* fix: disallow right click menu when readonly

* chore: button sizing
2026-04-18 16:17:52 +03:00
e459d91fd5 Translations update from Fedora Weblate (#938)
* chore: translated using Weblate (Hungarian)

Currently translated at 100.0% (23 of 23 strings)

Co-authored-by: Balázs Meskó <meskobalazs@mailbox.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/hu/
Translation: LACT/lact-schema

* chore: translated using Weblate (Indonesian)

Currently translated at 100.0% (23 of 23 strings)

Co-authored-by: Arif Budiman <arifpedia@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/id/
Translation: LACT/lact-schema

* chore: translated using Weblate (Kabyle)

Currently translated at 8.6% (2 of 23 strings)

chore: added translation using Weblate (Kabyle)

Co-authored-by: ButterflyOfFire <butterflyoffire@users.noreply.translate.fedoraproject.org>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/kab/
Translation: LACT/lact-schema

* chore: translated using Weblate (Ukrainian)

Currently translated at 78.2% (18 of 23 strings)

chore: translated using Weblate (Ukrainian)

Currently translated at 78.2% (18 of 23 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Telion Fondrad <telion.fondrad@gmail.com>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/uk/
Translation: LACT/lact-schema

---------

Co-authored-by: Balázs Meskó <meskobalazs@mailbox.org>
Co-authored-by: Arif Budiman <arifpedia@gmail.com>
Co-authored-by: ButterflyOfFire <butterflyoffire@users.noreply.translate.fedoraproject.org>
Co-authored-by: Telion Fondrad <telion.fondrad@gmail.com>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
2026-04-11 11:34:03 +03:00
Ilya Zlobintsev 197414f597 feat: report AMD IP info (#942)
* feat: report AMD IP info (daemon part)

* feat: basic ui

* chore: update screenshots

* feat: improve ip info ui
2026-03-20 09:37:13 +02:00
Roman Makarov d1351fb27d feat: improve gpu stats UI (#903)
* gpu-stats: split into 2 sections

* wip

* move clocks to the top

* use p-states to calcualte min/max

* re-arrange layout

* add css

* remove % sign from fmt_fan

* clean up

* make spacing more consistent

* refactor clocks level

* fix typo and remove unnecessary margin

* fix warning

* switch stats and leverbars

* add default width

* upd stat minwidth

* add GpuStatsSectionMsg

* add a test-case for fmt_human_bytes with 90mb and GB precision
2026-02-26 19:45:20 +02:00
Roman MakarovandIlya Zlobintsev d39b963ca3 feat: support multi-column layout for adjustment-rows lists (#892)
* move box styles

* split into 2 lists

* wrap into flow-box

* clean up

clean up

clean up

clean up

replace get_factory with less verbose set_clock method

* fmt

* split Adjustment rows into multiple groups

* try columns

* wip

* finish markup

* move nvidia OC info popover

* fmt

* remove comments from schema

* fmt

* refactor

* add adjustment groups

* change warning text

* upd spacing

* move AdjustmentGroups

* refactor: make AdjustmentGroup a factory component, create them dynamically

* fix layout

* chore: drop unused param

* remove misleading comment

---------

Co-authored-by: Ilya Zlobintsev <ilya.zl@protonmail.com>
2026-02-21 22:36:29 +02:00
Ilya Zlobintsev f09c79a558 chore: add Acer B580 Nitro device id 2026-02-01 11:44:27 +02:00
Ilya Zlobintsev e5a3eb1509 chore: update to rust 2024 edition (#889)
* chore: bump rust edition to 2024

* chore: another chunk of clippy fixes

* chore: fix warning in bindings

* chore: restructure awkward unsafe blocks

* chore: reformat

* chore: clippy fix

* chore: bump rust release in docker build
2026-01-31 23:43:43 +02:00
Roman Makarov 05c85cd111 feat: refactor formatters and add gui tests (#883)
* move formatters to formatting file and add tests

Signed-off-by: Roman Makarov <rmakarov94@gmail.com>

* implement feedback

* fmt

* fix i18n mock

* fmt

* move tests

* trim .0 differently

---------

Signed-off-by: Roman Makarov <rmakarov94@gmail.com>
2026-01-31 21:24:33 +02:00
Hosted WeblateandDerg Inn d5f47040d8 chore: translated using Weblate (Hungarian)
Currently translated at 100.0% (23 of 23 strings)

chore: added translation using Weblate (Hungarian)

Co-authored-by: Derg Inn <thehuntergamesjani@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/hu/
Translation: LACT/lact-schema
2026-01-25 19:34:46 +02:00
Hosted Weblateandnaly zzwd de1ab80fe2 chore: translated using Weblate (Catalan)
Currently translated at 100.0% (23 of 23 strings)

chore: added translation using Weblate (Catalan)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: naly zzwd <xeanhort007@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/ca/
Translation: LACT/lact-schema
2026-01-17 20:21:09 +02:00
Roman Makarov b1ea5215a3 feat: update defaults for PageContent and InfoRow (#854)
* upd style for the power limit widget

* re-ogranise content of gpu stats block

* rework InfoRow component to use dim labels

* update PageSection

* page_section: set the default padding

* migrate custom PageContent children to InfoRow

* add info_row_level component

* fix fmt

* page_section fmt

* use css consts from relm

* make info_row parent of info_row_level

* fix fmt

* set max_children_per_line to 2

* upd info page to fit 2 rows

* upd software page

* software_page: upd opencl and handle set_visible correctly

* migrate features and extensions to separate clickable rows instead of buttons

* fmt

* rework cache-row to fit current design

* move cache-info InfoRow into main FlowBox

* add frame with accent color for non-adw build

* remove offsets from the level_bar to

* "fix" warning

* remove recolor for the frame border

* thermals page: move InfoRows into flowBox

* add warning css on oc-warning

* add margin to pstates to follow the margins of other elements

* page_section: move styles to macro, remove container class from thermals_page widget

* fmt

* fix thermals Stack container

* remove unused import

* remove some checker exceptions from setters on InfoRowExt

* add spacing 5 between info row value and label

* fix warnings and use view macro on info_row_level

* set static width for the main container

* add hover effect clickable infoRows

* set set_max_children_per_line: 4

* use include_str! to load css

* set `set_max_children_per_line` to 4 consistently
2026-01-17 17:14:31 +02:00
Ilya Zlobintsev 6c3bbdaccc feat: fetch OpenCL info through clinfo, show multiple OpenCL platforms (#836)
* feat: fetch OpenCL info through clinfo cli

* feat: support multiple OpenCL platforms in GUI

* chore: update OpenCL dependencies

* chore: update flatpak sources

* feat: add clinfo to debug snapshot

* fix: add epel repo to rhel builds

* chore: match all devices in fallback path

* feat: add clinfo to flatpak

* fix: flatpak clinfo build
2025-12-25 14:06:02 +02:00
Ilya Zlobintsev 3222deea56 feat: add readings for extra power sensors (#833)
* feat: add readings for extra power sensors

* chore: add strix point snapshot

* chore: drop buggy socket power measurement
2025-12-23 15:28:22 +02:00
Ilya Zlobintsev bcbd000d9c fix: show units in bar size 2025-12-21 21:48:24 +02:00
Hosted WeblateandYaron Shahrabani c376081cd8 chore: translated using Weblate (Hebrew)
Currently translated at 91.3% (21 of 23 strings)

chore: added translation using Weblate (Hebrew)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yaron Shahrabani <sh.yaron@gmail.com>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/he/
Translation: LACT/lact-schema
2025-12-06 10:40:43 +02:00
56e4c17d46 chore: translated using Weblate (Spanish)
Currently translated at 100.0% (23 of 23 strings)

chore: translated using Weblate (Spanish)

Currently translated at 100.0% (23 of 23 strings)

chore: translated using Weblate (Spanish)

Currently translated at 4.3% (1 of 23 strings)

chore: added translation using Weblate (Spanish)

Co-authored-by: Fco. Javier F. Serrador <fserrador@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Luciano Garcia <xzargothrax@gmail.com>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Translate-URL: https://translate.fedoraproject.org/projects/lact/lact-schema/es/
Translation: LACT/lact-schema
2025-12-06 10:40:43 +02:00
Ilya Zlobintsev c0b91108db chore: bump flatpak dependencies 2025-11-30 10:23:01 +02:00
Ilya Zlobintsev f319c3f50f feat: add extra temperature and voltage readings on AMD (#798)
* feat: add extra temperature and voltage readings on AMD

* fix: use correct temperature scale

* fix: correct temperature values

* feat: add additional clockspeed measurements

* chore: adjust labels

* fix: typo in name
2025-11-16 21:50:11 +02:00
Ilya Zlobintsev 2f29d54c98 fix: profile watcher getting stuck when reloading (#781)
* fix: profile watcher getting stuck when reloading

* chore: bump version
2025-10-19 11:18:14 +03:00