1{ lib, stdenv, fetchFromGitHub, rustPlatform, pkg-config, openssl, libsodium
2, llvmPackages, clang, xz
3, Security }:
4
5rustPlatform.buildRustPackage rec {
6 pname = "rdedup";
7 version = "3.1.1";
8
9 src = fetchFromGitHub {
10 owner = "dpc";
11 repo = "rdedup";
12 rev = "rdedup-v${version}";
13 sha256 = "0y34a3mpghdmcb2rx4z62q0s351bfmy1287d75mm07ryfgglgsd7";
14 };
15
16 cargoSha256 = "1k0pl9i7zf1ki5ch2zxc1fqsf94bxjlvjrkh0500cycwqcdys296";
17
18 cargoPatches = [
19 ./v3.1.1-fix-Cargo.lock.patch
20 ];
21
22 nativeBuildInputs = [ pkg-config llvmPackages.libclang clang ];
23 buildInputs = [ openssl libsodium xz ]
24 ++ (lib.optional stdenv.isDarwin Security);
25
26 configurePhase = ''
27 export LIBCLANG_PATH="${llvmPackages.libclang.lib}/lib"
28 '';
29
30 meta = with lib; {
31 description = "Data deduplication with compression and public key encryption";
32 homepage = "https://github.com/dpc/rdedup";
33 license = licenses.mpl20;
34 maintainers = with maintainers; [ dywedir ];
35 broken = stdenv.isDarwin;
36 };
37}