Merge pull request #233892 from uninsane/pr/sane/bonsai-init

bonsai: init at 1.0.2
This commit is contained in:
Peder Bergebakken Sundt 2024-01-15 23:46:20 +01:00 committed by GitHub
commit 005862f60d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 68 additions and 0 deletions

View File

@ -0,0 +1,66 @@
{ stdenv
, lib
, fetchFromSourcehut
, gitUpdater
, hare
, hareThirdParty
}:
stdenv.mkDerivation rec {
pname = "bonsai";
version = "1.0.2";
src = fetchFromSourcehut {
owner = "~stacyharper";
repo = "bonsai";
rev = "v${version}";
hash = "sha256-Yosf07KUOQv4O5111tLGgI270g0KVGwzdTPtPOsTcP8=";
};
postPatch = ''
substituteInPlace Makefile \
--replace 'hare build' 'hare build $(HARE_TARGET_FLAGS)'
'';
nativeBuildInputs = [
hare
];
buildInputs = with hareThirdParty; [
hare-ev
hare-json
];
env.HARE_TARGET_FLAGS =
if stdenv.hostPlatform.isAarch64 then
"-a aarch64"
else if stdenv.hostPlatform.isRiscV64 then
"-a riscv64"
else if stdenv.hostPlatform.isx86_64 then
"-a x86_64"
else
"";
# TODO: hare setup-hook is supposed to do this for us.
# It does it correctly for native compilation, but not cross compilation: wrong offset?
env.HAREPATH = with hareThirdParty; "${hare-json}/src/hare/third-party:${hare-ev}/src/hare/third-party";
preConfigure = ''
export HARECACHE=$(mktemp -d)
'';
installFlags = [ "PREFIX=$(out)" ];
doCheck = true;
passthru.updateScript = gitUpdater {
rev-prefix = "v";
};
meta = with lib; {
description = "Finite State Machine structured as a tree";
homepage = "https://git.sr.ht/~stacyharper/bonsai";
license = licenses.agpl3;
maintainers = with maintainers; [ colinsane ];
platforms = platforms.linux;
};
}

View File

@ -1757,6 +1757,8 @@ with pkgs;
bikeshed = python3Packages.callPackage ../applications/misc/bikeshed { };
bonsai = callPackage ../tools/misc/bonsai { };
cie-middleware-linux = callPackage ../tools/security/cie-middleware-linux { };
cidrgrep = callPackage ../tools/text/cidrgrep { };