mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-23 07:23:20 +00:00
51 lines
1.6 KiB
Nix
51 lines
1.6 KiB
Nix
{ lib
|
|
, stdenv
|
|
, fetchFromGitHub
|
|
, zig_0_11
|
|
, testers
|
|
, tigerbeetle
|
|
, nix-update-script
|
|
}:
|
|
let
|
|
# Read [these comments](pkgs/development/compilers/zig/hook.nix#L12-L30) on the default Zig flags, and the associated links. tigerbeetle stopped exposing the `-Doptimize` build flag, so we can't use the default Nixpkgs zig hook as-is. tigerbeetle only exposes a boolean `-Drelease` flag which we'll add in the tigerbeetle derivation in this file.
|
|
custom_zig_hook = zig_0_11.hook.overrideAttrs (previousAttrs: {
|
|
zig_default_flags = builtins.filter (flag: builtins.match "-Doptimize.*" flag == null) previousAttrs.zig_default_flags;
|
|
});
|
|
in
|
|
stdenv.mkDerivation (finalAttrs: {
|
|
pname = "tigerbeetle";
|
|
version = "0.14.177";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "tigerbeetle";
|
|
repo = "tigerbeetle";
|
|
rev = "refs/tags/${finalAttrs.version}";
|
|
hash = "sha256-oMsDHz/yOWtS1XhJcXR74pA3YvPzANUdRAy7tjNO5lc=";
|
|
};
|
|
|
|
nativeBuildInputs = [ custom_zig_hook ];
|
|
|
|
zigBuildFlags = [
|
|
"-Drelease"
|
|
"-Dgit-commit=0000000000000000000000000000000000000000"
|
|
"-Dversion=${finalAttrs.version}"
|
|
];
|
|
|
|
passthru = {
|
|
tests.version = testers.testVersion {
|
|
package = tigerbeetle;
|
|
command = "tigerbeetle version";
|
|
};
|
|
updateScript = nix-update-script { };
|
|
};
|
|
|
|
meta = {
|
|
homepage = "https://tigerbeetle.com/";
|
|
description = "A financial accounting database designed to be distributed and fast";
|
|
license = lib.licenses.asl20;
|
|
maintainers = with lib.maintainers; [ danielsidhion ];
|
|
platforms = lib.platforms.linux;
|
|
mainProgram = "tigerbeetle";
|
|
};
|
|
})
|