1{
2 lib,
3 stdenv,
4 mkMesonLibrary,
5
6 boost,
7 brotli,
8 libarchive,
9 libblake3,
10 libcpuid,
11 libsodium,
12 nlohmann_json,
13 openssl,
14
15 # Configuration Options
16
17 version,
18}:
19
20mkMesonLibrary (finalAttrs: {
21 pname = "nix-util";
22 inherit version;
23
24 workDir = ./.;
25
26 buildInputs = [
27 brotli
28 ]
29 ++ lib.optional (lib.versionAtLeast version "2.27") libblake3
30 ++ [
31 libsodium
32 openssl
33 ]
34 ++ lib.optional stdenv.hostPlatform.isx86_64 libcpuid;
35
36 propagatedBuildInputs = [
37 boost
38 libarchive
39 nlohmann_json
40 ];
41
42 mesonFlags = [
43 (lib.mesonEnable "cpuid" stdenv.hostPlatform.isx86_64)
44 ];
45
46 meta = {
47 platforms = lib.platforms.unix ++ lib.platforms.windows;
48 };
49
50})