depot/third_party/nixpkgs/pkgs/tools/networking/ntpd-rs/default.nix
Default email 5e7c2d6cef Project import generated by Copybara.
GitOrigin-RevId: f99e5f03cc0aa231ab5950a15ed02afec45ed51a
2023-10-09 21:29:22 +02:00

45 lines
1.3 KiB
Nix

{ lib
, rustPlatform
, fetchFromGitHub
}:
rustPlatform.buildRustPackage rec {
pname = "ntpd-rs";
version = "0.3.7";
src = fetchFromGitHub {
owner = "pendulum-project";
repo = "ntpd-rs";
rev = "v${version}";
hash = "sha256-AUCzsveG9U+KxYO/4LGmyCPkR+w9pGDA/vTzMAGiVuI=";
};
cargoHash = "sha256-6FUVkr3uock43ZBHuMEVIZ5F8Oh8wMifh2EokMWv4hU=";
checkFlags = [
# doesn't find the testca
"--skip=keyexchange::tests::key_exchange_roundtrip"
# seems flaky
"--skip=algorithm::kalman::peer::tests::test_offset_steering_and_measurements"
# needs networking
"--skip=hwtimestamp::tests::get_hwtimestamp"
];
postInstall = ''
install -vDt $out/lib/systemd/system pkg/common/ntpd-rs.service
for testprog in demobilize-server rate-limit-server nts-ke nts-ke-server peer-state simple-daemon; do
moveToOutput bin/$testprog "$tests"
done
'';
outputs = [ "out" "tests" ];
meta = with lib; {
description = "A full-featured implementation of the Network Time Protocol";
homepage = "https://tweedegolf.nl/en/pendulum";
changelog = "https://github.com/pendulum-project/ntpd-rs/blob/v${version}/CHANGELOG.md";
license = with licenses; [ mit /* or */ asl20 ];
maintainers = with maintainers; [ fpletz ];
};
}