{ungoogled-,}chromium,chromedriver: 130.0.6723.58 -> 130.0.6723.69 (#351519)
[NixPkgs.git] / pkgs / servers / scaphandre / default.nix
blob4d7d0c50607530e9ebb9c69edc656db9f02741c5
1 { lib
2 , rustPlatform
3 , fetchFromGitHub
4 , pkg-config
5 , openssl
6 , nix-update-script
7 , runCommand
8 , dieHook
9 , nixosTests
10 , testers
11 , scaphandre
14 rustPlatform.buildRustPackage rec {
15   pname = "scaphandre";
16   version = "0.5.0";
18   src = fetchFromGitHub {
19     owner = "hubblo-org";
20     repo = pname;
21     rev = "v${version}";
22     hash = "sha256-cXwgPYTgom4KrL/PH53Fk6ChtALuMYyJ/oTrUKHCrzE=";
23   };
25   cargoHash = "sha256-Vdkq9ShbHWepvIgHPjhKY+LmhjS+Pl84QelgEpen7Qs=";
27   nativeBuildInputs = [ pkg-config ];
28   buildInputs = [ openssl ];
30   checkPhase = ''
31     runHook preCheck
33     # Work around to pass test due to non existing path
34     # https://github.com/hubblo-org/scaphandre/blob/v0.5.0/src/sensors/powercap_rapl.rs#L29
35     export SCAPHANDRE_POWERCAP_PATH="$(mktemp -d)/scaphandre"
37     mkdir -p "$SCAPHANDRE_POWERCAP_PATH"
39     runHook postCheck
40   '';
42   passthru = {
43     updateScript = nix-update-script { };
44     tests = {
45       stdout = self: runCommand "${pname}-test" {
46         buildInputs = [
47           self
48           dieHook
49         ];
50       } ''
51         ${self}/bin/scaphandre stdout -t 4 > $out  || die "Scaphandre failed to measure consumption"
52         [ -s $out ]
53       '';
54       vm = nixosTests.scaphandre;
55       version = testers.testVersion {
56         inherit version;
57         package = scaphandre;
58         command = "scaphandre --version";
59       };
60     };
61   };
63   meta = with lib; {
64     description = "Electrical power consumption metrology agent";
65     homepage = "https://github.com/hubblo-org/scaphandre";
66     license = licenses.asl20;
67     platforms = [ "x86_64-linux" ];
68     maintainers = with maintainers; [ gaelreyrol ];
69     mainProgram = "scaphandre";
70   };