feat(asusd): add PPD conflict detection warning - #217
Conversation
a51193c to
c7ee38e
Compare
|
Reporter of #205 here. Thanks for the quick turnaround on this @scardracs, and thanks @Ghoul4500 for weighing in on scope. One note on testing first:
|
c7ee38e to
7fac256
Compare
7fac256 to
b243050
Compare
…ipts for PPD warning
b243050 to
3175cc1
Compare
|
Thanks for splitting it @scardracs — this is now exactly what I was asking for in #205, and I'd be happy to see it merged as-is. I'm building the branch now and will report the warning output. Two things the split left behind, both in the docs rather than the code: 1. Unterminated code fence in
|
|
Tested as promised. Built
Detection works, fires first thing, correctly identifies the name owner. Nothing was mutated by either run (config file md5 unchanged, One observation from the test, which ties into my previous comment. My machine is deliberately configured the other way round — PPD owns the hardware and asusd is configured not to write EPP: In that configuration there is no contention — asusd never writes EPP, so nothing races — yet the warning fires anyway, on every single Cheap fix if you think it's worth it: gate the warning on asusd actually being configured to write, i.e. only warn when PPD is present and ( Not a blocker either way — I'd still merge this as-is. |
Summary
This Pull Request resolves power profile contention between
power-profiles-daemon(PPD) andasusdwhile providing seamless native compatibility for KDE Plasma and GNOME desktop power widgets.Problem
When
power-profiles-daemonandasusdrun concurrently, PPD reacts toplatform_profilechanges made byasusdand silently resets CPU EPP to driver defaults (balance_performance), overriding configured EPP settings (profile_balanced_epp).Solution
PPD Conflict Warning:
asusd,rog-control-center, andasusctlcheck at startup ifnet.hadess.PowerProfilesis already owned on system D-Bus. If active, a prominent warning is logged instructing the user to disablepower-profiles-daemon.service.Detailed Changes
rog-control-center/src/main.rs&asusctl/src/main.rs: Added startup PPD conflict warning checks.MANUAL.md&distro-packaging/asusctl.install: Updated manual documentation and installation scripts.Verification & Testing
cargo check --all-targets: Clean compilation across workspace crates.cargo test --all: All unit tests passing (100% pass rate).cargo clippy --all -- -D warnings: 0 warnings.cargo cranky: 0 warnings.cargo fmt --all -- --check: Formatting verified.Closes #205