python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / tools / filesystems / garage / default.nix
blob13184afe73cee4e55b88bb4f82fae88e3c79a15d
1 { lib, stdenv, rustPlatform, fetchFromGitea, openssl, pkg-config, protobuf
2 , testers, Security, garage }:
4 rustPlatform.buildRustPackage rec {
5   pname = "garage";
6   version = "0.7.3";
8   src = fetchFromGitea {
9     domain = "git.deuxfleurs.fr";
10     owner = "Deuxfleurs";
11     repo = "garage";
12     rev = "v${version}";
13     sha256 = "sha256-WDhe2L+NalMoIy2rhfmv8KCNDMkcqBC9ezEKKocihJg=";
14   };
16   cargoSha256 = "sha256-5m4c8/upBYN8nuysDhGKEnNVJjEGC+yLrraicrAQOfI=";
18   nativeBuildInputs = [ protobuf pkg-config ];
20   buildInputs = [
21     openssl
22   ] ++ lib.optional stdenv.isDarwin Security;
24   OPENSSL_NO_VENDOR = true;
26   # See https://git.deuxfleurs.fr/Deuxfleurs/garage/src/tag/v0.7.2/default.nix#L84-L98
27   # on version changes for checking if changes are required here
28   buildFeatures = [
29     "kubernetes-discovery"
30   ];
32   # To make integration tests pass, we include the optional k2v feature here,
33   # but not in buildFeatures. See:
34   # https://garagehq.deuxfleurs.fr/documentation/reference-manual/k2v/
35   checkFeatures = [
36     "k2v"
37     "kubernetes-discovery"
38   ];
40   passthru = {
41     tests.version = testers.testVersion { package = garage; };
42   };
44   meta = {
45     description = "S3-compatible object store for small self-hosted geo-distributed deployments";
46     homepage = "https://garagehq.deuxfleurs.fr";
47     license = lib.licenses.agpl3Only;
48     maintainers = with lib.maintainers; [ nickcao _0x4A6F ];
49   };