diff options
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | Cargo.lock | 4 | ||||
-rw-r--r-- | module.nix | 43 |
3 files changed, 48 insertions, 2 deletions
@@ -2,9 +2,8 @@ **/*.rs.bk .idea *iml -Cargo.lock debian/.debhelper debian/batteriewarner.*debhelper* debian/batteriewarner.substvars -debian/batteriewarner/
\ No newline at end of file +debian/batteriewarner/ diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..167134e --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,4 @@ +[[package]] +name = "batteriewarner" +version = "0.1.0" + diff --git a/module.nix b/module.nix new file mode 100644 index 0000000..706799f --- /dev/null +++ b/module.nix @@ -0,0 +1,43 @@ +{ config, lib, pkgs, ... }: +let + rustPlatform = pkgs.rustPlatform; + makeWrapper = pkgs.makeWrapper; + batteriewarner = rustPlatform.buildRustPackage rec { + name = "batteriewarner-${version}"; + version = "2017-09-15"; + src = ./.; + + doCheck = false; + + cargoSha256 = "sha256:0jacm96l1gw9nxwavqi1x4669cg6lzy9hr18zjpwlcyb3qkw9z7f"; + + buildInputs = [ makeWrapper ]; + + RUST_SRC_PATH = rustPlatform.rustcSrc; + + installPhase = '' + mkdir -p $out/bin + cp -p target/release/batteriewarner $out/bin/ + wrapProgram $out/bin/batteriewarner --set RUST_SRC_PATH "$RUST_SRC_PATH" + ''; + + meta = with lib; { + description = "Display low battery status using the power led of Thinkpads X-series"; + homepage = https://github.com/yvesf/batteriewarner; + platforms = platforms.all; + }; + }; +in +{ + config = { + systemd.services.batteriewarner = { + enable = true; + description = "Batteriewarner"; + wantedBy = [ "multi-user.target" ]; + serviceConfig = { + ExecStart = "${batteriewarner}/bin/batteriewarner"; + }; + }; + }; +} + |