Compare commits

...

12 Commits

Author SHA1 Message Date
Luke D Jones 855d4dc701 Remove misc files 2020-08-28 21:04:54 +12:00
Luke D Jones 3095e181eb Merge branch 'next' of gitlab.com:asus-linux/asus-nb-ctrl into next 2020-08-28 21:02:35 +12:00
Luke D Jones ee020085f8 Fix issue with trying to find dev nodes before they are available 2020-08-28 21:02:17 +12:00
Luke D Jones b70137eec8 Bump versiona and update deps 2020-08-28 20:07:46 +12:00
Luke Jones aa4d79c6f5 Update README.md 2020-08-24 22:28:06 +00:00
Luke Jones ab8393a807 Update README.md 2020-08-24 22:10:21 +00:00
Luke D Jones b8c83a1a72 Fixes to rpm build specifically for OBS 2020-08-23 21:30:31 +12:00
Luke D Jones 8cee0e6735 Fixes to deb build specifically for OBS 2020-08-23 21:28:24 +12:00
Luke D Jones c482208d3c Try CI again for artifact 2020-08-23 15:39:19 +12:00
Luke D Jones 708712e00a Next CI try 2020-08-23 14:50:22 +12:00
Luke D Jones 25ee250542 Trial by fire of gitlab CI 2020-08-23 14:48:41 +12:00
Luke D Jones b921b68c57 Update G531GW config
Closes #3
2020-08-23 14:18:19 +12:00
20 changed files with 133 additions and 335 deletions
+26
View File
@@ -0,0 +1,26 @@
image: rustdocker/rust:stable
before_script:
- apt-get update -qq && apt-get install -y -qq libdbus-1-dev libclang-dev libudev-dev
stages:
- test
- build
test:
script:
- cargo check #+nightly check --features "clippy"
build:
only:
- next
script:
- make && make vendor
artifacts:
paths:
- vendor-$(grep -P 'version = "(\d.\d.\d)"' asus-nb-ctrl/Cargo.toml | cut -d'"' -f2).tar.xz
- cargo-config
variables:
GIT_SUBMODULE_STRATEGY: normal
Generated
+50 -135
View File
@@ -2,9 +2,9 @@
# It is not intended for manual editing. # It is not intended for manual editing.
[[package]] [[package]]
name = "adler32" name = "adler32"
version = "1.1.0" version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d" checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
[[package]] [[package]]
name = "aho-corasick" name = "aho-corasick"
@@ -30,7 +30,7 @@ dependencies = [
[[package]] [[package]]
name = "asus-nb-ctrl" name = "asus-nb-ctrl"
version = "1.0.2" version = "1.0.3"
dependencies = [ dependencies = [
"asus-nb", "asus-nb",
"async-trait", "async-trait",
@@ -52,9 +52,9 @@ dependencies = [
[[package]] [[package]]
name = "async-trait" name = "async-trait"
version = "0.1.36" version = "0.1.38"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a265e3abeffdce30b2e26b7a11b222fe37c6067404001b434101457d0385eb92" checksum = "6e1a4a2f97ce50c9d0282c1468816208588441492b40d813b2e0419c22c05e7f"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@@ -72,21 +72,6 @@ dependencies = [
"winapi 0.3.9", "winapi 0.3.9",
] ]
[[package]]
name = "bit-set"
version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6e11e16035ea35e4e5997b393eacbf6f63983188f7a2ad25bfb13465f5ad59de"
dependencies = [
"bit-vec",
]
[[package]]
name = "bit-vec"
version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5f0dc55f2d8a1a85650ac47858bb001b4c0dd73d79e3c455a842925e68d29cd3"
[[package]] [[package]]
name = "bitflags" name = "bitflags"
version = "1.2.1" version = "1.2.1"
@@ -95,18 +80,15 @@ checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
[[package]] [[package]]
name = "bytes" name = "bytes"
version = "0.5.5" version = "0.5.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "118cf036fbb97d0816e3c34b2d7a1e8cfc60f68fcf63d550ddbe9bd5f59c213b" checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38"
dependencies = [
"loom",
]
[[package]] [[package]]
name = "cc" name = "cc"
version = "1.0.56" version = "1.0.59"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "77c1f1d60091c1b73e2b1f4560ab419204b178e625fa945ded7b660becd2bd46" checksum = "66120af515773fb005778dc07c261bd201ec8ce50bd6e7144c927753fe013381"
[[package]] [[package]]
name = "cfg-if" name = "cfg-if"
@@ -136,11 +118,12 @@ dependencies = [
[[package]] [[package]]
name = "dbus-tokio" name = "dbus-tokio"
version = "0.5.1" version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "641f98f32585b8a8cc5d88c6c55a8f6cdf60740baab17c57d59b9b662c73f522" checksum = "baaf99ea9b8296ba0db293cad28c51d788e690c47ebe9974b864354b258a636a"
dependencies = [ dependencies = [
"dbus", "dbus",
"libc",
"mio", "mio",
"tokio", "tokio",
] ]
@@ -174,9 +157,9 @@ dependencies = [
[[package]] [[package]]
name = "filetime" name = "filetime"
version = "0.2.10" version = "0.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "affc17579b132fc2461adf7c575cc6e8b134ebca52c51f5411388965227dc695" checksum = "3ed85775dcc68644b5c950ac06a2b23768d3bc9390464151aaf27136998dcf9e"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
"libc", "libc",
@@ -301,19 +284,6 @@ dependencies = [
"slab", "slab",
] ]
[[package]]
name = "generator"
version = "0.6.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "add72f17bb81521258fcc8a7a3245b1e184e916bfbe34f0ea89558f440df5c68"
dependencies = [
"cc",
"libc",
"log",
"rustc_version",
"winapi 0.3.9",
]
[[package]] [[package]]
name = "gumdrop" name = "gumdrop"
version = "0.8.0" version = "0.8.0"
@@ -336,9 +306,9 @@ dependencies = [
[[package]] [[package]]
name = "hermit-abi" name = "hermit-abi"
version = "0.1.14" version = "0.1.15"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b9586eedd4ce6b3c498bc3b4dd92fc9f11166aa908a914071953768066c67909" checksum = "3deed196b6e7f9e44a2ae8d94225d80302d81208b1bb673fd21fe634645c85a9"
dependencies = [ dependencies = [
"libc", "libc",
] ]
@@ -395,9 +365,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]] [[package]]
name = "libc" name = "libc"
version = "0.2.71" version = "0.2.76"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9457b06509d27052635f90d6466700c65095fdf75409b3fbdd903e988b886f49" checksum = "755456fae044e6fa1ebbbd1b3e902ae19e73097ed4ed87bb79934a867c007bc3"
[[package]] [[package]]
name = "libdbus-sys" name = "libdbus-sys"
@@ -446,24 +416,13 @@ dependencies = [
[[package]] [[package]]
name = "log" name = "log"
version = "0.4.8" version = "0.4.11"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7" checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
] ]
[[package]]
name = "loom"
version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ecc775857611e1df29abba5c41355cdf540e7e9d4acfdf0f355eefee82330b7"
dependencies = [
"cfg-if",
"generator",
"scoped-tls",
]
[[package]] [[package]]
name = "memchr" name = "memchr"
version = "2.3.3" version = "2.3.3"
@@ -540,24 +499,24 @@ checksum = "e521b6adefa0b2c1fa5d2abdf9a5216288686fe6146249215d884c0e5ab320b0"
[[package]] [[package]]
name = "once_cell" name = "once_cell"
version = "1.4.0" version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b631f7e854af39a1739f401cf34a8a013dfe09eac4fa4dba91e9768bd28168d" checksum = "260e51e7efe62b592207e9e13a68e43692a7a279171d6ba57abd208bf23645ad"
[[package]] [[package]]
name = "pin-project" name = "pin-project"
version = "0.4.22" version = "0.4.23"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "12e3a6cdbfe94a5e4572812a0201f8c0ed98c1c452c7b8563ce2276988ef9c17" checksum = "ca4433fff2ae79342e497d9f8ee990d174071408f28f726d6d83af93e58e48aa"
dependencies = [ dependencies = [
"pin-project-internal", "pin-project-internal",
] ]
[[package]] [[package]]
name = "pin-project-internal" name = "pin-project-internal"
version = "0.4.22" version = "0.4.23"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a0ffd45cf79d88737d7cc85bfd5d2894bee1139b356e616fe85dc389c61aaf7" checksum = "2c0e815c3ee9a031fdf5af21c10aa17c573c9c6a566328d99e3936c34e36461f"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@@ -578,15 +537,15 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
[[package]] [[package]]
name = "pkg-config" name = "pkg-config"
version = "0.3.17" version = "0.3.18"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "05da548ad6865900e60eaba7f589cc0783590a92e940c26953ff81ddbab2d677" checksum = "d36492546b6af1463394d46f0c834346f31548646f6ba10849802c9c9a27ac33"
[[package]] [[package]]
name = "proc-macro-error" name = "proc-macro-error"
version = "1.0.3" version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fc175e9777c3116627248584e8f8b3e2987405cabe1c0adf7d1dd28f09dc7880" checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
dependencies = [ dependencies = [
"proc-macro-error-attr", "proc-macro-error-attr",
"proc-macro2", "proc-macro2",
@@ -597,22 +556,20 @@ dependencies = [
[[package]] [[package]]
name = "proc-macro-error-attr" name = "proc-macro-error-attr"
version = "1.0.3" version = "1.0.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3cc9795ca17eb581285ec44936da7fc2335a3f34f2ddd13118b6f4d515435c50" checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn",
"syn-mid",
"version_check", "version_check",
] ]
[[package]] [[package]]
name = "proc-macro-hack" name = "proc-macro-hack"
version = "0.5.16" version = "0.5.18"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7e0456befd48169b9f13ef0f0ad46d492cf9d2dbb918bcf38e01eed4ce3ec5e4" checksum = "99c605b9a0adc77b7211c6b1f722dcb613d68d66859a44f3d485a6da332b0598"
[[package]] [[package]]
name = "proc-macro-nested" name = "proc-macro-nested"
@@ -622,9 +579,9 @@ checksum = "eba180dafb9038b050a4c280019bbedf9f2467b61e5d892dcad585bb57aadc5a"
[[package]] [[package]]
name = "proc-macro2" name = "proc-macro2"
version = "1.0.18" version = "1.0.19"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "beae6331a816b1f65d04c45b078fd8e6c93e8071771f41b8163255bbd8d7c8fa" checksum = "04f5f085b5d71e2188cb8271e5da0161ad52c3f227a661a3c135fdf28e258b12"
dependencies = [ dependencies = [
"unicode-xid", "unicode-xid",
] ]
@@ -646,9 +603,9 @@ dependencies = [
[[package]] [[package]]
name = "redox_syscall" name = "redox_syscall"
version = "0.1.56" version = "0.1.57"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2439c63f3f6139d1b57529d16bc3b8bb855230c8efcc5d3a896c8bea7c3b1e84" checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
[[package]] [[package]]
name = "regex" name = "regex"
@@ -676,24 +633,14 @@ checksum = "cabe4fa914dec5870285fa7f71f602645da47c486e68486d2b4ceb4a343e90ac"
[[package]] [[package]]
name = "rusb" name = "rusb"
version = "0.6.0" version = "0.6.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "884a9ee2c66cdb5ca6c5243ea91cdbba9865506792c3d175d1ad8de8bb0ea64a" checksum = "fac7576c07e31f5885d67ec09fd8509e4b730cea4266fecfe7f068f3a5d1f3b3"
dependencies = [ dependencies = [
"bit-set",
"libc", "libc",
"libusb1-sys", "libusb1-sys",
] ]
[[package]]
name = "rustc_version"
version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a"
dependencies = [
"semver",
]
[[package]] [[package]]
name = "rustversion" name = "rustversion"
version = "1.0.3" version = "1.0.3"
@@ -711,38 +658,17 @@ version = "1.0.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
[[package]]
name = "scoped-tls"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "332ffa32bf586782a3efaeb58f127980944bbc8c4d6913a86107ac2a5ab24b28"
[[package]]
name = "semver"
version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403"
dependencies = [
"semver-parser",
]
[[package]]
name = "semver-parser"
version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]] [[package]]
name = "serde" name = "serde"
version = "1.0.114" version = "1.0.115"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5317f7588f0a5078ee60ef675ef96735a1442132dc645eb1d12c018620ed8cd3" checksum = "e54c9a88f2da7238af84b5101443f0c0d0a3bbdc455e34a5c9497b1903ed55d5"
[[package]] [[package]]
name = "serde_derive" name = "serde_derive"
version = "1.0.114" version = "1.0.115"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2a0be94b04690fbaed37cddffc5c134bf537c8e3329d53e982fe04c374978f8e" checksum = "609feed1d0a73cc36a0182a840a9b37b4a82f0b1150369f0536a9e3f2a31dc48"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@@ -751,9 +677,9 @@ dependencies = [
[[package]] [[package]]
name = "serde_json" name = "serde_json"
version = "1.0.56" version = "1.0.57"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3433e879a558dde8b5e8feb2a04899cf34fdde1fafb894687e52105fc1162ac3" checksum = "164eacbdb13512ec2745fb09d51fd5b22b0d65ed294a1dcf7285a360c80a675c"
dependencies = [ dependencies = [
"itoa", "itoa",
"ryu", "ryu",
@@ -779,26 +705,15 @@ dependencies = [
[[package]] [[package]]
name = "syn" name = "syn"
version = "1.0.33" version = "1.0.39"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e8d5d96e8cbb005d6959f119f773bfaebb5684296108fb32600c00cde305b2cd" checksum = "891d8d6567fe7c7f8835a3a98af4208f3846fba258c1bc3c31d6e506239f11f9"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"unicode-xid", "unicode-xid",
] ]
[[package]]
name = "syn-mid"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7be3539f6c128a931cf19dcee741c1af532c7fd387baa739c03dd2e96479338a"
dependencies = [
"proc-macro2",
"quote",
"syn",
]
[[package]] [[package]]
name = "synstructure" name = "synstructure"
version = "0.12.4" version = "0.12.4"
@@ -867,9 +782,9 @@ dependencies = [
[[package]] [[package]]
name = "tokio" name = "tokio"
version = "0.2.21" version = "0.2.22"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d099fa27b9702bed751524694adbe393e18b36b204da91eb1cbbbbb4a5ee2d58" checksum = "5d34ca54d84bf2b5b4d7d31e901a8464f7b60ac145a284fba25ceb801f2ddccd"
dependencies = [ dependencies = [
"bytes", "bytes",
"fnv", "fnv",
+6 -2
View File
@@ -14,6 +14,7 @@ SRC = Cargo.toml Cargo.lock Makefile $(shell find -type f -wholename '**/src/*.r
BIN_C=asusctl BIN_C=asusctl
BIN_D=asusd BIN_D=asusd
LEDCONFIG=asusd-ledmodes.toml LEDCONFIG=asusd-ledmodes.toml
VERSION:=$(shell grep -P 'version = "(\d.\d.\d)"' asus-nb-ctrl/Cargo.toml | cut -d'"' -f2)
DEBUG ?= 0 DEBUG ?= 0
ifeq ($(DEBUG),0) ifeq ($(DEBUG),0)
@@ -56,11 +57,14 @@ vendor:
mkdir -p .cargo mkdir -p .cargo
cargo vendor | head -n -1 > .cargo/config cargo vendor | head -n -1 > .cargo/config
echo 'directory = "vendor"' >> .cargo/config echo 'directory = "vendor"' >> .cargo/config
tar pcfJ vendor.tar.xz vendor mv .cargo/config ./cargo-config
rm -rf .cargo
tar pcfJ vendor-$(VERSION).tar.xz vendor
rm -rf vendor rm -rf vendor
target/release/$(BIN_D): $(SRC) target/release/$(BIN_D): $(SRC)
ifeq ($(VENDORED),1) ifeq ($(VENDORED),1)
tar pxf vendor.tar.xz @echo "version = $(VERSION)"
tar pxf vendor-$(VERSION).tar.xz
endif endif
cargo build $(ARGS) cargo build $(ARGS)
+8 -1
View File
@@ -3,7 +3,8 @@
**NOTICE:** **NOTICE:**
This program requires the kernel patch in `./kernel-patch/` to be applied. This program requires the kernel patch in `./kernel-patch/` to be applied.
As of 04/08/2020 these have been submitted to lkml. As of 04/08/2020 these have been submitted to lkml. Alternatively you may
use the dkms module for 'hid-asus-rog` from one of the repositories [here](https://download.opensuse.org/repositories/home:/luke_nukem:/asus/).
The patch enables the following in kernel: The patch enables the following in kernel:
@@ -118,6 +119,12 @@ For editing the `/etc/asusd/asusd-ledmodes.toml`, the LED Mode numbers are as fo
## Installing ## Installing
Packaging and auto-builds are available [here](https://build.opensuse.org/package/show/home:luke_nukem:asus/asus-nb-ctrl)
Download repositories are available [here](https://download.opensuse.org/repositories/home:/luke_nukem:/asus/)
---
Run `make` then `sudo make install` then reboot. Run `make` then `sudo make install` then reboot.
The default init method is to use the udev rule, this ensures that the service is The default init method is to use the udev rule, this ensures that the service is
-70
View File
@@ -1,70 +0,0 @@
%if %{defined fedora}
%global debug_package %{nil}
%endif
# Use hardening ldflags.
%global rustflags -Clink-arg=-Wl,-z,relro,-z,now
Name: asus-nb-ctrl
Version: 1.0.0
Release: 0
Summary: Text editor for terminal
License: MPLv2
Group: Productivity/Text/Editors
URL: https://gitlab.com/asus-linux/asus-nb-ctrl
Source: %{name}-%{version}.tar.gz
# cargo vendor &&
# tar cfJ vendor.tar.xz vendor
Source1: vendor.tar.xz
BuildRequires: clang-devel
BuildRequires: cargo
BuildRequires: rust
BuildRequires: rust-std-static
BuildRequires: pkgconfig(dbus-1)
BuildRequires: pkgconfig(libudev)
%description
ASUS Laptop control
%prep
%setup -q -n %name-next
%setup -q -n %name-next -D -T -a 1
mkdir .cargo
cat >.cargo/config <<EOF
[source.crates-io]
replace-with = "vendored-sources"
[source.vendored-sources]
directory = "vendor"
EOF
%build
export RUSTFLAGS="%{rustflags}"
RUST_BACKTRACE=1 cargo build --release
%install
export RUSTFLAGS="%{rustflags}"
mkdir -p "%{buildroot}%{_bindir}"
install -D -m 0755 target/release/asusd %{buildroot}%{_bindir}/asusd
install -D -m 0755 target/release/asusctl %{buildroot}%{_bindir}/asusctl
install -D -m 0644 data/asusd.rules %{buildroot}%{_udevrulesdir}/90-asusd.rules
install -D -m 0644 data/asusd.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/asusd.conf
install -D -m 0644 data/asusd.service %{buildroot}%{_unitdir}/asusd.service
install -D -m 0644 data/asusd-ledmodes.toml %{buildroot}%{_sysconfdir}/asusd/asusd-ledmodes.toml
mkdir -p "%{buildroot}%{_datadir}/licenses/%{name}"
cp LICENSE "%{buildroot}%{_datadir}/licenses/%{name}/"
mkdir -p "%{buildroot}/bin"
%files
%license LICENSE
%{_bindir}/asusd
%{_bindir}/asusctl
%{_unitdir}/asusd.service
%{_udevrulesdir}/90-asusd.rules
%{_sysconfdir}/dbus-1/system.d/asusd.conf
%{_sysconfdir}/asusd/asusd-ledmodes.toml
%changelog
+1 -1
View File
@@ -1,6 +1,6 @@
[package] [package]
name = "asus-nb-ctrl" name = "asus-nb-ctrl"
version = "1.0.2" version = "1.0.3"
license = "MPL-2.0" license = "MPL-2.0"
readme = "README.md" readme = "README.md"
authors = ["Luke <luke@ljones.dev>"] authors = ["Luke <luke@ljones.dev>"]
+1 -1
View File
@@ -34,7 +34,7 @@ impl crate::Controller for CtrlCharge {
while let Some(n) = recv.recv().await { while let Some(n) = recv.recv().await {
let mut config = config.lock().await; let mut config = config.lock().await;
self.set_charge_limit(n, &mut config) self.set_charge_limit(n, &mut config)
.unwrap_or_else(|err| warn!("{:?}", err)); .unwrap_or_else(|err| warn!("charge_limit: {:?}", err));
} }
})] })]
} }
+1 -1
View File
@@ -53,7 +53,7 @@ impl crate::Controller for CtrlFanAndCPU {
let mut lock = gate2.lock().await; let mut lock = gate2.lock().await;
let mut config = config.lock().await; let mut config = config.lock().await;
lock.fan_mode_check_change(&mut config) lock.fan_mode_check_change(&mut config)
.unwrap_or_else(|err| warn!("{:?}", err)); .unwrap_or_else(|err| warn!("fan_ctrl: {:?}", err));
} }
}), }),
] ]
+25 -3
View File
@@ -80,7 +80,7 @@ impl crate::Controller for CtrlKbdBacklight {
let mut lock = gate2.lock().await; let mut lock = gate2.lock().await;
let mut config = config.lock().await; let mut config = config.lock().await;
lock.let_bright_check_change(&mut config) lock.let_bright_check_change(&mut config)
.unwrap_or_else(|err| warn!("{:?}", err)); .unwrap_or_else(|err| warn!("led_ctrl: {:?}", err));
} }
}), }),
] ]
@@ -132,8 +132,8 @@ impl CtrlKbdBacklight {
#[inline] #[inline]
pub fn new(id_product: &str, supported_modes: Vec<u8>) -> Result<Self, std::io::Error> { pub fn new(id_product: &str, supported_modes: Vec<u8>) -> Result<Self, std::io::Error> {
Ok(CtrlKbdBacklight { Ok(CtrlKbdBacklight {
led_node: Self::scan_led_node(id_product)?, led_node: Self::get_node_failover(id_product, Self::scan_led_node)?,
kbd_node: Self::scan_kbd_node(id_product)?, kbd_node: Self::get_node_failover(id_product, Self::scan_kbd_node)?,
// brightness node path should always be constant but this *might* change? // brightness node path should always be constant but this *might* change?
bright_node: "/sys/class/leds/asus::kbd_backlight/brightness".to_string(), bright_node: "/sys/class/leds/asus::kbd_backlight/brightness".to_string(),
supported_modes, supported_modes,
@@ -141,6 +141,28 @@ impl CtrlKbdBacklight {
}) })
} }
fn get_node_failover(id_product: &str, fun: fn(&str) -> Result<String, std::io::Error>) -> Result<String, std::io::Error> {
for n in 0..2 {
match fun(id_product) {
Ok(o) => return Ok(o),
Err(e) => {
if n > 0 {
warn!("Looking for node: {}", e.to_string());
std::thread::sleep(std::time::Duration::from_secs(1));
} else {
return Err(e);
}
}
}
}
// Shouldn't be possible to reach this...
let err = std::io::Error::new(
std::io::ErrorKind::NotFound,
"node not found",
);
Err(err)
}
fn scan_led_node(id_product: &str) -> Result<String, std::io::Error> { fn scan_led_node(id_product: &str) -> Result<String, std::io::Error> {
let mut enumerator = udev::Enumerator::new()?; let mut enumerator = udev::Enumerator::new()?;
enumerator.match_subsystem("hidraw")?; enumerator.match_subsystem("hidraw")?;
+1 -1
View File
@@ -23,7 +23,7 @@ use std::sync::Arc;
use tokio::sync::{mpsc::Receiver, Mutex}; use tokio::sync::{mpsc::Receiver, Mutex};
use tokio::task::JoinHandle; use tokio::task::JoinHandle;
pub static VERSION: &str = "1.0.2"; pub static VERSION: &str = "1.0.3";
use ::dbus::{nonblock::SyncConnection, tree::Signal}; use ::dbus::{nonblock::SyncConnection, tree::Signal};
+10 -10
View File
@@ -3,11 +3,6 @@ prod_family = "Zephyrus S"
board_names = ["GX502", "GX701", "G531", "GL531", "G532"] board_names = ["GX502", "GX701", "G531", "GL531", "G532"]
led_modes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 255] led_modes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 255]
[[led_modes]]
prod_family = "ROG Strix"
board_names = ["GX531", "G512LV", "G712LV"]
led_modes = [0, 1, 2, 3, 10, 13]
[[led_modes]] [[led_modes]]
prod_family = "Zephyrus" prod_family = "Zephyrus"
board_names = ["GM501GM", "GX531"] board_names = ["GM501GM", "GX531"]
@@ -15,14 +10,19 @@ led_modes = [0, 1, 2, 3, 10, 13]
[[led_modes]] [[led_modes]]
prod_family = "ROG Strix" prod_family = "ROG Strix"
board_names = ["G512LI", "G712LI"]
led_modes = [0, 1, 2, 3, 10]
[[led_modes]]
prod_family = "Strix Scar 3"
board_names = ["G531GW"] board_names = ["G531GW"]
led_modes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 255] led_modes = [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 255]
[[led_modes]]
prod_family = "ROG Strix"
board_names = ["GX531", "G512LV", "G712LV"]
led_modes = [0, 1, 2, 3, 10, 13]
[[led_modes]]
prod_family = "ROG Strix"
board_names = ["G512LI", "G712LI"]
led_modes = [0, 1, 2, 3, 10]
[[led_modes]] [[led_modes]]
prod_family = "Strix" prod_family = "Strix"
board_names = ["G731GV", "G731GW", "G531GV"] board_names = ["G731GV", "G731GW", "G531GV"]
+4
View File
@@ -1,8 +1,12 @@
[Unit] [Unit]
Description=ASUS Notebook Control Description=ASUS Notebook Control
StartLimitInterval=200
StartLimitBurst=2
[Service] [Service]
ExecStart=/usr/bin/asusd ExecStart=/usr/bin/asusd
Restart=on-failure Restart=on-failure
Restart=always
RestartSec=1
Type=dbus Type=dbus
BusName=org.asuslinux.Daemon BusName=org.asuslinux.Daemon
-22
View File
@@ -1,22 +0,0 @@
#!/bin/sh
set -e
case "$1" in
configure)
CONF='/etc/asusd.conf'
if [ -f $CONF ]; then
mv $CONF $CONF.save
fi
systemctl unmask asusd.service
#ROG=$(lsusb |grep 0b05 |cut -d ' ' -f 6 |cut -d ':' -f 2)
#sed -i -e "s|==/"1866/"|==/"${ROG}/"|g" /etc/udev/rules.d/99-rog-core.rules
;;
*)
;;
esac
#DEBHELPER#
exit 0
-19
View File
@@ -1,19 +0,0 @@
#!/bin/sh
set -e
case "$1" in
remove)
CONF='/etc/rogcore.conf'
if [ -f $CONF ]; then
rm -rf $CONF
fi
;;
*)
;;
esac
#DEBHELPER#
exit 0
View File
-1
View File
@@ -1 +0,0 @@
9
-39
View File
@@ -1,39 +0,0 @@
Source: asus-nb-ctrl
Section: admin
Priority: optional
Maintainer: Luke Jones <luke@ljones.dev>
Build-Depends:
debhelper (>=9),
cargo,
llvm,
libclang-dev,
libusb-1.0-0-dev,
libdbus-1-dev,
libudev-1-dev
pkg-config
Standards-Version: 4.1.1
Homepage: https://gitlab.com/asus-linux/asus-nb-ctrl
Package: asus-nb-ctrl
Architecture: amd64
Depends:
dbus,
systemd,
libusb-1.0-0,
libudev,
${misc:Depends},
${shlibs:Depends}
Description:ASUS ROG Laptop Management
Extra support for ASUS laptop models:
- GM501
- GX502
- GX531
- G512
- G712
- GX531
- G531
- GA14/GA401. You will need kernel patches
+ https://lab.retarded.farm/zappel/asus-rog-zephyrus-g14/-/tree/master/kernel_patches
- GA15/GA502/GU502 appears to have most things working
- GL703(0x1869)
- GL553/GL753
-7
View File
@@ -1,7 +0,0 @@
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: rog-core
Source: https://github.com/flukejones/rog-core
Files: *
Copyright: Copyright 2020 Luke Jones
License: MPL-2.0
-21
View File
@@ -1,21 +0,0 @@
#!/usr/bin/make -f
export VENDORED ?= 1
CLEAN ?= 1
%:
dh $@ --with=systemd
override_dh_auto_build:
env CARGO_HOME="$$(pwd)/target/cargo" \
dh_auto_build
override_dh_auto_clean:
ifeq ($(CLEAN),1)
make clean
endif
ifeq ($(VENDORED),1)
if ! ischroot; then \
make vendor; \
fi
endif
-1
View File
@@ -1 +0,0 @@
3.0 (native)