67 Commits

Author SHA1 Message Date
Ilya Zlobintsev
1292f3f318 chore: bump version, update tests 2025-02-01 20:37:14 +02:00
Ilya Zlobintsev
5077836352 chore: include version in snapshot file name 2025-01-14 23:39:54 +02:00
Ilya Zlobintsev
e93025164e refactor: simplify lact-client by removing ResponseBuffer 2025-01-05 10:14:22 +02:00
Ilya Zlobintsev
64a2d3106b feat: automatic profile switching based on rules (#424)
* feat: profile ordering

* feat: profile matching logic

* feat: automatic switching

* perf: optimize profile rules evaluation

* feat: detect gamemode process start

* feat: add benchmark for profiles matching

* perf: string interner, inline hot function

* feat: option to enable auto profile switching

* wip

* chore: change label

* chore: minor profile switching fixes

* chore: drop interner

* wip

* refactor: header messages

* feat: delay profile evaluation

* fix: moving profiles around

* feat: initial profile rule editor UI

* refactor: only create one RuleWindow instead of creating it per-row

* feat: add option to include profile watcher state in api response

* feat: ui for selecting process name

* feat: API endpoint to evaluate a single profile rule

* perf: store process names in a map to speed up profile evaluation

* feat: full configurability in the UI, many improvements

* fix: downgrade dependency to build on older rust

* fix: deleting currently active profile

* fix: populate profiles list when it's empty

* fix: pin project to rust 1.78

* fix: setting args

* fix: running benchmarks
2024-12-25 23:52:35 +02:00
Ilya Zlobintsev
419814ea38 chore: bump version 2024-11-16 13:37:36 +02:00
Ilya Zlobintsev
b9b8499fe7 chore: bump version 2024-11-08 20:04:11 +02:00
Ilya Zlobintsev
c77fc555ac feat: show dialog when attempting to reconnect to daemon 2024-09-28 10:40:15 +03:00
Ilya Zlobintsev
b1229a3e1e chore: bump version 2024-09-28 10:03:14 +03:00
Ilya Zlobintsev
538cea3aa5 feat: add support for multiple settings profiles (#327)
* feat: initial support for multiple settings profiles

* feat: initial profiles management support

* feat: basic profile management ui
2024-09-28 09:51:35 +03:00
Ilya Zlobintsev
c08bdfef0b feat: remote management over TCP (#379)
* feat: abstract daemon client

* feat: daemon TCP listener implementation

* feat: support remote connections in the UI

* feat: make the client async

* feat: add documentation about remote management
2024-09-22 14:17:33 +03:00
Ilya Zlobintsev
e411d155da feat: use relm4 for the UI (only main parts) (#375)
* feat: use relm4 for vulkan window

* feat: WIP relm4 for app

* feat: applying settings

* wip

* feat: implement all the main actions

* feat: avoid full reloads when they are not needed

* fix: don't save vbios dump when the dialog was cancelled

* feat: OC control

* feat: use relm for the software page
2024-09-20 15:46:33 +03:00
Ilya Zlobintsev
74dda30925 feat: add option to reset all configuration 2024-09-07 22:28:15 +03:00
Ilya Zlobintsev
99f6e9ee35 chore: bump version 2024-09-06 09:14:30 +03:00
Ilya Zlobintsev
44704a101e feat: support for power profile heuristics configuration (#361)
* feat: basic support for power profile heuristics configuration

* attempt to support RDNA heuristics

* chore: finalization
2024-08-20 22:35:16 +03:00
Ilya Zlobintsev
aa670be9d6 fix: gracefully handle transient fan control errors 2024-05-11 12:59:27 +03:00
Ilya Zlobintsev
6dc35200d7 feat: add support for dumping VBIOS to a file (#305)
* feat: vbios dump daemon implementation

* feat: vbios dump ui
2024-04-22 20:23:35 +03:00
Ilya Zlobintsev
0ad46e2d08 feat: fan control hysteresis (#292)
* feat: implement a fan spindown delay setting

* chore: change request/response logging to the trace level

* feat: add fan speed change threshold setting

* feat: implement GUI for hysteresis settings

* fix: always set hysteresis settings
2024-03-20 23:45:24 +02:00
Alik Aslanyan
5a78c72711 feat: improved error reporting, RX 7900 Fixes (#279)
* refactor: Add bunch of .context calls to get more detailed error messages

* refactor: Use serde-error to serialize error with proper backtrace in client/server boundary

* fix: Workaround weird driver bug with RX 7900 XTX and power limit
2024-03-03 21:47:25 +02:00
Ilya Zlobintsev
f55db8116a bump version to 0.5.4 2024-03-02 13:36:07 +02:00
Ilya Zlobintsev
f1233c5b16 chore: bump version 2024-02-25 13:35:37 +02:00
Ilya Zlobintsev
f90a817085 chore: restructure Cargo.toml files to use workspace-level dependencies 2024-02-04 23:14:50 +02:00
Ilya Zlobintsev
292c94a9c4 feat: add support for disabling overdrive 2024-01-22 19:56:05 +02:00
Ilya Zlobintsev
422343315d chore: update dependencies, switch to stable release of amdgpu-sysfs 2024-01-21 10:43:08 +02:00
Ilya Zlobintsev
2faea931d2 feat: initial support for RDNA3 fan configuration (PMFW) (#239)
* wip

* feat: basic PMFW options gui

* bump amdgpu-sysfs

* test

* test 2

* test 3

* revert test

* fix: set pmfw settings last

* fix: always set pmfw values

* feat: reset pmfw button

* fix: reset button placement

* chore: cleanup

* chore: bump version

* feat: clean up pmfw settings on exit

* fix
2024-01-07 17:03:56 +02:00
Ilya Zlobintsev
5610e72ab6 feat: automatically regenerate initramfs on arch and debian-based systems
https://github.com/ilya-zlobintsev/LACT/issues/236
https://github.com/ilya-zlobintsev/LACT/issues/190
2024-01-07 11:07:38 +02:00
Ilya Zlobintsev
10f1e8c25a chore: update dependencies (#232)
* chore: update deps

* chore: bump
2023-12-23 10:26:54 +02:00
Ilya Zlobintsev
9053f1efb5 feat: add option to generate a debug snapshot of the SysFS (#231)
* feat: daemon implementation for generating sysfs snapshot

* feat: snapshot gui

* fix: dialog title

* chore: update bug reporting info
2023-12-23 10:10:50 +02:00
Ilya Zlobintsev
030e827378 chore: print error info about failed daemon connection 2023-11-25 15:35:55 +02:00
Ilya Zlobintsev
c4856dfadd chore: bump version to 0.5 2023-11-21 22:36:06 +02:00
Ilya Zlobintsev
7ccacc25b7 feat: setting enabled power states 2023-11-21 22:36:06 +02:00
Ilya Zlobintsev
6372f0059b feat: initial power states gui 2023-11-21 22:36:06 +02:00
Ilya Zlobintsev
d93f134f35 feat: show if resizeable bar is enabled 2023-10-21 17:38:32 +03:00
Ilya Zlobintsev
b5424557db chore: bump dependencies 2023-10-14 13:57:39 +03:00
bisspector
9533234f7e feat: added static fan control option (#198)
* fix: fixed the confirm apply dialog timer not stopping after choosing an option

* feat: added static fan control to the daemon and GUI

* fix: cleanup and validate static speed
2023-09-30 15:28:39 +03:00
Ilya Zlobintsev
54b6776d81 chore: use glib futures instead of threads in the gui, replace mutex/rwlock with refcell 2023-09-23 09:04:39 +03:00
Ilya Zlobintsev
d1a0690191 feat: bump amdgpu-sysfs with RDNA3 changes, change values to signed integers 2023-09-15 23:10:45 +03:00
Ilya Zlobintsev
8f6e1b2c77 bump version 2023-09-12 22:05:24 +03:00
Ilya Zlobintsev
6429659d56 chore: update dependencies, adopt breaking changes 2023-09-10 12:19:32 +03:00
Ilya Zlobintsev
c04e78fef9 chore: bump dependencies 2023-06-03 08:34:06 +03:00
Ilya Zlobintsev
92eb100239 feat: bump version and report gui version 2023-05-14 13:09:15 +03:00
Ilya Zlobintsev
7f47339072 feat: settings confirmation (#163)
The goal of this PR is to have a confirmation dialog that the user has to click before the settings are saved onto disk. This is useful because when tweaking some settings (especially memory frequency), it's possible to crash your system, and if the settings are saved right away you end up with a soft-bricked system that will apply the broken settings on the next daemon start.
2023-05-14 12:55:24 +03:00
Ilya Zlobintsev
8c489a3fb9 chore: bump dependencies 2023-05-10 20:10:40 +03:00
Ilya Zlobintsev
c6a7907c35 chore: bump dependencies and switch to a tagged libdrm_amdgpu_sysfs version 2023-04-24 22:06:40 +03:00
Ilya Zlobintsev
b66d4eb3f7 chore: bump dependencies 2023-03-26 18:29:35 +03:00
Ilya Zlobintsev
009d07d2f9 chore: bump version 2023-03-25 22:17:12 +02:00
Ilya Zlobintsev
0a4b7b208a chore: bump version 2023-03-18 14:31:30 +02:00
Ilya Zlobintsev
ed1f57b6f9 chore: bump dependencies 2023-03-18 10:12:11 +02:00
Ilya Zlobintsev
531c82ae94 bump version 2023-03-18 10:06:31 +02:00
Ilya Zlobintsev
4bc585c428 feat: reconnection to daemon socket if it closes 2023-03-09 08:23:25 +02:00
Ilya Zlobintsev
b702d29856 feat: reload configuration on dbus suspend/resume events 2023-03-05 10:29:35 +02:00