diff options
| author | srdusr <trevorgray@srdusr.com> | 2025-08-30 19:22:59 +0200 |
|---|---|---|
| committer | srdusr <trevorgray@srdusr.com> | 2025-08-30 19:22:59 +0200 |
| commit | 19120d4f9761c67d99ed1ce3da6084b83f5a49c9 (patch) | |
| tree | f234cad1bdad88114a63c9702144da487024967a /.config/ags/service/asusctl.ts | |
| parent | 5928998af5404ae2be84c6cecc10ebf84bd3f3ed (diff) | |
| download | dotfiles-19120d4f9761c67d99ed1ce3da6084b83f5a49c9.tar.gz dotfiles-19120d4f9761c67d99ed1ce3da6084b83f5a49c9.zip | |
Linux-specific dotfiles
Diffstat (limited to '.config/ags/service/asusctl.ts')
| -rw-r--r-- | .config/ags/service/asusctl.ts | 52 |
1 files changed, 0 insertions, 52 deletions
diff --git a/.config/ags/service/asusctl.ts b/.config/ags/service/asusctl.ts deleted file mode 100644 index 16acbd7..0000000 --- a/.config/ags/service/asusctl.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { sh } from "lib/utils" - -type Profile = "Performance" | "Balanced" | "Quiet" -type Mode = "Hybrid" | "Integrated" - -class Asusctl extends Service { - static { - Service.register(this, {}, { - "profile": ["string", "r"], - "mode": ["string", "r"], - }) - } - - available = !!Utils.exec("which asusctl") - #profile: Profile = "Balanced" - #mode: Mode = "Hybrid" - - async nextProfile() { - await sh("asusctl profile -n") - const profile = await sh("asusctl profile -p") - const p = profile.split(" ")[3] as Profile - this.#profile = p - this.changed("profile") - } - - async setProfile(prof: Profile) { - await sh(`asusctl profile --profile-set ${prof}`) - this.#profile = prof - this.changed("profile") - } - - async nextMode() { - await sh(`supergfxctl -m ${this.#mode === "Hybrid" ? "Integrated" : "Hybrid"}`) - this.#mode = await sh("supergfxctl -g") as Mode - this.changed("profile") - } - - constructor() { - super() - - if (this.available) { - sh("asusctl profile -p").then(p => this.#profile = p.split(" ")[3] as Profile) - sh("supergfxctl -g").then(m => this.#mode = m as Mode) - } - } - - get profiles(): Profile[] { return ["Performance", "Balanced", "Quiet"] } - get profile() { return this.#profile } - get mode() { return this.#mode } -} - -export default new Asusctl |
