nixpkgs/pkgs/servers/matrix-synapse/plugins/rendezvous.nix

49 lines
1.1 KiB
Nix

{ lib, buildPythonPackage, fetchFromGitHub, fetchPypi, rustPlatform, setuptools-rust }:
buildPythonPackage rec {
pname = "matrix-http-rendezvous-synapse";
version = "0.1.12";
format = "pyproject";
src = fetchFromGitHub {
owner = "matrix-org";
repo = "rust-http-rendezvous-server";
rev = "v${version}";
sha256 = "sha256-minwa+7HLTNSBtBtt5pnoHsFnNEh834nsVw80+FIQi8=";
};
postPatch = ''
cp ${./rendezvous-Cargo.lock} Cargo.lock
'';
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src postPatch;
name = "${pname}-${version}";
hash = "sha256-TyxDq6YxZUArRj5gpjB1afDQgtUlCVer3Uhq6YKvVYM=";
};
nativeBuildInputs = [
setuptools-rust
] ++ (with rustPlatform; [
cargoSetupHook
maturinBuildHook
]);
preBuild = ''
cd synapse
'';
postBuild = ''
cd ..
'';
pythonImportsCheck = [ "matrix_http_rendezvous_synapse" ];
meta = with lib; {
description = "Implementation of MSC3886: Simple rendezvous capability";
homepage = "https://github.com/matrix-org/rust-http-rendezvous-server";
license = licenses.asl20;
maintainers = with maintainers; [ SuperSandro2000 ];
};
}