mirror of
https://gitlab.com/asus-linux/asusctl.git
synced 2026-02-06 00:15:04 +01:00
Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| faca084cff | |||
| 89dc0b3501 | |||
| ea988279a8 | |||
| 219bd559b6 | |||
| ad1ef9b8a2 | |||
| 59795c605c | |||
| a36ac2b6d3 | |||
| a20837f252 | |||
| 1353fe3fdb | |||
| 770bd12a5c | |||
| af2f5592f0 | |||
| 9686c41ac4 | |||
| fbdb0514d2 | |||
| 1f5650d26b | |||
| 14db97c476 | |||
| 7122fbaca8 |
@@ -12,7 +12,7 @@ echo '+cargo clippy --all -- -D warnings'
|
|||||||
cargo clippy --all -- -D warnings
|
cargo clippy --all -- -D warnings
|
||||||
|
|
||||||
echo '+cargo test --all'
|
echo '+cargo test --all'
|
||||||
cargo test --all
|
cargo test --all -- --test-threads=1
|
||||||
|
|
||||||
echo '+cargo cranky'
|
echo '+cargo cranky'
|
||||||
cargo cranky
|
cargo cranky
|
||||||
|
|||||||
+1
-1
@@ -52,7 +52,7 @@ test:
|
|||||||
<<: *rust_cache
|
<<: *rust_cache
|
||||||
script:
|
script:
|
||||||
- mkdir -p .git/hooks > /dev/null
|
- mkdir -p .git/hooks > /dev/null
|
||||||
- cargo test --all
|
- cargo test --all -- --test-threads=1
|
||||||
|
|
||||||
release:
|
release:
|
||||||
only:
|
only:
|
||||||
|
|||||||
@@ -7,6 +7,33 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
## [v6.0.9]
|
||||||
|
|
||||||
|
### Added
|
||||||
|
|
||||||
|
- Add G513RS to laptop DB.
|
||||||
|
- Add G512LI to laptop DB.
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
|
||||||
|
- Rename and recreate the default Anime config if cache setup fails
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
|
||||||
|
- Nuke the issue of GUI taking 100% of a CPU core
|
||||||
|
|
||||||
|
## [v6.0.8]
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- Add G512L laptop DB entry
|
||||||
|
|
||||||
|
### Changed
|
||||||
|
- Add more tests to verify things
|
||||||
|
|
||||||
|
### Fix
|
||||||
|
- asusctl incorrectly assumes fan-curves unsupported. Now fixed.
|
||||||
|
- try to fix ROGCC using CPU time.
|
||||||
|
|
||||||
## [v6.0.7]
|
## [v6.0.7]
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|||||||
Generated
+509
-50
@@ -103,6 +103,12 @@ dependencies = [
|
|||||||
"libc",
|
"libc",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "anyhow"
|
||||||
|
version = "1.0.85"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "27a4bd113ab6da4cd0f521068a6e2ee1065eab54107266a11835d02c8ec86a37"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "arrayref"
|
name = "arrayref"
|
||||||
version = "0.3.7"
|
version = "0.3.7"
|
||||||
@@ -123,7 +129,7 @@ checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "asusctl"
|
name = "asusctl"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"asusd",
|
"asusd",
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
@@ -141,14 +147,14 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "asusd"
|
name = "asusd"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"concat-idents",
|
"concat-idents",
|
||||||
"config-traits",
|
"config-traits",
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
"env_logger",
|
"env_logger",
|
||||||
"futures-lite 2.3.0",
|
"futures-lite 1.13.0",
|
||||||
"inotify",
|
"inotify",
|
||||||
"log",
|
"log",
|
||||||
"logind-zbus",
|
"logind-zbus",
|
||||||
@@ -167,7 +173,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "asusd-user"
|
name = "asusd-user"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"config-traits",
|
"config-traits",
|
||||||
@@ -392,6 +398,28 @@ dependencies = [
|
|||||||
"windows-sys 0.52.0",
|
"windows-sys 0.52.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "async-stream"
|
||||||
|
version = "0.3.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51"
|
||||||
|
dependencies = [
|
||||||
|
"async-stream-impl",
|
||||||
|
"futures-core",
|
||||||
|
"pin-project-lite",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "async-stream-impl"
|
||||||
|
version = "0.3.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
|
||||||
|
dependencies = [
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 2.0.63",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "async-task"
|
name = "async-task"
|
||||||
version = "4.7.1"
|
version = "4.7.1"
|
||||||
@@ -433,6 +461,51 @@ version = "1.3.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
|
checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "axum"
|
||||||
|
version = "0.6.20"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf"
|
||||||
|
dependencies = [
|
||||||
|
"async-trait",
|
||||||
|
"axum-core",
|
||||||
|
"bitflags 1.3.2",
|
||||||
|
"bytes",
|
||||||
|
"futures-util",
|
||||||
|
"http",
|
||||||
|
"http-body",
|
||||||
|
"hyper",
|
||||||
|
"itoa",
|
||||||
|
"matchit",
|
||||||
|
"memchr",
|
||||||
|
"mime",
|
||||||
|
"percent-encoding",
|
||||||
|
"pin-project-lite",
|
||||||
|
"rustversion",
|
||||||
|
"serde",
|
||||||
|
"sync_wrapper",
|
||||||
|
"tower",
|
||||||
|
"tower-layer",
|
||||||
|
"tower-service",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "axum-core"
|
||||||
|
version = "0.3.4"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c"
|
||||||
|
dependencies = [
|
||||||
|
"async-trait",
|
||||||
|
"bytes",
|
||||||
|
"futures-util",
|
||||||
|
"http",
|
||||||
|
"http-body",
|
||||||
|
"mime",
|
||||||
|
"rustversion",
|
||||||
|
"tower-layer",
|
||||||
|
"tower-service",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "backtrace"
|
name = "backtrace"
|
||||||
version = "0.3.71"
|
version = "0.3.71"
|
||||||
@@ -834,7 +907,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "config-traits"
|
name = "config-traits"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"log",
|
"log",
|
||||||
@@ -842,6 +915,43 @@ dependencies = [
|
|||||||
"serde",
|
"serde",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "console-api"
|
||||||
|
version = "0.6.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "fd326812b3fd01da5bb1af7d340d0d555fd3d4b641e7f1dfcf5962a902952787"
|
||||||
|
dependencies = [
|
||||||
|
"futures-core",
|
||||||
|
"prost",
|
||||||
|
"prost-types",
|
||||||
|
"tonic",
|
||||||
|
"tracing-core",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "console-subscriber"
|
||||||
|
version = "0.2.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "7481d4c57092cd1c19dd541b92bdce883de840df30aa5d03fd48a3935c01842e"
|
||||||
|
dependencies = [
|
||||||
|
"console-api",
|
||||||
|
"crossbeam-channel",
|
||||||
|
"crossbeam-utils",
|
||||||
|
"futures-task",
|
||||||
|
"hdrhistogram",
|
||||||
|
"humantime",
|
||||||
|
"prost-types",
|
||||||
|
"serde",
|
||||||
|
"serde_json",
|
||||||
|
"thread_local",
|
||||||
|
"tokio",
|
||||||
|
"tokio-stream",
|
||||||
|
"tonic",
|
||||||
|
"tracing",
|
||||||
|
"tracing-core",
|
||||||
|
"tracing-subscriber",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "const-field-offset"
|
name = "const-field-offset"
|
||||||
version = "0.1.5"
|
version = "0.1.5"
|
||||||
@@ -941,7 +1051,7 @@ checksum = "7704b5fdd17b18ae31c4c1da5a2e0305a2bf17b5249300a9ee9ed7b72114c636"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cpuctl"
|
name = "cpuctl"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "cpufeatures"
|
name = "cpufeatures"
|
||||||
@@ -967,6 +1077,15 @@ version = "1.1.2"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "7059fff8937831a9ae6f0fe4d658ffabf58f2ca96aa9dec1c889f936f705f216"
|
checksum = "7059fff8937831a9ae6f0fe4d658ffabf58f2ca96aa9dec1c889f936f705f216"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "crossbeam-channel"
|
||||||
|
version = "0.5.12"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "ab3db02a9c5b5121e1e42fbdb1aeb65f5e02624cc58c43f2884c6ccac0b82f95"
|
||||||
|
dependencies = [
|
||||||
|
"crossbeam-utils",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "crossbeam-deque"
|
name = "crossbeam-deque"
|
||||||
version = "0.8.5"
|
version = "0.8.5"
|
||||||
@@ -1048,17 +1167,6 @@ dependencies = [
|
|||||||
"powerfmt",
|
"powerfmt",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "derivative"
|
|
||||||
version = "2.2.0"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
|
|
||||||
dependencies = [
|
|
||||||
"proc-macro2",
|
|
||||||
"quote",
|
|
||||||
"syn 1.0.109",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "derive_more"
|
name = "derive_more"
|
||||||
version = "0.99.17"
|
version = "0.99.17"
|
||||||
@@ -1151,7 +1259,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "dmi_id"
|
name = "dmi_id"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"udev 0.8.0",
|
"udev 0.8.0",
|
||||||
@@ -1492,7 +1600,7 @@ version = "0.8.0"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9099a2f86b8e674b75d03ff154b3fe4c5208ed249ced8d69cc313a9fa40bb488"
|
checksum = "9099a2f86b8e674b75d03ff154b3fe4c5208ed249ced8d69cc313a9fa40bb488"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"hashbrown",
|
"hashbrown 0.14.5",
|
||||||
"ttf-parser 0.20.0",
|
"ttf-parser 0.20.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -1532,6 +1640,15 @@ dependencies = [
|
|||||||
"percent-encoding",
|
"percent-encoding",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "futures-channel"
|
||||||
|
version = "0.3.30"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78"
|
||||||
|
dependencies = [
|
||||||
|
"futures-core",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "futures-core"
|
name = "futures-core"
|
||||||
version = "0.3.30"
|
version = "0.3.30"
|
||||||
@@ -1834,6 +1951,25 @@ dependencies = [
|
|||||||
"syn 1.0.109",
|
"syn 1.0.109",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "h2"
|
||||||
|
version = "0.3.26"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8"
|
||||||
|
dependencies = [
|
||||||
|
"bytes",
|
||||||
|
"fnv",
|
||||||
|
"futures-core",
|
||||||
|
"futures-sink",
|
||||||
|
"futures-util",
|
||||||
|
"http",
|
||||||
|
"indexmap 2.2.6",
|
||||||
|
"slab",
|
||||||
|
"tokio",
|
||||||
|
"tokio-util",
|
||||||
|
"tracing",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "half"
|
name = "half"
|
||||||
version = "2.4.1"
|
version = "2.4.1"
|
||||||
@@ -1844,6 +1980,12 @@ dependencies = [
|
|||||||
"crunchy",
|
"crunchy",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "hashbrown"
|
||||||
|
version = "0.12.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "hashbrown"
|
name = "hashbrown"
|
||||||
version = "0.14.5"
|
version = "0.14.5"
|
||||||
@@ -1854,6 +1996,19 @@ dependencies = [
|
|||||||
"allocator-api2",
|
"allocator-api2",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "hdrhistogram"
|
||||||
|
version = "7.5.4"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d"
|
||||||
|
dependencies = [
|
||||||
|
"base64 0.21.7",
|
||||||
|
"byteorder",
|
||||||
|
"flate2",
|
||||||
|
"nom",
|
||||||
|
"num-traits",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "heck"
|
name = "heck"
|
||||||
version = "0.4.1"
|
version = "0.4.1"
|
||||||
@@ -1881,12 +2036,82 @@ dependencies = [
|
|||||||
"windows-sys 0.52.0",
|
"windows-sys 0.52.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "http"
|
||||||
|
version = "0.2.12"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1"
|
||||||
|
dependencies = [
|
||||||
|
"bytes",
|
||||||
|
"fnv",
|
||||||
|
"itoa",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "http-body"
|
||||||
|
version = "0.4.6"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2"
|
||||||
|
dependencies = [
|
||||||
|
"bytes",
|
||||||
|
"http",
|
||||||
|
"pin-project-lite",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "httparse"
|
||||||
|
version = "1.8.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "d897f394bad6a705d5f4104762e116a75639e470d80901eed05a860a95cb1904"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "httpdate"
|
||||||
|
version = "1.0.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "humantime"
|
name = "humantime"
|
||||||
version = "2.1.0"
|
version = "2.1.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
|
checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "hyper"
|
||||||
|
version = "0.14.28"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "bf96e135eb83a2a8ddf766e426a841d8ddd7449d5f00d34ea02b41d2f19eef80"
|
||||||
|
dependencies = [
|
||||||
|
"bytes",
|
||||||
|
"futures-channel",
|
||||||
|
"futures-core",
|
||||||
|
"futures-util",
|
||||||
|
"h2",
|
||||||
|
"http",
|
||||||
|
"http-body",
|
||||||
|
"httparse",
|
||||||
|
"httpdate",
|
||||||
|
"itoa",
|
||||||
|
"pin-project-lite",
|
||||||
|
"socket2 0.5.7",
|
||||||
|
"tokio",
|
||||||
|
"tower-service",
|
||||||
|
"tracing",
|
||||||
|
"want",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "hyper-timeout"
|
||||||
|
version = "0.4.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1"
|
||||||
|
dependencies = [
|
||||||
|
"hyper",
|
||||||
|
"pin-project-lite",
|
||||||
|
"tokio",
|
||||||
|
"tokio-io-timeout",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "i-slint-backend-linuxkms"
|
name = "i-slint-backend-linuxkms"
|
||||||
version = "1.6.0"
|
version = "1.6.0"
|
||||||
@@ -2189,6 +2414,16 @@ version = "1.10.1"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "44feda355f4159a7c757171a77de25daf6411e217b4cabd03bd6650690468126"
|
checksum = "44feda355f4159a7c757171a77de25daf6411e217b4cabd03bd6650690468126"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "indexmap"
|
||||||
|
version = "1.9.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
|
||||||
|
dependencies = [
|
||||||
|
"autocfg",
|
||||||
|
"hashbrown 0.12.3",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "indexmap"
|
name = "indexmap"
|
||||||
version = "2.2.6"
|
version = "2.2.6"
|
||||||
@@ -2196,7 +2431,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
|
checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"equivalent",
|
"equivalent",
|
||||||
"hashbrown",
|
"hashbrown 0.14.5",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -2538,9 +2773,9 @@ checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "logind-zbus"
|
name = "logind-zbus"
|
||||||
version = "4.0.2"
|
version = "4.0.3"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "15b2375aeabe771d0774a333bf20aa89ea1805f4f9d094fc45e7390bfc7da42a"
|
checksum = "8e77231dda256523272d8168cf57a9f214ccef06d385c126ce64df662ca5721e"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"serde",
|
"serde",
|
||||||
"zbus",
|
"zbus",
|
||||||
@@ -2615,6 +2850,21 @@ dependencies = [
|
|||||||
"libc",
|
"libc",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "matchers"
|
||||||
|
version = "0.1.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
|
||||||
|
dependencies = [
|
||||||
|
"regex-automata 0.1.10",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "matchit"
|
||||||
|
version = "0.7.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "memchr"
|
name = "memchr"
|
||||||
version = "2.7.2"
|
version = "2.7.2"
|
||||||
@@ -2672,6 +2922,12 @@ dependencies = [
|
|||||||
"paste",
|
"paste",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "mime"
|
||||||
|
version = "0.3.17"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "minimal-lexical"
|
name = "minimal-lexical"
|
||||||
version = "0.2.1"
|
version = "0.2.1"
|
||||||
@@ -3188,6 +3444,38 @@ dependencies = [
|
|||||||
"unicode-ident",
|
"unicode-ident",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "prost"
|
||||||
|
version = "0.12.6"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29"
|
||||||
|
dependencies = [
|
||||||
|
"bytes",
|
||||||
|
"prost-derive",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "prost-derive"
|
||||||
|
version = "0.12.6"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1"
|
||||||
|
dependencies = [
|
||||||
|
"anyhow",
|
||||||
|
"itertools",
|
||||||
|
"proc-macro2",
|
||||||
|
"quote",
|
||||||
|
"syn 2.0.63",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "prost-types"
|
||||||
|
version = "0.12.6"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0"
|
||||||
|
dependencies = [
|
||||||
|
"prost",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "qoi"
|
name = "qoi"
|
||||||
version = "0.4.1"
|
version = "0.4.1"
|
||||||
@@ -3332,8 +3620,17 @@ checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"aho-corasick",
|
"aho-corasick",
|
||||||
"memchr",
|
"memchr",
|
||||||
"regex-automata",
|
"regex-automata 0.4.6",
|
||||||
"regex-syntax",
|
"regex-syntax 0.8.3",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "regex-automata"
|
||||||
|
version = "0.1.10"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
|
||||||
|
dependencies = [
|
||||||
|
"regex-syntax 0.6.29",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -3344,9 +3641,15 @@ checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea"
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"aho-corasick",
|
"aho-corasick",
|
||||||
"memchr",
|
"memchr",
|
||||||
"regex-syntax",
|
"regex-syntax 0.8.3",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "regex-syntax"
|
||||||
|
version = "0.6.29"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "regex-syntax"
|
name = "regex-syntax"
|
||||||
version = "0.8.3"
|
version = "0.8.3"
|
||||||
@@ -3378,13 +3681,14 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog-control-center"
|
name = "rog-control-center"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"asusd",
|
"asusd",
|
||||||
"betrayer",
|
"betrayer",
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"concat-idents",
|
"concat-idents",
|
||||||
"config-traits",
|
"config-traits",
|
||||||
|
"console-subscriber",
|
||||||
"dirs",
|
"dirs",
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
"env_logger",
|
"env_logger",
|
||||||
@@ -3410,7 +3714,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_anime"
|
name = "rog_anime"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
@@ -3427,7 +3731,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_aura"
|
name = "rog_aura"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
@@ -3441,7 +3745,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_dbus"
|
name = "rog_dbus"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"asusd",
|
"asusd",
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
@@ -3455,7 +3759,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_platform"
|
name = "rog_platform"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"concat-idents",
|
"concat-idents",
|
||||||
@@ -3470,7 +3774,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_profiles"
|
name = "rog_profiles"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"log",
|
"log",
|
||||||
@@ -3484,7 +3788,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_simulators"
|
name = "rog_simulators"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"rog_anime",
|
"rog_anime",
|
||||||
@@ -3494,7 +3798,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rog_slash"
|
name = "rog_slash"
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cargo-husky",
|
"cargo-husky",
|
||||||
"dmi_id",
|
"dmi_id",
|
||||||
@@ -3523,7 +3827,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "32a58fa8a7ccff2aec4f39cc45bf5f985cec7125ab271cf681c279fd00192b49"
|
checksum = "32a58fa8a7ccff2aec4f39cc45bf5f985cec7125ab271cf681c279fd00192b49"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"countme",
|
"countme",
|
||||||
"hashbrown",
|
"hashbrown 0.14.5",
|
||||||
"memoffset 0.9.1",
|
"memoffset 0.9.1",
|
||||||
"rustc-hash",
|
"rustc-hash",
|
||||||
"text-size",
|
"text-size",
|
||||||
@@ -3752,6 +4056,15 @@ dependencies = [
|
|||||||
"digest",
|
"digest",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "sharded-slab"
|
||||||
|
version = "0.1.7"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
|
||||||
|
dependencies = [
|
||||||
|
"lazy_static",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "shlex"
|
name = "shlex"
|
||||||
version = "1.3.0"
|
version = "1.3.0"
|
||||||
@@ -4054,8 +4367,8 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "supergfxctl"
|
name = "supergfxctl"
|
||||||
version = "5.2.2"
|
version = "5.2.3"
|
||||||
source = "git+https://gitlab.com/asus-linux/supergfxctl.git?rev=4eb6e97c22b68ae8d1e80500709b0c0580776ad3#4eb6e97c22b68ae8d1e80500709b0c0580776ad3"
|
source = "git+https://gitlab.com/asus-linux/supergfxctl.git#bf7099c0a771a98f83da055e3c561b91e82b5c75"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"log",
|
"log",
|
||||||
"logind-zbus",
|
"logind-zbus",
|
||||||
@@ -4099,6 +4412,12 @@ dependencies = [
|
|||||||
"unicode-ident",
|
"unicode-ident",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "sync_wrapper"
|
||||||
|
version = "0.1.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tar"
|
name = "tar"
|
||||||
version = "0.4.40"
|
version = "0.4.40"
|
||||||
@@ -4173,6 +4492,16 @@ dependencies = [
|
|||||||
"syn 2.0.63",
|
"syn 2.0.63",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "thread_local"
|
||||||
|
version = "1.1.8"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
|
||||||
|
dependencies = [
|
||||||
|
"cfg-if",
|
||||||
|
"once_cell",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tiff"
|
name = "tiff"
|
||||||
version = "0.9.1"
|
version = "0.9.1"
|
||||||
@@ -4263,15 +4592,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
|
checksum = "1adbebffeca75fcfd058afa480fb6c0b81e165a0323f9c9d39c9697e37c46787"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"backtrace",
|
"backtrace",
|
||||||
|
"bytes",
|
||||||
"libc",
|
"libc",
|
||||||
"mio",
|
"mio",
|
||||||
"num_cpus",
|
"num_cpus",
|
||||||
"pin-project-lite",
|
"pin-project-lite",
|
||||||
"socket2 0.5.7",
|
"socket2 0.5.7",
|
||||||
"tokio-macros",
|
"tokio-macros",
|
||||||
|
"tracing",
|
||||||
"windows-sys 0.48.0",
|
"windows-sys 0.48.0",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tokio-io-timeout"
|
||||||
|
version = "1.2.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf"
|
||||||
|
dependencies = [
|
||||||
|
"pin-project-lite",
|
||||||
|
"tokio",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tokio-macros"
|
name = "tokio-macros"
|
||||||
version = "2.2.0"
|
version = "2.2.0"
|
||||||
@@ -4283,6 +4624,30 @@ dependencies = [
|
|||||||
"syn 2.0.63",
|
"syn 2.0.63",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tokio-stream"
|
||||||
|
version = "0.1.15"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af"
|
||||||
|
dependencies = [
|
||||||
|
"futures-core",
|
||||||
|
"pin-project-lite",
|
||||||
|
"tokio",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tokio-util"
|
||||||
|
version = "0.7.11"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "9cf6b47b3771c49ac75ad09a6162f53ad4b8088b76ac60e8ec1455b31a189fe1"
|
||||||
|
dependencies = [
|
||||||
|
"bytes",
|
||||||
|
"futures-core",
|
||||||
|
"futures-sink",
|
||||||
|
"pin-project-lite",
|
||||||
|
"tokio",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "toml"
|
name = "toml"
|
||||||
version = "0.8.12"
|
version = "0.8.12"
|
||||||
@@ -4310,7 +4675,7 @@ version = "0.21.1"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
|
checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"indexmap",
|
"indexmap 2.2.6",
|
||||||
"toml_datetime",
|
"toml_datetime",
|
||||||
"winnow 0.5.40",
|
"winnow 0.5.40",
|
||||||
]
|
]
|
||||||
@@ -4321,13 +4686,72 @@ version = "0.22.12"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef"
|
checksum = "d3328d4f68a705b2a4498da1d580585d39a6510f98318a2cec3018a7ec61ddef"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"indexmap",
|
"indexmap 2.2.6",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_spanned",
|
"serde_spanned",
|
||||||
"toml_datetime",
|
"toml_datetime",
|
||||||
"winnow 0.6.8",
|
"winnow 0.6.8",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tonic"
|
||||||
|
version = "0.10.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "d560933a0de61cf715926b9cac824d4c883c2c43142f787595e48280c40a1d0e"
|
||||||
|
dependencies = [
|
||||||
|
"async-stream",
|
||||||
|
"async-trait",
|
||||||
|
"axum",
|
||||||
|
"base64 0.21.7",
|
||||||
|
"bytes",
|
||||||
|
"h2",
|
||||||
|
"http",
|
||||||
|
"http-body",
|
||||||
|
"hyper",
|
||||||
|
"hyper-timeout",
|
||||||
|
"percent-encoding",
|
||||||
|
"pin-project",
|
||||||
|
"prost",
|
||||||
|
"tokio",
|
||||||
|
"tokio-stream",
|
||||||
|
"tower",
|
||||||
|
"tower-layer",
|
||||||
|
"tower-service",
|
||||||
|
"tracing",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tower"
|
||||||
|
version = "0.4.13"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c"
|
||||||
|
dependencies = [
|
||||||
|
"futures-core",
|
||||||
|
"futures-util",
|
||||||
|
"indexmap 1.9.3",
|
||||||
|
"pin-project",
|
||||||
|
"pin-project-lite",
|
||||||
|
"rand",
|
||||||
|
"slab",
|
||||||
|
"tokio",
|
||||||
|
"tokio-util",
|
||||||
|
"tower-layer",
|
||||||
|
"tower-service",
|
||||||
|
"tracing",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tower-layer"
|
||||||
|
version = "0.3.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tower-service"
|
||||||
|
version = "0.3.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "tracing"
|
name = "tracing"
|
||||||
version = "0.1.40"
|
version = "0.1.40"
|
||||||
@@ -4357,8 +4781,30 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
|
checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"once_cell",
|
"once_cell",
|
||||||
|
"valuable",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tracing-subscriber"
|
||||||
|
version = "0.3.18"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "ad0f048c97dbd9faa9b7df56362b8ebcaa52adb06b498c050d2f4e32f90a7a8b"
|
||||||
|
dependencies = [
|
||||||
|
"matchers",
|
||||||
|
"once_cell",
|
||||||
|
"regex",
|
||||||
|
"sharded-slab",
|
||||||
|
"thread_local",
|
||||||
|
"tracing",
|
||||||
|
"tracing-core",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "try-lock"
|
||||||
|
version = "0.2.5"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ttf-parser"
|
name = "ttf-parser"
|
||||||
version = "0.20.0"
|
version = "0.20.0"
|
||||||
@@ -4555,6 +5001,12 @@ dependencies = [
|
|||||||
"xmlwriter",
|
"xmlwriter",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "valuable"
|
||||||
|
version = "0.1.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "vcpkg"
|
name = "vcpkg"
|
||||||
version = "0.2.15"
|
version = "0.2.15"
|
||||||
@@ -4620,6 +5072,15 @@ dependencies = [
|
|||||||
"winapi-util",
|
"winapi-util",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "want"
|
||||||
|
version = "0.3.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
|
||||||
|
dependencies = [
|
||||||
|
"try-lock",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wasi"
|
name = "wasi"
|
||||||
version = "0.11.0+wasi-snapshot-preview1"
|
version = "0.11.0+wasi-snapshot-preview1"
|
||||||
@@ -5409,9 +5870,9 @@ checksum = "ec7a2a501ed189703dba8b08142f057e887dfc4b2cc4db2d343ac6376ba3e0b9"
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zbus"
|
name = "zbus"
|
||||||
version = "4.1.2"
|
version = "4.2.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "c9ff46f2a25abd690ed072054733e0bc3157e3d4c45f41bd183dce09c2ff8ab9"
|
checksum = "e5915716dff34abef1351d2b10305b019c8ef33dcf6c72d31a6e227d5d9d7a21"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-broadcast",
|
"async-broadcast",
|
||||||
"async-executor",
|
"async-executor",
|
||||||
@@ -5423,7 +5884,6 @@ dependencies = [
|
|||||||
"async-task",
|
"async-task",
|
||||||
"async-trait",
|
"async-trait",
|
||||||
"blocking",
|
"blocking",
|
||||||
"derivative",
|
|
||||||
"enumflags2",
|
"enumflags2",
|
||||||
"event-listener 5.3.0",
|
"event-listener 5.3.0",
|
||||||
"futures-core",
|
"futures-core",
|
||||||
@@ -5448,14 +5908,13 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zbus_macros"
|
name = "zbus_macros"
|
||||||
version = "4.1.2"
|
version = "4.2.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "4e0e3852c93dcdb49c9462afe67a2a468f7bd464150d866e861eaf06208633e0"
|
checksum = "66fceb36d0c1c4a6b98f3ce40f410e64e5a134707ed71892e1b178abc4c695d4"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro-crate",
|
"proc-macro-crate",
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
"regex",
|
|
||||||
"syn 1.0.109",
|
"syn 1.0.109",
|
||||||
"zvariant_utils",
|
"zvariant_utils",
|
||||||
]
|
]
|
||||||
@@ -5502,9 +5961,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zvariant"
|
name = "zvariant"
|
||||||
version = "4.0.2"
|
version = "4.1.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "2c1b3ca6db667bfada0f1ebfc94b2b1759ba25472ee5373d4551bb892616389a"
|
checksum = "877ef94e5e82b231d2a309c531f191a8152baba8241a7939ee04bd76b0171308"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"endi",
|
"endi",
|
||||||
"enumflags2",
|
"enumflags2",
|
||||||
@@ -5515,9 +5974,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zvariant_derive"
|
name = "zvariant_derive"
|
||||||
version = "4.0.2"
|
version = "4.1.0"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "b7a4b236063316163b69039f77ce3117accb41a09567fd24c168e43491e521bc"
|
checksum = "b7ca98581cc6a8120789d8f1f0997e9053837d6aa5346cbb43454d7121be6e39"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro-crate",
|
"proc-macro-crate",
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
@@ -5528,9 +5987,9 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "zvariant_utils"
|
name = "zvariant_utils"
|
||||||
version = "1.1.0"
|
version = "1.1.1"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "00bedb16a193cc12451873fee2a1bc6550225acece0e36f333e68326c73c8172"
|
checksum = "75fa7291bdd68cd13c4f97cc9d78cbf16d96305856dfc7ac942aeff4c2de7d5a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"proc-macro2",
|
"proc-macro2",
|
||||||
"quote",
|
"quote",
|
||||||
|
|||||||
+3
-3
@@ -1,5 +1,5 @@
|
|||||||
[workspace.package]
|
[workspace.package]
|
||||||
version = "6.0.7"
|
version = "6.0.9"
|
||||||
rust-version = "1.77"
|
rust-version = "1.77"
|
||||||
license = "MPL-2.0"
|
license = "MPL-2.0"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
@@ -47,8 +47,8 @@ dirs = "^4.0"
|
|||||||
smol = "^1.3"
|
smol = "^1.3"
|
||||||
mio = "0.8.11"
|
mio = "0.8.11"
|
||||||
|
|
||||||
zbus = "4.1"
|
zbus = "4.2"
|
||||||
logind-zbus = { version = "4.0.2" } #, default-features = false, features = ["non_blocking"] }
|
logind-zbus = { version = "4.0.3" } #, default-features = false, features = ["non_blocking"] }
|
||||||
|
|
||||||
serde = "^1.0"
|
serde = "^1.0"
|
||||||
serde_derive = "^1.0"
|
serde_derive = "^1.0"
|
||||||
|
|||||||
+5
-7
@@ -5,7 +5,6 @@ use std::process::Command;
|
|||||||
use std::thread::sleep;
|
use std::thread::sleep;
|
||||||
|
|
||||||
use anime_cli::{AnimeActions, AnimeCommand};
|
use anime_cli::{AnimeActions, AnimeCommand};
|
||||||
use asusd::ctrl_fancurves::FAN_CURVE_ZBUS_NAME;
|
|
||||||
use aura_cli::{LedPowerCommand1, LedPowerCommand2};
|
use aura_cli::{LedPowerCommand1, LedPowerCommand2};
|
||||||
use dmi_id::DMIID;
|
use dmi_id::DMIID;
|
||||||
use fan_curve_cli::FanCurveCommand;
|
use fan_curve_cli::FanCurveCommand;
|
||||||
@@ -172,7 +171,7 @@ fn do_parsed(
|
|||||||
handle_throttle_profile(&conn, supported_properties, cmd)?
|
handle_throttle_profile(&conn, supported_properties, cmd)?
|
||||||
}
|
}
|
||||||
Some(CliCommand::FanCurve(cmd)) => {
|
Some(CliCommand::FanCurve(cmd)) => {
|
||||||
handle_fan_curve(&conn, supported_interfaces, cmd)?;
|
handle_fan_curve(&conn, cmd)?;
|
||||||
}
|
}
|
||||||
Some(CliCommand::Graphics(_)) => do_gfx(),
|
Some(CliCommand::Graphics(_)) => do_gfx(),
|
||||||
Some(CliCommand::Anime(cmd)) => handle_anime(&conn, cmd)?,
|
Some(CliCommand::Anime(cmd)) => handle_anime(&conn, cmd)?,
|
||||||
@@ -807,13 +806,13 @@ fn handle_throttle_profile(
|
|||||||
|
|
||||||
fn handle_fan_curve(
|
fn handle_fan_curve(
|
||||||
conn: &Connection,
|
conn: &Connection,
|
||||||
supported: &[String],
|
|
||||||
cmd: &FanCurveCommand,
|
cmd: &FanCurveCommand,
|
||||||
) -> Result<(), Box<dyn std::error::Error>> {
|
) -> Result<(), Box<dyn std::error::Error>> {
|
||||||
if !supported.contains(&FAN_CURVE_ZBUS_NAME.to_string()) {
|
let Ok(fan_proxy) = FanCurvesProxyBlocking::new(conn).map_err(|e| {
|
||||||
println!("Fan-curves not supported by either this kernel or by the laptop.");
|
println!("Fan-curves not supported by either this kernel or by the laptop: {e:?}");
|
||||||
|
}) else {
|
||||||
return Err(ProfileError::NotSupported.into());
|
return Err(ProfileError::NotSupported.into());
|
||||||
}
|
};
|
||||||
|
|
||||||
if !cmd.get_enabled && !cmd.default && cmd.mod_profile.is_none() {
|
if !cmd.get_enabled && !cmd.default && cmd.mod_profile.is_none() {
|
||||||
if !cmd.help {
|
if !cmd.help {
|
||||||
@@ -838,7 +837,6 @@ fn handle_fan_curve(
|
|||||||
}
|
}
|
||||||
|
|
||||||
let plat_proxy = PlatformProxyBlocking::new(conn)?;
|
let plat_proxy = PlatformProxyBlocking::new(conn)?;
|
||||||
let fan_proxy = FanCurvesProxyBlocking::new(conn)?;
|
|
||||||
if cmd.get_enabled {
|
if cmd.get_enabled {
|
||||||
let profile = plat_proxy.throttle_thermal_policy()?;
|
let profile = plat_proxy.throttle_thermal_policy()?;
|
||||||
let curves = fan_proxy.fan_curve_data(profile)?;
|
let curves = fan_proxy.fan_curve_data(profile)?;
|
||||||
|
|||||||
@@ -90,7 +90,7 @@ impl CtrlAnime {
|
|||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
|
|
||||||
let config = AnimeConfig::new().load();
|
let mut config = AnimeConfig::new().load();
|
||||||
let mut anime_type = get_anime_type()?;
|
let mut anime_type = get_anime_type()?;
|
||||||
if let AnimeType::Unknown = anime_type {
|
if let AnimeType::Unknown = anime_type {
|
||||||
if let Some(model) = config.model_override {
|
if let Some(model) = config.model_override {
|
||||||
@@ -101,7 +101,12 @@ impl CtrlAnime {
|
|||||||
|
|
||||||
info!("Device has an AniMe Matrix display: {anime_type:?}");
|
info!("Device has an AniMe Matrix display: {anime_type:?}");
|
||||||
let mut cache = AnimeConfigCached::default();
|
let mut cache = AnimeConfigCached::default();
|
||||||
cache.init_from_config(&config, anime_type)?;
|
if let Err(e) = cache.init_from_config(&config, anime_type) {
|
||||||
|
error!("Trying to cache the Anime Config failed, will reset to default config: {e:?}");
|
||||||
|
config.rename_file_old();
|
||||||
|
config = AnimeConfig::new();
|
||||||
|
config.write();
|
||||||
|
}
|
||||||
|
|
||||||
let ctrl = CtrlAnime {
|
let ctrl = CtrlAnime {
|
||||||
node,
|
node,
|
||||||
|
|||||||
@@ -134,12 +134,16 @@ impl AuraConfig {
|
|||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use rog_aura::{AuraEffect, AuraModeNum, AuraZone, Colour};
|
use rog_aura::keyboard::AuraPowerState;
|
||||||
|
use rog_aura::{
|
||||||
|
AuraEffect, AuraModeNum, AuraZone, Colour, Direction, LedBrightness, PowerZones, Speed,
|
||||||
|
};
|
||||||
|
|
||||||
use super::AuraConfig;
|
use super::AuraConfig;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn set_multizone_4key_config() {
|
fn set_multizone_4key_config() {
|
||||||
|
std::env::set_var("BOARD_NAME", "");
|
||||||
let mut config = AuraConfig::new("19b6");
|
let mut config = AuraConfig::new("19b6");
|
||||||
|
|
||||||
let effect = AuraEffect {
|
let effect = AuraEffect {
|
||||||
@@ -230,6 +234,7 @@ mod tests {
|
|||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn set_multizone_multimode_config() {
|
fn set_multizone_multimode_config() {
|
||||||
|
std::env::set_var("BOARD_NAME", "");
|
||||||
let mut config = AuraConfig::new("19b6");
|
let mut config = AuraConfig::new("19b6");
|
||||||
|
|
||||||
let effect = AuraEffect {
|
let effect = AuraEffect {
|
||||||
@@ -274,4 +279,66 @@ mod tests {
|
|||||||
let sta = res.get(&AuraModeNum::Pulse).unwrap();
|
let sta = res.get(&AuraModeNum::Pulse).unwrap();
|
||||||
assert_eq!(sta.len(), 1);
|
assert_eq!(sta.len(), 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn verify_0x1866_g531i() {
|
||||||
|
std::env::set_var("BOARD_NAME", "G513I");
|
||||||
|
let mut config = AuraConfig::new("1866");
|
||||||
|
|
||||||
|
assert_eq!(config.brightness, LedBrightness::Med);
|
||||||
|
assert_eq!(config.builtins.len(), 5);
|
||||||
|
assert_eq!(
|
||||||
|
config.builtins.first_entry().unwrap().get(),
|
||||||
|
&AuraEffect {
|
||||||
|
mode: AuraModeNum::Static,
|
||||||
|
zone: AuraZone::None,
|
||||||
|
colour1: Colour { r: 166, g: 0, b: 0 },
|
||||||
|
colour2: Colour { r: 0, g: 0, b: 0 },
|
||||||
|
speed: Speed::Med,
|
||||||
|
direction: Direction::Right
|
||||||
|
}
|
||||||
|
);
|
||||||
|
assert_eq!(config.enabled.states.len(), 1);
|
||||||
|
assert_eq!(
|
||||||
|
config.enabled.states[0],
|
||||||
|
AuraPowerState {
|
||||||
|
zone: PowerZones::KeyboardAndLightbar,
|
||||||
|
boot: true,
|
||||||
|
awake: true,
|
||||||
|
sleep: true,
|
||||||
|
shutdown: true
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn verify_0x19b6_g634j() {
|
||||||
|
std::env::set_var("BOARD_NAME", "G634J");
|
||||||
|
let mut config = AuraConfig::new("19b6");
|
||||||
|
|
||||||
|
assert_eq!(config.brightness, LedBrightness::Med);
|
||||||
|
assert_eq!(config.builtins.len(), 12);
|
||||||
|
assert_eq!(
|
||||||
|
config.builtins.first_entry().unwrap().get(),
|
||||||
|
&AuraEffect {
|
||||||
|
mode: AuraModeNum::Static,
|
||||||
|
zone: AuraZone::None,
|
||||||
|
colour1: Colour { r: 166, g: 0, b: 0 },
|
||||||
|
colour2: Colour { r: 0, g: 0, b: 0 },
|
||||||
|
speed: Speed::Med,
|
||||||
|
direction: Direction::Right
|
||||||
|
}
|
||||||
|
);
|
||||||
|
assert_eq!(config.enabled.states.len(), 4);
|
||||||
|
assert_eq!(
|
||||||
|
config.enabled.states[0],
|
||||||
|
AuraPowerState {
|
||||||
|
zone: PowerZones::Keyboard,
|
||||||
|
boot: true,
|
||||||
|
awake: true,
|
||||||
|
sleep: true,
|
||||||
|
shutdown: true
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -146,11 +146,7 @@ where
|
|||||||
|
|
||||||
/// Renames the existing file to `<file>-old`
|
/// Renames the existing file to `<file>-old`
|
||||||
fn rename_file_old(&self) {
|
fn rename_file_old(&self) {
|
||||||
warn!(
|
warn!("Renaming {} to {}-old", self.file_name(), self.file_name());
|
||||||
"Renaming {} to {}-old and recreating config",
|
|
||||||
self.file_name(),
|
|
||||||
self.file_name()
|
|
||||||
);
|
|
||||||
let mut cfg_old = self.file_path().to_string_lossy().to_string();
|
let mut cfg_old = self.file_path().to_string_lossy().to_string();
|
||||||
cfg_old.push_str("-old");
|
cfg_old.push_str("-old");
|
||||||
std::fs::rename(self.file_path(), cfg_old).unwrap_or_else(|err| {
|
std::fs::rename(self.file_path(), cfg_old).unwrap_or_else(|err| {
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ ENV{DMI_FAMILY}=="*ROG*", GOTO="asusd_start"
|
|||||||
ENV{DMI_FAMILY}=="*Zephyrus*", GOTO="asusd_start"
|
ENV{DMI_FAMILY}=="*Zephyrus*", GOTO="asusd_start"
|
||||||
ENV{DMI_FAMILY}=="*Strix*", GOTO="asusd_start"
|
ENV{DMI_FAMILY}=="*Strix*", GOTO="asusd_start"
|
||||||
ENV{DMI_FAMILY}=="*Vivo*ook*", GOTO="asusd_start"
|
ENV{DMI_FAMILY}=="*Vivo*ook*", GOTO="asusd_start"
|
||||||
|
ENV{DMI_FAMILY}=="*Zenbook*", GOTO="asusd_start"
|
||||||
# No match so
|
# No match so
|
||||||
GOTO="asusd_end"
|
GOTO="asusd_end"
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,8 @@
|
|||||||
use std::path::Path;
|
use std::path::Path;
|
||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
|
|
||||||
|
use log::error;
|
||||||
|
|
||||||
use crate::data::AnimeDataBuffer;
|
use crate::data::AnimeDataBuffer;
|
||||||
use crate::error::{AnimeError, Result};
|
use crate::error::{AnimeError, Result};
|
||||||
use crate::AnimeType;
|
use crate::AnimeType;
|
||||||
@@ -49,7 +51,10 @@ impl AnimeDiagonal {
|
|||||||
bright: f32,
|
bright: f32,
|
||||||
anime_type: AnimeType,
|
anime_type: AnimeType,
|
||||||
) -> Result<Self> {
|
) -> Result<Self> {
|
||||||
let data = std::fs::read(path)?;
|
let data = std::fs::read(path).map_err(|e| {
|
||||||
|
error!("Could not open {path:?}: {e:?}");
|
||||||
|
e
|
||||||
|
})?;
|
||||||
let data = std::io::Cursor::new(data);
|
let data = std::io::Cursor::new(data);
|
||||||
let decoder = png_pong::Decoder::new(data)?.into_steps();
|
let decoder = png_pong::Decoder::new(data)?.into_steps();
|
||||||
let png_pong::Step { raster, delay: _ } = decoder.last().ok_or(AnimeError::NoFrames)??;
|
let png_pong::Step { raster, delay: _ } = decoder.last().ok_or(AnimeError::NoFrames)??;
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ use std::path::Path;
|
|||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
|
|
||||||
use glam::Vec2;
|
use glam::Vec2;
|
||||||
|
use log::error;
|
||||||
use serde_derive::{Deserialize, Serialize};
|
use serde_derive::{Deserialize, Serialize};
|
||||||
|
|
||||||
use crate::error::{AnimeError, Result};
|
use crate::error::{AnimeError, Result};
|
||||||
@@ -107,7 +108,10 @@ impl AnimeGif {
|
|||||||
// Configure the decoder such that it will expand the image to RGBA.
|
// Configure the decoder such that it will expand the image to RGBA.
|
||||||
decoder.set_color_output(gif::ColorOutput::RGBA);
|
decoder.set_color_output(gif::ColorOutput::RGBA);
|
||||||
// Read the file header
|
// Read the file header
|
||||||
let file = File::open(file_name)?;
|
let file = File::open(file_name).map_err(|e| {
|
||||||
|
error!("Could not open {file_name:?}: {e:?}");
|
||||||
|
e
|
||||||
|
})?;
|
||||||
let mut decoder = decoder.read_info(file)?;
|
let mut decoder = decoder.read_info(file)?;
|
||||||
|
|
||||||
let mut frames = Vec::default();
|
let mut frames = Vec::default();
|
||||||
@@ -186,12 +190,14 @@ impl AnimeGif {
|
|||||||
anime_type: AnimeType,
|
anime_type: AnimeType,
|
||||||
) -> Result<Self> {
|
) -> Result<Self> {
|
||||||
let mut frames = Vec::new();
|
let mut frames = Vec::new();
|
||||||
|
|
||||||
let mut decoder = gif::DecodeOptions::new();
|
let mut decoder = gif::DecodeOptions::new();
|
||||||
// Configure the decoder such that it will expand the image to RGBA.
|
// Configure the decoder such that it will expand the image to RGBA.
|
||||||
decoder.set_color_output(gif::ColorOutput::RGBA);
|
decoder.set_color_output(gif::ColorOutput::RGBA);
|
||||||
// Read the file header
|
// Read the file header
|
||||||
let file = File::open(file_name)?;
|
let file = File::open(file_name).map_err(|e| {
|
||||||
|
error!("Could not open {file_name:?}: {e:?}");
|
||||||
|
e
|
||||||
|
})?;
|
||||||
let mut decoder = decoder.read_info(file)?;
|
let mut decoder = decoder.read_info(file)?;
|
||||||
|
|
||||||
let height = decoder.height();
|
let height = decoder.height();
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ use std::path::Path;
|
|||||||
|
|
||||||
pub use glam::Vec2;
|
pub use glam::Vec2;
|
||||||
use glam::{Mat3, Vec3};
|
use glam::{Mat3, Vec3};
|
||||||
|
use log::error;
|
||||||
|
|
||||||
use crate::data::AnimeDataBuffer;
|
use crate::data::AnimeDataBuffer;
|
||||||
use crate::error::{AnimeError, Result};
|
use crate::error::{AnimeError, Result};
|
||||||
@@ -421,7 +422,10 @@ impl AnimeImage {
|
|||||||
bright: f32,
|
bright: f32,
|
||||||
anime_type: AnimeType,
|
anime_type: AnimeType,
|
||||||
) -> Result<Self> {
|
) -> Result<Self> {
|
||||||
let data = std::fs::read(path)?;
|
let data = std::fs::read(path).map_err(|e| {
|
||||||
|
error!("Could not open {path:?}: {e:?}");
|
||||||
|
e
|
||||||
|
})?;
|
||||||
let data = std::io::Cursor::new(data);
|
let data = std::io::Cursor::new(data);
|
||||||
let decoder = png_pong::Decoder::new(data)?.into_steps();
|
let decoder = png_pong::Decoder::new(data)?.into_steps();
|
||||||
let png_pong::Step { raster, delay: _ } = decoder.last().ok_or(AnimeError::NoFrames)??;
|
let png_pong::Step { raster, delay: _ } = decoder.last().ok_or(AnimeError::NoFrames)??;
|
||||||
|
|||||||
@@ -72,13 +72,22 @@
|
|||||||
power_zones: [Keyboard],
|
power_zones: [Keyboard],
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
device_name: "G512",
|
device_name: "G512L",
|
||||||
product_id: "",
|
product_id: "",
|
||||||
layout_name: "g512",
|
layout_name: "g512",
|
||||||
basic_modes: [Static, Breathe, Strobe, Rainbow, Pulse],
|
basic_modes: [Static, Breathe, Strobe, Rainbow, Pulse],
|
||||||
basic_zones: [Key1, Key2, Key3, Key4],
|
basic_zones: [Key1, Key2, Key3, Key4],
|
||||||
advanced_type: None,
|
advanced_type: None,
|
||||||
power_zones: [Keyboard],
|
power_zones: [Keyboard, Lightbar],
|
||||||
|
),
|
||||||
|
(
|
||||||
|
device_name: "G512LI",
|
||||||
|
product_id: "",
|
||||||
|
layout_name: "g512",
|
||||||
|
basic_modes: [Static, Breathe, Strobe, Rainbow, Pulse],
|
||||||
|
basic_zones: [],
|
||||||
|
advanced_type: None,
|
||||||
|
power_zones: [Keyboard, Lightbar],
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
device_name: "G513I",
|
device_name: "G513I",
|
||||||
@@ -117,7 +126,7 @@
|
|||||||
power_zones: [Keyboard],
|
power_zones: [Keyboard],
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
device_name: "G513R",
|
device_name: "G513RC",
|
||||||
product_id: "",
|
product_id: "",
|
||||||
layout_name: "g513i",
|
layout_name: "g513i",
|
||||||
basic_modes: [Static, Breathe, Strobe, Rainbow, Pulse],
|
basic_modes: [Static, Breathe, Strobe, Rainbow, Pulse],
|
||||||
@@ -125,6 +134,15 @@
|
|||||||
advanced_type: Zoned([ZonedKbLeft, ZonedKbLeftMid, ZonedKbRightMid, ZonedKbRight, LightbarRight, LightbarRightCorner, LightbarRightBottom, LightbarLeftBottom, LightbarLeftCorner, LightbarLeft]),
|
advanced_type: Zoned([ZonedKbLeft, ZonedKbLeftMid, ZonedKbRightMid, ZonedKbRight, LightbarRight, LightbarRightCorner, LightbarRightBottom, LightbarLeftBottom, LightbarLeftCorner, LightbarLeft]),
|
||||||
power_zones: [Keyboard, Lightbar],
|
power_zones: [Keyboard, Lightbar],
|
||||||
),
|
),
|
||||||
|
(
|
||||||
|
device_name: "G513RS",
|
||||||
|
product_id: "",
|
||||||
|
layout_name: "g513i-per-key",
|
||||||
|
basic_modes: [Static, Breathe, Strobe, Rainbow, Star, Rain, Highlight, Laser, Ripple, Pulse, Comet, Flash],
|
||||||
|
basic_zones: [],
|
||||||
|
advanced_type: PerKey,
|
||||||
|
power_zones: [Keyboard, Lightbar],
|
||||||
|
),
|
||||||
(
|
(
|
||||||
device_name: "G513RW",
|
device_name: "G513RW",
|
||||||
product_id: "",
|
product_id: "",
|
||||||
@@ -132,7 +150,7 @@
|
|||||||
basic_modes: [Static, Breathe, Strobe, Rainbow, Star, Rain, Highlight, Laser, Ripple, Pulse, Comet, Flash],
|
basic_modes: [Static, Breathe, Strobe, Rainbow, Star, Rain, Highlight, Laser, Ripple, Pulse, Comet, Flash],
|
||||||
basic_zones: [],
|
basic_zones: [],
|
||||||
advanced_type: PerKey,
|
advanced_type: PerKey,
|
||||||
power_zones: [Keyboard],
|
power_zones: [Keyboard, Lightbar],
|
||||||
),
|
),
|
||||||
(
|
(
|
||||||
device_name: "G531",
|
device_name: "G531",
|
||||||
@@ -827,4 +845,4 @@
|
|||||||
advanced_type: None,
|
advanced_type: None,
|
||||||
power_zones: [Keyboard],
|
power_zones: [Keyboard],
|
||||||
),
|
),
|
||||||
])
|
])
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
use std::env;
|
||||||
|
|
||||||
use dmi_id::DMIID;
|
use dmi_id::DMIID;
|
||||||
use log::{error, info, warn};
|
use log::{error, info, warn};
|
||||||
use serde_derive::{Deserialize, Serialize};
|
use serde_derive::{Deserialize, Serialize};
|
||||||
@@ -60,7 +62,10 @@ impl LedSupportData {
|
|||||||
/// matches against laptops first, then will proceed with matching the
|
/// matches against laptops first, then will proceed with matching the
|
||||||
/// `device_name` if there are no DMI matches.
|
/// `device_name` if there are no DMI matches.
|
||||||
pub fn get_data(product_id: &str) -> Self {
|
pub fn get_data(product_id: &str) -> Self {
|
||||||
let dmi = DMIID::new().unwrap_or_default();
|
let mut dmi = DMIID::new().unwrap_or_default();
|
||||||
|
if let Ok(board_name) = env::var("BOARD_NAME") {
|
||||||
|
dmi.board_name = board_name;
|
||||||
|
}
|
||||||
// let prod_family = dmi.product_family().expect("Could not get
|
// let prod_family = dmi.product_family().expect("Could not get
|
||||||
// product_family");
|
// product_family");
|
||||||
|
|
||||||
@@ -100,6 +105,11 @@ impl LedSupportFile {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
return Some(config.clone());
|
return Some(config.clone());
|
||||||
|
} else {
|
||||||
|
warn!(
|
||||||
|
"the aura_support.ron file has no entry for this model: {device_name}, \
|
||||||
|
{product_id}"
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
None
|
None
|
||||||
|
|||||||
@@ -434,7 +434,7 @@ impl From<AuraZone> for i32 {
|
|||||||
/// ```
|
/// ```
|
||||||
#[typeshare]
|
#[typeshare]
|
||||||
#[cfg_attr(feature = "dbus", derive(Type, Value, OwnedValue))]
|
#[cfg_attr(feature = "dbus", derive(Type, Value, OwnedValue))]
|
||||||
#[derive(Debug, Clone, Deserialize, Serialize)]
|
#[derive(Debug, Clone, PartialEq, Deserialize, Serialize)]
|
||||||
pub struct AuraEffect {
|
pub struct AuraEffect {
|
||||||
/// The effect type
|
/// The effect type
|
||||||
pub mode: AuraModeNum,
|
pub mode: AuraModeNum,
|
||||||
|
|||||||
@@ -488,7 +488,7 @@ mod tests {
|
|||||||
let rows = &data.key_rows;
|
let rows = &data.key_rows;
|
||||||
for row in rows {
|
for row in rows {
|
||||||
for k in &row.row {
|
for k in &row.row {
|
||||||
if data.key_shapes.get(&k.1).is_some() {
|
if data.key_shapes.contains_key(&k.1) {
|
||||||
unused.remove(&k.1);
|
unused.remove(&k.1);
|
||||||
} else {
|
} else {
|
||||||
panic!("Key {:?} was missing matching shape {}", k.0, k.1);
|
panic!("Key {:?} was missing matching shape {}", k.0, k.1);
|
||||||
|
|||||||
@@ -12,8 +12,12 @@ edition.workspace = true
|
|||||||
default = []
|
default = []
|
||||||
mocking = []
|
mocking = []
|
||||||
x11 = ["slint/backend-winit-x11"]
|
x11 = ["slint/backend-winit-x11"]
|
||||||
|
# Requires RUSTFLAGS="--cfg tokio_unstable"
|
||||||
|
tokio-debug = ["console-subscriber"]
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
|
console-subscriber = { version = "0.2.0", optional = true }
|
||||||
|
|
||||||
nix = { version = "^0.28.0", features = ["fs"] }
|
nix = { version = "^0.28.0", features = ["fs"] }
|
||||||
tempfile = "3.3.0"
|
tempfile = "3.3.0"
|
||||||
betrayer = { version = "0.2.0" }
|
betrayer = { version = "0.2.0" }
|
||||||
@@ -25,7 +29,7 @@ rog_dbus = { path = "../rog-dbus" }
|
|||||||
rog_aura = { path = "../rog-aura" }
|
rog_aura = { path = "../rog-aura" }
|
||||||
rog_profiles = { path = "../rog-profiles" }
|
rog_profiles = { path = "../rog-profiles" }
|
||||||
rog_platform = { path = "../rog-platform" }
|
rog_platform = { path = "../rog-platform" }
|
||||||
supergfxctl = { git = "https://gitlab.com/asus-linux/supergfxctl.git", rev = "4eb6e97c22b68ae8d1e80500709b0c0580776ad3", default-features = false }
|
supergfxctl = { git = "https://gitlab.com/asus-linux/supergfxctl.git", default-features = false }
|
||||||
dmi_id = { path = "../dmi-id" }
|
dmi_id = { path = "../dmi-id" }
|
||||||
|
|
||||||
gumdrop.workspace = true
|
gumdrop.workspace = true
|
||||||
|
|||||||
@@ -25,6 +25,9 @@ use tokio::runtime::Runtime;
|
|||||||
|
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main() -> Result<()> {
|
async fn main() -> Result<()> {
|
||||||
|
#[cfg(feature = "tokio-debug")]
|
||||||
|
console_subscriber::init();
|
||||||
|
|
||||||
let self_version = env!("CARGO_PKG_VERSION");
|
let self_version = env!("CARGO_PKG_VERSION");
|
||||||
let conn = zbus::blocking::Connection::system()?;
|
let conn = zbus::blocking::Connection::system()?;
|
||||||
let proxy = rog_dbus::zbus_platform::PlatformProxyBlocking::new(&conn)?;
|
let proxy = rog_dbus::zbus_platform::PlatformProxyBlocking::new(&conn)?;
|
||||||
|
|||||||
@@ -20,7 +20,6 @@ use supergfxctl::pci_device::{GfxMode, GfxPower};
|
|||||||
use supergfxctl::zbus_proxy::DaemonProxy as SuperProxy;
|
use supergfxctl::zbus_proxy::DaemonProxy as SuperProxy;
|
||||||
use tokio::runtime::Runtime;
|
use tokio::runtime::Runtime;
|
||||||
use tokio::task::JoinHandle;
|
use tokio::task::JoinHandle;
|
||||||
use tokio::time::sleep;
|
|
||||||
use zbus::export::futures_util::StreamExt;
|
use zbus::export::futures_util::StreamExt;
|
||||||
|
|
||||||
use crate::config::Config;
|
use crate::config::Config;
|
||||||
@@ -46,6 +45,44 @@ impl Default for EnabledNotifications {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn start_dpu_status_mon(config: Arc<Mutex<Config>>) {
|
||||||
|
use supergfxctl::pci_device::Device;
|
||||||
|
let dev = Device::find().unwrap_or_default();
|
||||||
|
let mut found_dgpu = false; // just for logging
|
||||||
|
for dev in dev {
|
||||||
|
if dev.is_dgpu() {
|
||||||
|
let enabled_notifications_copy = config.clone();
|
||||||
|
// Plain old thread is perfectly fine since most of this is potentially blocking
|
||||||
|
std::thread::spawn(move || {
|
||||||
|
let mut last_status = GfxPower::Unknown;
|
||||||
|
loop {
|
||||||
|
std::thread::sleep(Duration::from_millis(1000));
|
||||||
|
if let Ok(status) = dev.get_runtime_status() {
|
||||||
|
if status != GfxPower::Unknown && status != last_status {
|
||||||
|
if let Ok(config) = enabled_notifications_copy.lock() {
|
||||||
|
if !config.notifications.receive_notify_gfx_status
|
||||||
|
|| !config.notifications.enabled
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Required check because status cycles through
|
||||||
|
// active/unknown/suspended
|
||||||
|
do_gpu_status_notif("dGPU status changed:", &status).ok();
|
||||||
|
}
|
||||||
|
last_status = status;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
found_dgpu = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if !found_dgpu {
|
||||||
|
warn!("Did not find a dGPU on this system, dGPU status won't be avilable");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
pub fn start_notifications(
|
pub fn start_notifications(
|
||||||
config: Arc<Mutex<Config>>,
|
config: Arc<Mutex<Config>>,
|
||||||
rt: &Runtime,
|
rt: &Runtime,
|
||||||
@@ -104,20 +141,14 @@ pub fn start_notifications(
|
|||||||
// GPU MUX Mode notif
|
// GPU MUX Mode notif
|
||||||
let enabled_notifications_copy = config.clone();
|
let enabled_notifications_copy = config.clone();
|
||||||
tokio::spawn(async move {
|
tokio::spawn(async move {
|
||||||
let conn = zbus::Connection::system()
|
let conn = zbus::Connection::system().await.map_err(|e| {
|
||||||
.await
|
error!("zbus signal: receive_notify_gpu_mux_mode: {e}");
|
||||||
.map_err(|e| {
|
e
|
||||||
error!("zbus signal: receive_notify_gpu_mux_mode: {e}");
|
})?;
|
||||||
e
|
let proxy = PlatformProxy::new(&conn).await.map_err(|e| {
|
||||||
})
|
error!("zbus signal: receive_notify_gpu_mux_mode: {e}");
|
||||||
.unwrap();
|
e
|
||||||
let proxy = PlatformProxy::new(&conn)
|
})?;
|
||||||
.await
|
|
||||||
.map_err(|e| {
|
|
||||||
error!("zbus signal: receive_notify_gpu_mux_mode: {e}");
|
|
||||||
e
|
|
||||||
})
|
|
||||||
.unwrap();
|
|
||||||
|
|
||||||
let mut actual_mux_mode = GpuMode::Error;
|
let mut actual_mux_mode = GpuMode::Error;
|
||||||
if let Ok(mode) = proxy.gpu_mux_mode().await {
|
if let Ok(mode) = proxy.gpu_mux_mode().await {
|
||||||
@@ -139,87 +170,75 @@ pub fn start_notifications(
|
|||||||
do_mux_notification("Reboot required. BIOS GPU MUX mode set to", &mode).ok();
|
do_mux_notification("Reboot required. BIOS GPU MUX mode set to", &mode).ok();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Ok::<(), zbus::Error>(())
|
||||||
});
|
});
|
||||||
|
|
||||||
use supergfxctl::pci_device::Device;
|
let enabled_notifications_copy = config.clone();
|
||||||
let dev = Device::find().unwrap_or_default();
|
|
||||||
let mut found_dgpu = false; // just for logging
|
|
||||||
for dev in dev {
|
|
||||||
if dev.is_dgpu() {
|
|
||||||
let enabled_notifications_copy = config.clone();
|
|
||||||
// Plain old thread is perfectly fine since most of this is potentially blocking
|
|
||||||
tokio::spawn(async move {
|
|
||||||
let mut last_status = GfxPower::Unknown;
|
|
||||||
loop {
|
|
||||||
if let Ok(status) = dev.get_runtime_status() {
|
|
||||||
if status != GfxPower::Unknown && status != last_status {
|
|
||||||
if let Ok(config) = enabled_notifications_copy.lock() {
|
|
||||||
if !config.notifications.receive_notify_gfx_status
|
|
||||||
|| !config.notifications.enabled
|
|
||||||
{
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// Required check because status cycles through
|
|
||||||
// active/unknown/suspended
|
|
||||||
do_gpu_status_notif("dGPU status changed:", &status).ok();
|
|
||||||
}
|
|
||||||
last_status = status;
|
|
||||||
}
|
|
||||||
sleep(Duration::from_millis(500)).await;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
found_dgpu = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if !found_dgpu {
|
|
||||||
warn!("Did not find a dGPU on this system, dGPU status won't be avilable");
|
|
||||||
}
|
|
||||||
|
|
||||||
// GPU Mode change/action notif
|
// GPU Mode change/action notif
|
||||||
tokio::spawn(async move {
|
tokio::spawn(async move {
|
||||||
let conn = zbus::Connection::system()
|
if let Err(e) = {
|
||||||
.await
|
let conn = zbus::Connection::system().await?;
|
||||||
.map_err(|e| {
|
let proxy = SuperProxy::builder(&conn).build().await?;
|
||||||
error!("zbus signal: receive_notify_action: {e}");
|
let _ = proxy.mode().await?;
|
||||||
e
|
|
||||||
})
|
|
||||||
.unwrap();
|
|
||||||
let proxy = SuperProxy::builder(&conn)
|
|
||||||
.build()
|
|
||||||
.await
|
|
||||||
.map_err(|e| {
|
|
||||||
error!("zbus signal: receive_notify_action: {e}");
|
|
||||||
e
|
|
||||||
})
|
|
||||||
.unwrap();
|
|
||||||
|
|
||||||
if proxy.mode().await.is_err() {
|
let proxy_copy = proxy.clone();
|
||||||
info!("supergfxd not running or not responding");
|
if let Ok(mut p) = proxy.receive_notify_action().await {
|
||||||
return;
|
tokio::spawn(async move {
|
||||||
}
|
info!("Started zbus signal thread: receive_notify_action");
|
||||||
|
while let Some(e) = p.next().await {
|
||||||
if let Ok(mut p) = proxy.receive_notify_action().await {
|
if let Ok(out) = e.args() {
|
||||||
info!("Started zbus signal thread: receive_notify_action");
|
let action = out.action();
|
||||||
while let Some(e) = p.next().await {
|
let mode = convert_gfx_mode(proxy.mode().await.unwrap_or_default());
|
||||||
if let Ok(out) = e.args() {
|
match action {
|
||||||
let action = out.action();
|
supergfxctl::actions::UserActionRequired::Reboot => {
|
||||||
let mode = convert_gfx_mode(proxy.mode().await.unwrap_or_default());
|
do_mux_notification(
|
||||||
match action {
|
"Graphics mode change requires reboot",
|
||||||
supergfxctl::actions::UserActionRequired::Reboot => {
|
&mode,
|
||||||
do_mux_notification("Graphics mode change requires reboot", &mode)
|
)
|
||||||
|
}
|
||||||
|
_ => do_gfx_action_notif(<&str>::from(action), *action, mode),
|
||||||
|
}
|
||||||
|
.map_err(|e| {
|
||||||
|
error!("zbus signal: do_gfx_action_notif: {e}");
|
||||||
|
e
|
||||||
|
})
|
||||||
|
.ok();
|
||||||
}
|
}
|
||||||
_ => do_gfx_action_notif(<&str>::from(action), *action, mode),
|
|
||||||
}
|
}
|
||||||
.map_err(|e| {
|
});
|
||||||
error!("zbus signal: do_gfx_action_notif: {e}");
|
};
|
||||||
e
|
|
||||||
})
|
if let Ok(mut p) = proxy_copy.receive_notify_gfx_status().await {
|
||||||
.ok();
|
tokio::spawn(async move {
|
||||||
}
|
info!("Started zbus signal thread: receive_notify_gfx_status");
|
||||||
}
|
let mut last_status = GfxPower::Unknown;
|
||||||
};
|
while let Some(e) = p.next().await {
|
||||||
|
if let Ok(out) = e.args() {
|
||||||
|
let status = out.status;
|
||||||
|
if status != GfxPower::Unknown && status != last_status {
|
||||||
|
if let Ok(config) = enabled_notifications_copy.lock() {
|
||||||
|
if !config.notifications.receive_notify_gfx_status
|
||||||
|
|| !config.notifications.enabled
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Required check because status cycles through
|
||||||
|
// active/unknown/suspended
|
||||||
|
do_gpu_status_notif("dGPU status changed:", &status).ok();
|
||||||
|
}
|
||||||
|
last_status = status;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
Ok::<(), zbus::Error>(())
|
||||||
|
} {
|
||||||
|
error!("zbus signal: receive_notify_gfx_status: {e}");
|
||||||
|
info!("Attempting to start plain dgpu status monitor");
|
||||||
|
start_dpu_status_mon(config.clone());
|
||||||
|
}
|
||||||
|
Ok::<(), zbus::Error>(())
|
||||||
});
|
});
|
||||||
|
|
||||||
Ok(vec![blocking])
|
Ok(vec![blocking])
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
use std::sync::{Arc, Mutex};
|
use std::sync::{Arc, Mutex};
|
||||||
|
|
||||||
use log::{error, info};
|
use log::{debug, error, info};
|
||||||
use rog_aura::keyboard::LaptopAuraPower;
|
use rog_aura::keyboard::LaptopAuraPower;
|
||||||
|
use rog_aura::{AuraDeviceType, PowerZones};
|
||||||
use rog_dbus::zbus_aura::AuraProxy;
|
use rog_dbus::zbus_aura::AuraProxy;
|
||||||
use slint::{ComponentHandle, Model, RgbaColor, SharedString};
|
use slint::{ComponentHandle, Model, RgbaColor, SharedString};
|
||||||
|
|
||||||
@@ -75,7 +76,7 @@ pub fn setup_aura_page(ui: &MainWindow, _states: Arc<Mutex<Config>>) {
|
|||||||
tokio::spawn(async move {
|
tokio::spawn(async move {
|
||||||
let Ok(aura) = find_aura_iface().await else {
|
let Ok(aura) = find_aura_iface().await else {
|
||||||
info!("This device appears to have no aura interfaces");
|
info!("This device appears to have no aura interfaces");
|
||||||
return;
|
return Ok::<(), zbus::Error>(());
|
||||||
};
|
};
|
||||||
|
|
||||||
set_ui_props_async!(handle, aura, AuraPageData, brightness);
|
set_ui_props_async!(handle, aura, AuraPageData, brightness);
|
||||||
@@ -84,24 +85,40 @@ pub fn setup_aura_page(ui: &MainWindow, _states: Arc<Mutex<Config>>) {
|
|||||||
set_ui_props_async!(handle, aura, AuraPageData, led_power);
|
set_ui_props_async!(handle, aura, AuraPageData, led_power);
|
||||||
set_ui_props_async!(handle, aura, AuraPageData, device_type);
|
set_ui_props_async!(handle, aura, AuraPageData, device_type);
|
||||||
|
|
||||||
if let Ok(pow3r) = aura.supported_power_zones().await {
|
if let Ok(mut pow3r) = aura.supported_power_zones().await {
|
||||||
|
let dev_type = aura
|
||||||
|
.device_type()
|
||||||
|
.await
|
||||||
|
.unwrap_or(AuraDeviceType::LaptopPost2021);
|
||||||
log::debug!("Available LED power modes {pow3r:?}");
|
log::debug!("Available LED power modes {pow3r:?}");
|
||||||
handle
|
handle
|
||||||
.upgrade_in_event_loop(move |handle| {
|
.upgrade_in_event_loop(move |handle| {
|
||||||
let power: Vec<SlintPowerZones> = pow3r.iter().map(|p| (*p).into()).collect();
|
|
||||||
let names: Vec<SharedString> = handle
|
let names: Vec<SharedString> = handle
|
||||||
.global::<AuraPageData>()
|
.global::<AuraPageData>()
|
||||||
.get_power_zone_names()
|
.get_power_zone_names()
|
||||||
.iter()
|
.iter()
|
||||||
.collect();
|
.collect();
|
||||||
let names: Vec<SharedString> =
|
|
||||||
pow3r.iter().map(|n| names[(*n) as usize].clone()).collect();
|
if dev_type.is_old_laptop() {
|
||||||
handle
|
// Need to add the specific KeyboardAndLightbar
|
||||||
.global::<AuraPageData>()
|
if pow3r.contains(&PowerZones::Keyboard)
|
||||||
.set_supported_power_zones(power.as_slice().into());
|
&& pow3r.contains(&PowerZones::Lightbar)
|
||||||
handle
|
{
|
||||||
.global::<AuraPageData>()
|
pow3r.push(PowerZones::KeyboardAndLightbar);
|
||||||
.set_power_zone_names_old(names.as_slice().into());
|
}
|
||||||
|
let names: Vec<SharedString> =
|
||||||
|
pow3r.iter().map(|n| names[(*n) as usize].clone()).collect();
|
||||||
|
handle
|
||||||
|
.global::<AuraPageData>()
|
||||||
|
.set_power_zone_names_old(names.as_slice().into());
|
||||||
|
} else {
|
||||||
|
let power: Vec<SlintPowerZones> =
|
||||||
|
pow3r.iter().map(|p| (*p).into()).collect();
|
||||||
|
|
||||||
|
handle
|
||||||
|
.global::<AuraPageData>()
|
||||||
|
.set_supported_power_zones(power.as_slice().into());
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.ok();
|
.ok();
|
||||||
}
|
}
|
||||||
@@ -209,5 +226,7 @@ pub fn setup_aura_page(ui: &MainWindow, _states: Arc<Mutex<Config>>) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
debug!("Aura setup tasks complete");
|
||||||
|
Ok(())
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"POT-Creation-Date: 2024-05-14 05:08+0000\n"
|
"POT-Creation-Date: 2024-05-17 23:21+0000\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@@ -137,61 +137,6 @@ msgctxt "PageAnime"
|
|||||||
msgid "Off when on battery"
|
msgid "Off when on battery"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:26
|
|
||||||
msgctxt "FanTab"
|
|
||||||
msgid "This fan is not avilable on this machine"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:34
|
|
||||||
msgctxt "FanTab"
|
|
||||||
msgid "Enabled"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:43
|
|
||||||
msgctxt "FanTab"
|
|
||||||
msgid "Apply"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:51
|
|
||||||
msgctxt "FanTab"
|
|
||||||
msgid "Cancel"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:59
|
|
||||||
msgctxt "FanTab"
|
|
||||||
msgid "Factory Default (all fans)"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:72
|
|
||||||
msgctxt "PageFans"
|
|
||||||
msgid "Balanced"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:75 rog-control-center/ui/pages/fans.slint:134 rog-control-center/ui/pages/fans.slint:193
|
|
||||||
msgctxt "PageFans"
|
|
||||||
msgid "CPU"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:93 rog-control-center/ui/pages/fans.slint:152 rog-control-center/ui/pages/fans.slint:211
|
|
||||||
msgctxt "PageFans"
|
|
||||||
msgid "Mid"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:111 rog-control-center/ui/pages/fans.slint:170 rog-control-center/ui/pages/fans.slint:229
|
|
||||||
msgctxt "PageFans"
|
|
||||||
msgid "GPU"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:131
|
|
||||||
msgctxt "PageFans"
|
|
||||||
msgid "Performance"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/fans.slint:190
|
|
||||||
msgctxt "PageFans"
|
|
||||||
msgid "Quiet"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/app_settings.slint:26
|
#: rog-control-center/ui/pages/app_settings.slint:26
|
||||||
msgctxt "PageAppSettings"
|
msgctxt "PageAppSettings"
|
||||||
msgid "Run in background after closing"
|
msgid "Run in background after closing"
|
||||||
@@ -257,6 +202,61 @@ msgctxt "PageAura"
|
|||||||
msgid "Power Zones"
|
msgid "Power Zones"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:26
|
||||||
|
msgctxt "FanTab"
|
||||||
|
msgid "This fan is not avilable on this machine"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:34
|
||||||
|
msgctxt "FanTab"
|
||||||
|
msgid "Enabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:43
|
||||||
|
msgctxt "FanTab"
|
||||||
|
msgid "Apply"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:51
|
||||||
|
msgctxt "FanTab"
|
||||||
|
msgid "Cancel"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:59
|
||||||
|
msgctxt "FanTab"
|
||||||
|
msgid "Factory Default (all fans)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:72
|
||||||
|
msgctxt "PageFans"
|
||||||
|
msgid "Balanced"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:75 rog-control-center/ui/pages/fans.slint:134 rog-control-center/ui/pages/fans.slint:193
|
||||||
|
msgctxt "PageFans"
|
||||||
|
msgid "CPU"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:93 rog-control-center/ui/pages/fans.slint:152 rog-control-center/ui/pages/fans.slint:211
|
||||||
|
msgctxt "PageFans"
|
||||||
|
msgid "Mid"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:111 rog-control-center/ui/pages/fans.slint:170 rog-control-center/ui/pages/fans.slint:229
|
||||||
|
msgctxt "PageFans"
|
||||||
|
msgid "GPU"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:131
|
||||||
|
msgctxt "PageFans"
|
||||||
|
msgid "Performance"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/pages/fans.slint:190
|
||||||
|
msgctxt "PageFans"
|
||||||
|
msgid "Quiet"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/pages/system.slint:26
|
#: rog-control-center/ui/pages/system.slint:26
|
||||||
msgctxt "SystemPageData"
|
msgctxt "SystemPageData"
|
||||||
msgid "Balanced"
|
msgid "Balanced"
|
||||||
@@ -412,6 +412,46 @@ msgctxt "PageSystem"
|
|||||||
msgid "Throttle Policy on AC"
|
msgid "Throttle Policy on AC"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/widgets/aura_power.slint:33
|
||||||
|
msgctxt "AuraPowerGroup"
|
||||||
|
msgid "Boot"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/widgets/aura_power.slint:43
|
||||||
|
msgctxt "AuraPowerGroup"
|
||||||
|
msgid "Awake"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/widgets/aura_power.slint:53
|
||||||
|
msgctxt "AuraPowerGroup"
|
||||||
|
msgid "Sleep"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/widgets/aura_power.slint:63
|
||||||
|
msgctxt "AuraPowerGroup"
|
||||||
|
msgid "Shutdown"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/widgets/aura_power.slint:102
|
||||||
|
msgctxt "AuraPowerGroupOld"
|
||||||
|
msgid "Zone Selection"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/widgets/aura_power.slint:114
|
||||||
|
msgctxt "AuraPowerGroupOld"
|
||||||
|
msgid "Boot"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/widgets/aura_power.slint:124
|
||||||
|
msgctxt "AuraPowerGroupOld"
|
||||||
|
msgid "Awake"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: rog-control-center/ui/widgets/aura_power.slint:134
|
||||||
|
msgctxt "AuraPowerGroupOld"
|
||||||
|
msgid "Sleep"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/types/aura_types.slint:49
|
#: rog-control-center/ui/types/aura_types.slint:49
|
||||||
msgctxt "Aura power zone"
|
msgctxt "Aura power zone"
|
||||||
msgid "Logo"
|
msgid "Logo"
|
||||||
@@ -602,82 +642,42 @@ msgctxt "Aura speed"
|
|||||||
msgid "High"
|
msgid "High"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/widgets/aura_power.slint:33
|
#: rog-control-center/ui/main_window.slint:51
|
||||||
msgctxt "AuraPowerGroup"
|
|
||||||
msgid "Boot"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/widgets/aura_power.slint:43
|
|
||||||
msgctxt "AuraPowerGroup"
|
|
||||||
msgid "Awake"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/widgets/aura_power.slint:53
|
|
||||||
msgctxt "AuraPowerGroup"
|
|
||||||
msgid "Sleep"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/widgets/aura_power.slint:63
|
|
||||||
msgctxt "AuraPowerGroup"
|
|
||||||
msgid "Shutdown"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/widgets/aura_power.slint:102
|
|
||||||
msgctxt "AuraPowerGroupOld"
|
|
||||||
msgid "Zone Selection"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/widgets/aura_power.slint:114
|
|
||||||
msgctxt "AuraPowerGroupOld"
|
|
||||||
msgid "Boot"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/widgets/aura_power.slint:124
|
|
||||||
msgctxt "AuraPowerGroupOld"
|
|
||||||
msgid "Awake"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/widgets/aura_power.slint:134
|
|
||||||
msgctxt "AuraPowerGroupOld"
|
|
||||||
msgid "Sleep"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: rog-control-center/ui/main_window.slint:50
|
|
||||||
msgctxt "MainWindow"
|
msgctxt "MainWindow"
|
||||||
msgid "ROG"
|
msgid "ROG"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/main_window.slint:52
|
#: rog-control-center/ui/main_window.slint:53
|
||||||
msgctxt "Menu1"
|
msgctxt "Menu1"
|
||||||
msgid "System Control"
|
msgid "System Control"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/main_window.slint:53
|
#: rog-control-center/ui/main_window.slint:54
|
||||||
msgctxt "Menu2"
|
msgctxt "Menu2"
|
||||||
msgid "Keyboard Aura"
|
msgid "Keyboard Aura"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/main_window.slint:54
|
#: rog-control-center/ui/main_window.slint:55
|
||||||
msgctxt "Menu3"
|
msgctxt "Menu3"
|
||||||
msgid "AniMe Matrix"
|
msgid "AniMe Matrix"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/main_window.slint:55
|
#: rog-control-center/ui/main_window.slint:56
|
||||||
msgctxt "Menu4"
|
msgctxt "Menu4"
|
||||||
msgid "Fan Curves"
|
msgid "Fan Curves"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/main_window.slint:56
|
#: rog-control-center/ui/main_window.slint:57
|
||||||
msgctxt "Menu5"
|
msgctxt "Menu5"
|
||||||
msgid "App Settings"
|
msgid "App Settings"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/main_window.slint:57
|
#: rog-control-center/ui/main_window.slint:58
|
||||||
msgctxt "Menu6"
|
msgctxt "Menu6"
|
||||||
msgid "About"
|
msgid "About"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: rog-control-center/ui/main_window.slint:69
|
#: rog-control-center/ui/main_window.slint:70
|
||||||
msgctxt "MainWindow"
|
msgctxt "MainWindow"
|
||||||
msgid "Quit"
|
msgid "Quit"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import { SideBar } from "widgets/sidebar.slint";
|
|||||||
import { PageAbout } from "pages/about.slint";
|
import { PageAbout } from "pages/about.slint";
|
||||||
import { PageFans } from "pages/fans.slint";
|
import { PageFans } from "pages/fans.slint";
|
||||||
import { PageAnime, AnimePageData } from "pages/anime.slint";
|
import { PageAnime, AnimePageData } from "pages/anime.slint";
|
||||||
|
import { RogItem } from "widgets/common.slint";
|
||||||
import { PageAura } from "pages/aura.slint";
|
import { PageAura } from "pages/aura.slint";
|
||||||
import { Node } from "widgets/graph.slint";
|
import { Node } from "widgets/graph.slint";
|
||||||
export { Node }
|
export { Node }
|
||||||
@@ -178,4 +179,39 @@ export component MainWindow inherits Window {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if SomeError.error_message != "": Rectangle {
|
||||||
|
x: 0px;
|
||||||
|
y: 0px;
|
||||||
|
width: root.width;
|
||||||
|
height: root.height;
|
||||||
|
padding: 10px;
|
||||||
|
|
||||||
|
background: Palette.background;
|
||||||
|
border-color: Palette.border;
|
||||||
|
border-width: 3px;
|
||||||
|
border-radius: 10px;
|
||||||
|
|
||||||
|
VerticalBox {
|
||||||
|
RogItem {
|
||||||
|
min-height: 50px;
|
||||||
|
max-height: 100px;
|
||||||
|
Text {
|
||||||
|
text <=> SomeError.error_message;
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Text {
|
||||||
|
text <=> SomeError.error_help;
|
||||||
|
horizontal-alignment: TextHorizontalAlignment.center;
|
||||||
|
vertical-alignment: TextVerticalAlignment.center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export global SomeError {
|
||||||
|
in property <string> error_message: "";
|
||||||
|
in property <string> error_help: "";
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user