From 0d9d4e5f1bcbb6b32c953a5ebcff3dde16bda9f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luis=20Qui=C3=B1ones?= Date: Fri, 26 Jan 2024 18:29:49 -0500 Subject: [PATCH] feat: migrated code from github:luisnquin/scripts --- .gitignore | 1 + Cargo.lock | 839 +++++++++++++++++++++++++++++++++++++ Cargo.toml | 16 + assets/battery-danger.png | Bin 0 -> 3380 bytes assets/sounds/15.mp3 | Bin 0 -> 65954 bytes assets/sounds/30.mp3 | Bin 0 -> 32600 bytes assets/sounds/5.mp3 | Bin 0 -> 75232 bytes assets/sounds/charging.mp3 | Bin 0 -> 77740 bytes debug.yaml | 16 + default.nix | 38 ++ src/battery.rs | 164 ++++++++ src/config.rs | 74 ++++ src/main.rs | 121 ++++++ src/notify.rs | 107 +++++ 14 files changed, 1376 insertions(+) create mode 100644 .gitignore create mode 100644 Cargo.lock create mode 100644 Cargo.toml create mode 100644 assets/battery-danger.png create mode 100644 assets/sounds/15.mp3 create mode 100644 assets/sounds/30.mp3 create mode 100644 assets/sounds/5.mp3 create mode 100644 assets/sounds/charging.mp3 create mode 100644 debug.yaml create mode 100644 default.nix create mode 100644 src/battery.rs create mode 100644 src/config.rs create mode 100644 src/main.rs create mode 100644 src/notify.rs diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..b60de5b --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +**/target diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..e23e286 --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,839 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aho-corasick" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca972c2ea5f742bfce5687b9aef75506a764f61d37f8f649047846a9686ddb66" +dependencies = [ + "memchr 0.1.11", +] + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anstream" +version = "0.6.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e2e1ebcb11de5c03c67de28a7df593d32191b44939c482e97702baaaa6ab6a5" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7079075b41f533b8c61d2a4d073c4676e1f8b249ff94a393b0595db304e0dd87" + +[[package]] +name = "anstyle-parse" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648" +dependencies = [ + "windows-sys", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1cd54b81ec8d6180e24654d0b371ad22fc3dd083b6ff8ba325b72e00c87660a7" +dependencies = [ + "anstyle", + "windows-sys", +] + +[[package]] +name = "autocfg" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" + +[[package]] +name = "battery-notifier" +version = "0.1.0" +dependencies = [ + "chrono", + "clap", + "linuxver", + "os_info", + "serde", + "serde_yaml", + "soloud", + "toml", +] + +[[package]] +name = "bitflags" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8dead7461c1127cf637931a1e50934eb6eee8bff2f74433ac7909e9afcee04a3" + +[[package]] +name = "bitflags" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07" + +[[package]] +name = "bumpalo" +version = "3.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" + +[[package]] +name = "cc" +version = "1.0.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +dependencies = [ + "libc", +] + +[[package]] +name = "cfg-if" +version = "0.1.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "chrono" +version = "0.4.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "wasm-bindgen", + "windows-targets 0.48.5", +] + +[[package]] +name = "clap" +version = "4.4.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e578d6ec4194633722ccf9544794b71b1385c3c027efe0c55db226fc880865c" +dependencies = [ + "clap_builder", + "clap_derive", +] + +[[package]] +name = "clap_builder" +version = "4.4.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4df4df40ec50c46000231c914968278b1eb05098cf8f1b3a518a95030e71d1c7" +dependencies = [ + "anstream", + "anstyle", + "clap_lex", + "strsim", +] + +[[package]] +name = "clap_derive" +version = "4.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442" +dependencies = [ + "heck", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "clap_lex" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" + +[[package]] +name = "cmake" +version = "0.1.50" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a31c789563b815f77f4250caee12365734369f942439b7defd71e18a48197130" +dependencies = [ + "cc", +] + +[[package]] +name = "colorchoice" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" + +[[package]] +name = "core-foundation-sys" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "hashbrown" +version = "0.14.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "290f1a1d9242c78d09ce40a5e87e7554ee637af1351968159f4952f028f75604" + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "iana-time-zone" +version = "0.1.59" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6a67363e2aa4443928ce15e57ebae94fd8949958fd1223c4cfc0cd473ad7539" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "indexmap" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d530e1a18b1cb4c484e6e34556a0d948706958449fca0cab753d649f2bce3d1f" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "itoa" +version = "1.0.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" + +[[package]] +name = "js-sys" +version = "0.3.66" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "kernel32-sys" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" +dependencies = [ + "winapi 0.2.8", + "winapi-build", +] + +[[package]] +name = "lazy_static" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" + +[[package]] +name = "libc" +version = "0.2.150" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" + +[[package]] +name = "linuxver" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "371bed477e3927e27aa8a6c9bebb0d08a4696ac82b80c8402bc61fe0dc8df6ab" +dependencies = [ + "nix", + "semver 0.4.1", +] + +[[package]] +name = "log" +version = "0.4.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" + +[[package]] +name = "memchr" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8b629fb514376c675b98c1421e80b151d3817ac42d7c667717d282761418d20" +dependencies = [ + "libc", +] + +[[package]] +name = "memchr" +version = "2.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "523dc4f511e55ab87b694dc30d0f820d60906ef06413f93d4d7a1385599cc149" + +[[package]] +name = "nix" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0d95c5fa8b641c10ad0b8887454ebaafa3c92b5cd5350f8fc693adafd178e7b" +dependencies = [ + "bitflags 0.4.0", + "cfg-if 0.1.10", + "libc", + "rustc_version", + "semver 0.1.20", + "void", +] + +[[package]] +name = "num-traits" +version = "0.2.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c" +dependencies = [ + "autocfg", +] + +[[package]] +name = "once_cell" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" + +[[package]] +name = "os_info" +version = "3.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "006e42d5b888366f1880eda20371fedde764ed2213dc8496f49622fa0c99cd5e" +dependencies = [ + "log", + "winapi 0.3.9", +] + +[[package]] +name = "paste" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "de3145af08024dea9fa9914f381a17b8fc6034dfb00f3a84013f7ff43f29ed4c" + +[[package]] +name = "proc-macro2" +version = "1.0.76" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95fc56cda0b5c3325f5fbbd7ff9fda9e02bb00bb3dac51252d2f1bfa1cb8cc8c" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "quote" +version = "1.0.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "291ec9ab5efd934aaf503a6466c5d5251535d108ee747472c3977cc5acc868ef" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "regex" +version = "0.1.80" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fd4ace6a8cf7860714a2c2280d6c1f7e6a413486c13298bbc86fd3da019402f" +dependencies = [ + "aho-corasick", + "memchr 0.1.11", + "regex-syntax", + "thread_local", + "utf8-ranges", +] + +[[package]] +name = "regex-syntax" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9ec002c35e86791825ed294b50008eea9ddfc8def4420124fbc6b08db834957" + +[[package]] +name = "rustc_version" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c5f5376ea5e30ce23c03eb77cbe4962b988deead10910c372b226388b594c084" +dependencies = [ + "semver 0.1.20", +] + +[[package]] +name = "ryu" +version = "1.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" + +[[package]] +name = "semver" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac" + +[[package]] +name = "semver" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca1c06afc03e8a202bc5c1db01524cceb7e1b1ca062d959d83a61b20d76e394e" +dependencies = [ + "semver-parser", +] + +[[package]] +name = "semver-parser" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8fff3c9c5a54636ab95acd8c1349926e04cb1eb8cd70b5adced8a1d1f703a67" +dependencies = [ + "lazy_static", + "regex", +] + +[[package]] +name = "serde" +version = "1.0.195" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63261df402c67811e9ac6def069e4786148c4563f4b50fd4bf30aa370d626b02" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.195" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46fe8f8603d81ba86327b23a2e9cdf49e1255fb94a4c5f297f6ee0547178ea2c" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_spanned" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_yaml" +version = "0.9.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1bf28c79a99f70ee1f1d83d10c875d2e70618417fda01ad1785e027579d9d38" +dependencies = [ + "indexmap", + "itoa", + "ryu", + "serde", + "unsafe-libyaml", +] + +[[package]] +name = "soloud" +version = "1.0.5" +source = "git+https://github.com/MoAlyousef/soloud-rs#b1242c9f6deac0aa116263513ff057cad66dc999" +dependencies = [ + "bitflags 2.4.1", + "paste", + "soloud-sys", +] + +[[package]] +name = "soloud-sys" +version = "1.0.5" +source = "git+https://github.com/MoAlyousef/soloud-rs#b1242c9f6deac0aa116263513ff057cad66dc999" +dependencies = [ + "cmake", +] + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "syn" +version = "2.0.48" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f3531638e407dfc0814761abb7c00a5b54992b849452a0646b7f65c9f770f3f" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "thread-id" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9539db560102d1cef46b8b78ce737ff0bb64e7e18d35b2a5688f7d097d0ff03" +dependencies = [ + "kernel32-sys", + "libc", +] + +[[package]] +name = "thread_local" +version = "0.2.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8576dbbfcaef9641452d5cf0df9b0e7eeab7694956dd33bb61515fb8f18cfdd5" +dependencies = [ + "thread-id", +] + +[[package]] +name = "toml" +version = "0.8.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1a195ec8c9da26928f773888e0742ca3ca1040c6cd859c919c9f59c1954ab35" +dependencies = [ + "serde", + "serde_spanned", + "toml_datetime", + "toml_edit", +] + +[[package]] +name = "toml_datetime" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1" +dependencies = [ + "serde", +] + +[[package]] +name = "toml_edit" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d34d383cd00a163b4a5b85053df514d45bc330f6de7737edfe0a93311d1eaa03" +dependencies = [ + "indexmap", + "serde", + "serde_spanned", + "toml_datetime", + "winnow", +] + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[package]] +name = "unsafe-libyaml" +version = "0.2.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab4c90930b95a82d00dc9e9ac071b4991924390d46cbd0dfe566148667605e4b" + +[[package]] +name = "utf8-ranges" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1ca13c08c41c9c3e04224ed9ff80461d97e121589ff27c753a16cb10830ae0f" + +[[package]] +name = "utf8parse" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" + +[[package]] +name = "void" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" + +[[package]] +name = "wasm-bindgen" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e" +dependencies = [ + "cfg-if 1.0.0", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283" +dependencies = [ + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f" + +[[package]] +name = "winapi" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-build" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.0", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.0", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a18201040b24831fbb9e4eb208f8892e1f50a37feb53cc7ff887feb8f50e7cd" +dependencies = [ + "windows_aarch64_gnullvm 0.52.0", + "windows_aarch64_msvc 0.52.0", + "windows_i686_gnu 0.52.0", + "windows_i686_msvc 0.52.0", + "windows_x86_64_gnu 0.52.0", + "windows_x86_64_gnullvm 0.52.0", + "windows_x86_64_msvc 0.52.0", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb7764e35d4db8a7921e09562a0304bf2f93e0a51bfccee0bd0bb0b666b015ea" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbaa0368d4f1d2aaefc55b6fcfee13f41544ddf36801e793edbbfd7d7df075ef" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a28637cb1fa3560a16915793afb20081aba2c92ee8af57b4d5f28e4b3e7df313" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ffe5e8e31046ce6230cc7215707b816e339ff4d4d67c65dffa206fd0f7aa7b9a" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6fa32db2bc4a2f5abeacf2b69f7992cd09dca97498da74a151a3132c26befd" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a657e1e9d3f514745a572a6846d3c7aa7dbe1658c056ed9c3344c4109a6949e" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" + +[[package]] +name = "winnow" +version = "0.5.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7cf47b659b318dccbd69cc4797a39ae128f533dce7902a1096044d1967b9c16" +dependencies = [ + "memchr 2.7.1", +] diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..3e1e933 --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,16 @@ +[package] +name = "battery-notifier" +version = "0.1.0" +edition = "2021" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +serde = { version = "1.0.195", features = ["derive"] } +chrono = "0.4.31" +clap = { version = "4.4.18", features = ["derive"] } +linuxver = "0.1.0" +os_info = { version = "3.7.0", default-features = false } +serde_yaml = "0.9.30" +soloud = { git = "https://github.com/MoAlyousef/soloud-rs" } +toml = "0.8.8" diff --git a/assets/battery-danger.png b/assets/battery-danger.png new file mode 100644 index 0000000000000000000000000000000000000000..36ff9a1edb7f5a63ab176a9b92292d9b2c446c9b GIT binary patch literal 3380 zcmeAS@N?(olHy`uVBq!ia0y~yVEO>U9Be?5kINjZfD~Jjx4R3&e-K=-cll%n2A-Fm zE{-7;bKc(C*ejbN;C8X{gHTKAPDUN81FAb%oE9jZQrP4w`7XiLrAIsBW>MR;28OrY z6C7s!uR6c-fw$YPgJ*!Ij)Kt;z!3r;{_n`)XZXSM$He&jHg}hrIWx^~D>Iy8u{lux z{rH)h&9+L9{+`)$M~*Sz+tF`8GalR*1}0hor3Z`*3N8nj85}wq*cloG82K3(6q)20 z7@Sya7#LbODi|0z1P6`66Q$J*1xw`9pY47tsHneGE6{o*3Jg{Ms zd!VyE{aIc0k>2OU_m(Yxln5*n<@8O4Twx9l252nSrP<{IWAW;@2K6_aY#A*28`v#Q z>)&R!ICU80=h0Gp!0Kj5mAl=zc)KmrjQiW!aWp?hg-1gG6aqE-{xO}Am$}F8_*D|b N_jL7hS?83{1OTkq0sQ~~ literal 0 HcmV?d00001 diff --git a/assets/sounds/15.mp3 b/assets/sounds/15.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..6a2f78c0070401bfa53865516f1692613742be3f GIT binary patch literal 65954 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 literal 0 HcmV?d00001 diff --git a/assets/sounds/30.mp3 b/assets/sounds/30.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..29173a35ae1d5541f857b7c9d8db42d3a769ba7f GIT binary patch literal 32600 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 z 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 literal 0 HcmV?d00001 diff --git a/assets/sounds/charging.mp3 b/assets/sounds/charging.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..b429f72f8ec2cbf588f078317aac622158e69d46 GIT binary patch literal 77740 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�p@}Xd+g+B~zhBiP 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 {}, ...}: let + runtimePackages = with pkgs; [libnotify]; +in + pkgs.rustPlatform.buildRustPackage rec { + pname = "battery-notifier"; + version = "unstable"; + + src = builtins.path { + name = "${pname}-source"; + path = ./.; + }; + + nativeBuildInputs = with pkgs; [git cmake makeWrapper]; + buildInputs = runtimePackages; + + cargoLock = { + lockFile = ./Cargo.lock; + + outputHashes = { + "soloud-1.0.5" = "sha256-2Cd5aWfntRawxRSdy+4tJJdTkTeii1ilshQadG6Pybw="; + }; + }; + + preConfigure = '' + substituteInPlace ./src/notify.rs \ + --replace './assets/battery-danger.png' '${placeholder "out"}/assets/battery-danger.png' + ''; + + preInstall = '' + mkdir -p $out/assets/ + cp ./assets/*.png $out/assets/ + ''; + + postInstall = '' + wrapProgram ${placeholder "out"}/bin/${pname} \ + --prefix PATH : ${pkgs.lib.makeBinPath runtimePackages} + ''; + } diff --git a/src/battery.rs b/src/battery.rs new file mode 100644 index 0000000..30e02b4 --- /dev/null +++ b/src/battery.rs @@ -0,0 +1,164 @@ +use chrono::Utc; +use linuxver::version as get_linux_version; +use serde::Deserialize; +use std::{fmt, fs, ops::Index}; + +pub struct PowerSupplyClass { + path: String, + debug: Option, +} + +impl PowerSupplyClass { + pub fn new(debug_file_path: Option) -> PowerSupplyClass { + let kernel_version = get_linux_version().expect("must use a Linux kernel"); + if kernel_version.major == 2 && kernel_version.minor < 6 { + panic!("This program requires Linux 2.6 or higher"); + } + + let class = match os_info::get().os_type() { + os_info::Type::Ubuntu => "BAT0", + _ => { + if kernel_version.major < 3 + || (kernel_version.major == 3 && kernel_version.minor < 19) + { + "BAT0" + } else { + "BAT1" + } + } + }; + + PowerSupplyClass { + path: format!("/sys/class/power_supply/{}", class), + debug: debug_file_path.map(|p| { + let settings = DebugSettings::parse(p); + Debug::new(settings) + }), + } + } + + pub fn get_capacity(&mut self) -> u8 { + if self.debug.is_some() { + let debug = self.debug.as_mut().unwrap(); + let now = Utc::now().time(); + + if debug.should_move_to_next_state(now) { + debug.last_update_at = now; + debug.next_state(); + }; + + return debug.get_state().capacity; + } + + let raw_capacity: String = fs::read_to_string(self.get_capacity_path()) + .expect("Read battery capacity file") + .replace("\n", ""); + + raw_capacity + .parse::() + .expect("BAT1 capacity file doesn't contains a number") + } + + pub fn get_status(&mut self) -> String { + if self.debug.is_some() { + let debug = self.debug.as_mut().unwrap(); + let now = Utc::now().time(); + + if debug.should_move_to_next_state(now) { + debug.last_update_at = now; + debug.next_state(); + }; + + return debug.get_state().status; + } + + fs::read_to_string(self.get_status_path()) + .expect("Read battery status file") + .replace("\n", "") + } + + fn get_capacity_path(&self) -> String { + format!("{}/capacity", self.path) + } + + fn get_status_path(&self) -> String { + format!("{}/status", self.path) + } +} + +#[derive(PartialEq)] +pub enum BatteryNotificationLevel { + NoConflict, + Reminder, + Warn, + Threat, + Charging, +} + +impl fmt::Display for BatteryNotificationLevel { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + BatteryNotificationLevel::NoConflict => write!(f, "no conflict(0)"), + BatteryNotificationLevel::Reminder => write!(f, "reminder(1)"), + BatteryNotificationLevel::Warn => write!(f, "warn(2)"), + BatteryNotificationLevel::Threat => write!(f, "threat(3)"), + BatteryNotificationLevel::Charging => write!(f, "charging(-1)"), + } + } +} + +#[derive(Clone, Deserialize)] +struct DebugState { + status: String, + capacity: u8, +} + +#[derive(Clone, Deserialize)] +pub struct DebugSettings { + states: Vec, + seconds_between: i64, +} + +impl DebugSettings { + pub fn parse(debug_file_path: String) -> Self { + let content = fs::read_to_string(debug_file_path).expect("read file path"); + let options: DebugSettings = serde_yaml::from_str(&content).expect("parse debug file"); + + options + } +} + +struct Debug { + settings: DebugSettings, + current_state: usize, + last_update_at: chrono::NaiveTime, +} + +impl Debug { + fn new(settings: DebugSettings) -> Self { + Self { + settings, + current_state: 0, + last_update_at: Utc::now().time(), + } + } + + fn get_state(&self) -> DebugState { + self.settings.states.index(self.current_state).clone() + } + + fn should_move_to_next_state(&self, now: chrono::NaiveTime) -> bool { + let diff = now - self.last_update_at; + diff.num_seconds() >= self.settings.seconds_between + } + + fn next_state(&mut self) { + let mut next_state = self.current_state + 1; + + if next_state >= self.settings.states.len() { + next_state = 0 + } + + self.current_state = next_state + } +} diff --git a/src/config.rs b/src/config.rs new file mode 100644 index 0000000..4788576 --- /dev/null +++ b/src/config.rs @@ -0,0 +1,74 @@ +use serde::Deserialize; +use std::{env, error, fs, path::Path}; + +#[derive(Clone, Deserialize)] +pub struct Config { + pub reminder_threshold: u8, + pub threat_threshold: u8, + pub warn_threshold: u8, + pub sleep_ms: u64, +} + +impl Config { + fn default() -> Self { + Config { + sleep_ms: 700, + reminder_threshold: 30, + threat_threshold: 15, + warn_threshold: 5, + } + } + + pub fn parse(config_path: String) -> Result> { + let content = fs::read_to_string(config_path)?; + let config: Config = toml::from_str(&content)?; + + Ok(Config::default().merge(config)) + } + + pub fn parse_or_default(config_path: String) -> Self { + Config::parse(config_path).unwrap_or_else(|_| Config::default()) + } + + fn merge(mut self, other: Config) -> Config { + if other.reminder_threshold != 0 { + self.reminder_threshold = other.reminder_threshold + } + + if other.threat_threshold != 0 { + self.threat_threshold = other.threat_threshold + } + + if other.warn_threshold != 0 { + self.warn_threshold = other.warn_threshold + } + + if other.sleep_ms != 0 { + self.sleep_ms = other.sleep_ms + } + + self + } +} + +pub fn get_config_file(file_path: Option) -> String { + file_path.unwrap_or_else(|| { + let config_path = match env::var("XDG_CONFIG_FILE") { + Ok(p) => String::from(p), + Err(_) => { + let fallback_path = Path::new(&env::var("HOME").unwrap()) + .join(".config") + .to_owned(); + + fallback_path.to_string_lossy().to_string() + } + }; + + return Path::new(config_path.as_str()) + .join("battery-notifier") + .join("config.toml") + .to_str() + .unwrap() + .to_owned(); + }) +} diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..fdae4e5 --- /dev/null +++ b/src/main.rs @@ -0,0 +1,121 @@ +use chrono::Utc; +use clap::Parser; +use std::{ + thread, + time::{self}, +}; + +mod config; +use config::*; + +mod notify; +use notify::*; + +mod battery; +use battery::*; + +#[derive(Parser, Debug)] +#[command(author, version, about, long_about = None)] +struct Args { + #[arg(short, long)] + /// To simulate battery states (yaml). + debug_file: Option, + /// The config file path (toml). + #[arg(short, long)] + config_file: Option, +} + +fn main() { + let args = Args::parse(); + + let cp = get_config_file(args.config_file); + let config = Config::parse_or_default(cp); + + let start_time = Utc::now().time(); + + let sleep_time = time::Duration::from_millis(config.sleep_ms); // 0.7s + let mut last_notification_level = BatteryNotificationLevel::NoConflict; + let mut psc = PowerSupplyClass::new(args.debug_file); + + // Calculates the notification level based on the provided battery capacity. + let get_notification_level = |capacity: u8| -> BatteryNotificationLevel { + match capacity { + c if c <= config.reminder_threshold => BatteryNotificationLevel::Reminder, + c if c <= config.warn_threshold => BatteryNotificationLevel::Warn, + c if c <= config.threat_threshold => BatteryNotificationLevel::Threat, + _ => BatteryNotificationLevel::NoConflict, + } + }; + + loop { + let capacity = psc.get_capacity(); + let status = psc.get_status(); + + println!("[DEBUG] Current capacity: {} Status: {}", capacity, status); + + if status == "Charging" && last_notification_level != BatteryNotificationLevel::Charging { + println!("[DEBUG] Now the battery is charging..."); + println!( + "[DEBUG] The last notified capacity will be restarted to 0 (it was {})", + last_notification_level + ); + + let current_time = Utc::now().time(); + + if (current_time - start_time).num_seconds() > 5 { + send_sound_notification(CHARGING_BATTERY_SOUND); + } else { + println!("[WARNING] the app started with the computer plugged in, nothing to do"); + } + + last_notification_level = BatteryNotificationLevel::Charging + } else if status == "Discharging" || status == "Not charging" { + let default_content = format!("Charge: {}%", capacity); + + let mut notify_capacity = |urgency: Urgency, title: &str, content: &str| { + let current_notification_level = get_notification_level(capacity); + + println!( + "[DEBUG] Last notification level: {}, Current notification level: {}", + last_notification_level, current_notification_level + ); + + if last_notification_level != current_notification_level { + last_notification_level = current_notification_level; + + match send_desktop_notification(urgency, title, content) { + Ok(r) => println!("[DEBUG] Battery notification: {:#?}", r), + Err(error) => { + println!("[ERROR] Battery notification: {}", error.to_string()) + } + }; + + send_sound_notification(urgency.get_sound()) + } + }; + + match get_notification_level(capacity) { + BatteryNotificationLevel::Reminder => { + notify_capacity(Urgency::LOW, "Battery somewhat low", &default_content) + } + BatteryNotificationLevel::Warn => notify_capacity( + Urgency::NORMAL, + "Battery low", + format!("{}.\nPlease connect your laptop", default_content).as_str(), + ), + BatteryNotificationLevel::Threat => notify_capacity( + Urgency::CRITICAL, + "Battery very low", + format!( + "{}.\n\nYour computer will shut down soon! You'll regret this!", + default_content + ) + .as_str(), + ), + _ => (), + } + } + + thread::sleep(sleep_time); + } +} diff --git a/src/notify.rs b/src/notify.rs new file mode 100644 index 0000000..19063e2 --- /dev/null +++ b/src/notify.rs @@ -0,0 +1,107 @@ +use soloud::{audio::Wav, AudioExt, LoadExt, Soloud}; +use std::{env, fmt, fs, io, io::ErrorKind, path::Path, process, thread, time}; + +pub const BATTERY_DANGER_PATH: &str = "./assets/battery-danger.png"; + +pub const CHARGING_BATTERY_SOUND: &[u8] = include_bytes!("./../assets/sounds/charging.mp3"); +pub const REMINDER_BATTERY_SOUND: &[u8] = include_bytes!("./../assets/sounds/30.mp3"); +pub const THREAT_BATTERY_SOUND: &[u8] = include_bytes!("./../assets/sounds/5.mp3"); +pub const WARN_BATTERY_SOUND: &[u8] = include_bytes!("./../assets/sounds/15.mp3"); + +#[derive(Clone, Copy)] +pub enum Urgency { + CRITICAL, + NORMAL, + LOW, +} + +impl Urgency { + pub fn get_sound(&self) -> &[u8] { + match self { + Urgency::CRITICAL => THREAT_BATTERY_SOUND, + Urgency::NORMAL => WARN_BATTERY_SOUND, + Urgency::LOW => REMINDER_BATTERY_SOUND, + } + } +} + +impl fmt::Display for Urgency { + fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { + match self { + Urgency::CRITICAL => write!(f, "critical"), + Urgency::NORMAL => write!(f, "normal"), + Urgency::LOW => write!(f, "low"), + } + } +} + +pub fn send_desktop_notification( + urgency: Urgency, + title: &str, + content: &str, +) -> io::Result { + let icon_path = if Path::new(BATTERY_DANGER_PATH).is_relative() { + let cwd = env::current_dir().expect("get current directory"); + + Path::new(cwd.to_str().unwrap()) + .join(BATTERY_DANGER_PATH) + .to_owned() + .to_string_lossy() + .to_string() + } else { + BATTERY_DANGER_PATH.to_owned() + }; + + if is_program_in_path("notify-send") { + return process::Command::new("notify-send") + .arg(format!("--urgency={}", urgency.to_string())) + .arg(format!("--hint={}", "string:x-dunst-stack-tag:battery")) + .arg(format!("--icon={}", icon_path)) + .arg(title) + .arg(content) + .output(); + } else { + let err = io::Error::new(ErrorKind::NotFound, "notify-send were not found in $PATH"); + return Result::Err(err); + } +} + +pub fn send_sound_notification(sound: &[u8]) { + let rsl = Soloud::default(); + + match rsl { + Ok(sl) => { + let mut wav = Wav::default(); + + match wav.load_mem(sound) { + Ok(r) => println!("[DEBUG] Sound file has been loaded: {:#?}", r), + Err(error) => { + println!("[WARN] Couldn't load sound file: {}", error.to_string()) + } + }; + + sl.play(&wav); + while sl.voice_count() > 0 { + thread::sleep(time::Duration::from_millis(500)); + } + } + Err(error) => println!( + "[ERROR] soloud instance couldn't be correctly initialized: {}", + error.to_string() + ), + } +} + +fn is_program_in_path(program_name: &str) -> bool { + if let Ok(path) = env::var("PATH") { + for p in path.split(":") { + let p_str = format!("{}/{}", p, program_name); + + if fs::metadata(p_str).is_ok() { + return true; + } + } + } + + false +}