1{ lib
2, rustPlatform
3, fetchFromGitHub
4, stdenv
5, pkg-config
6, openssl
7, darwin
8}:
9
10rustPlatform.buildRustPackage rec {
11 pname = "oha";
12 version = "0.6.3";
13
14 src = fetchFromGitHub {
15 owner = "hatoo";
16 repo = pname;
17 rev = "refs/tags/v${version}";
18 sha256 = "sha256-vna0wmdcugrYLubnjSgBBeDW6ZHH3VToIJG0z8sB/ss=";
19 };
20
21 cargoSha256 = "sha256-d6gK/+dsJYb/9HSOHOsly3b35dh0FZ+aNnDVVzcXiV0=";
22
23 nativeBuildInputs = lib.optionals stdenv.isLinux [
24 pkg-config
25 ];
26
27 buildInputs = lib.optionals stdenv.isLinux [
28 openssl
29 ] ++ lib.optionals stdenv.isDarwin [
30 darwin.apple_sdk.frameworks.Security
31 ];
32
33 # tests don't work inside the sandbox
34 doCheck = false;
35
36 meta = with lib; {
37 description = "HTTP load generator inspired by rakyll/hey with tui animation";
38 homepage = "https://github.com/hatoo/oha";
39 changelog = "https://github.com/hatoo/oha/blob/v${version}/CHANGELOG.md";
40 license = licenses.mit;
41 maintainers = with maintainers; [ figsoda ];
42 };
43}