{ lib, fetchFromGitLab, rustPlatform, protobuf, capnproto, cmake, testers, veilid, gitUpdater, }: rustPlatform.buildRustPackage rec { pname = "veilid"; version = "0.4.8"; src = fetchFromGitLab { owner = "veilid"; repo = "veilid"; rev = "v${version}"; hash = "sha256-ZhF9dMYrd+nui/tw1SuL0i6zB/niBfsd40SQzRgGF6Q="; }; cargoHash = "sha256-Q4M6cb9xYxeH4O7YL2K8olJ9w8Iq34hYpuJEGGhVN+Y="; nativeBuildInputs = [ capnproto cmake protobuf ]; cargoBuildFlags = [ "--workspace" ]; RUSTFLAGS = "--cfg tokio_unstable"; doCheck = false; outputs = [ "out" "lib" "dev" ]; postInstall = '' moveToOutput "lib" "$lib" ''; passthru = { updateScript = gitUpdater { rev-prefix = "v"; }; tests = { veilid-version = testers.testVersion { package = veilid; }; }; }; meta = with lib; { description = "Open-source, peer-to-peer, mobile-first, networked application framework"; mainProgram = "veilid-server"; homepage = "https://veilid.com"; license = licenses.mpl20; maintainers = with maintainers; [ bbigras qbit ]; }; }