From fc56e2a1cb861ea217e92c2e0cfdc4812817b548 Mon Sep 17 00:00:00 2001 From: ThePoorPilot <78394939+ThePoorPilot@users.noreply.github.com> Date: Tue, 2 Feb 2021 15:21:51 -0500 Subject: [PATCH] Adjust CPU frequency scaling on desktop to run in "performance" governor #162 If it detects the device is a laptop, it should default to the regular method of determining ac_state If the device returns any other output, it should default to ac_state=true continued work originally started in #158 --- auto_cpufreq/core.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/auto_cpufreq/core.py b/auto_cpufreq/core.py index cb5d9512..23fef445 100644 --- a/auto_cpufreq/core.py +++ b/auto_cpufreq/core.py @@ -117,10 +117,16 @@ def charging(): """ power_dir = "/sys/class/power_supply/" - # AC adapter states: 0, 1, unknown - ac_info = getoutput(f"grep . {power_dir}A*/online").splitlines() - # if there's one ac-adapter on-line, ac_state is True - ac_state = any(['1' in ac.split(':')[-1] for ac in ac_info]) + computer_type = getoutput('hostnamectl status | grep Chassis | cut -f2 -d \":\" | tr -d \' \'') + + if computer_type == "laptop": + # AC adapter states: 0, 1, unknown + ac_info = getoutput(f"grep . {power_dir}A*/online").splitlines() + # if there's one ac-adapter on-line, ac_state is True + ac_state = any(['1' in ac.split(':')[-1] for ac in ac_info]) + else: + # if desktop ac_state is true + ac_state = True # Possible values: Charging, Discharging, Unknown battery_info = getoutput(f"grep . {power_dir}BAT*/status")