From 95632ac02fdddae4b92cd7799bf4732dbe607d29 Mon Sep 17 00:00:00 2001 From: dramforever Date: Mon, 28 Jul 2025 15:50:12 +0800 Subject: [PATCH] owl-lisp: Use dash for tests On aarch64-linux the test fail to terminate, with bash printing a message like this over and over again: tests/run: line 63: wait: pid 105 is not a child of this shell Running in GDB reveals that the is stuck in an infinite loop in wait_for_background_pids waiting for a child that is no longer there, suggesting that it's a bug in Bash. Work around it for now by running tests in DASH instead. --- pkgs/by-name/ow/owl-lisp/package.nix | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ow/owl-lisp/package.nix b/pkgs/by-name/ow/owl-lisp/package.nix index babd94dc0b3d..1953285e83ea 100644 --- a/pkgs/by-name/ow/owl-lisp/package.nix +++ b/pkgs/by-name/ow/owl-lisp/package.nix @@ -3,6 +3,7 @@ stdenv, fetchFromGitLab, which, + dash, }: stdenv.mkDerivation rec { @@ -16,7 +17,17 @@ stdenv.mkDerivation rec { hash = "sha256-GfvOkYLo8fgAvGuUa59hDy+sWJSwyntwqMO8TAK/lUo="; }; - nativeBuildInputs = [ which ]; + nativeBuildInputs = [ + which + dash + ]; + + # Tests fail with bash, replacing with dash seems to work around it + # FIXME: Why? + postPatch = '' + substituteInPlace Makefile \ + --replace-fail 'sh tests/run' 'dash tests/run' + ''; makeFlags = [ "PREFIX=${placeholder "out"}"