diff --git a/pkgs/development/interpreters/rakudo/moarvm.nix b/pkgs/development/interpreters/rakudo/moarvm.nix index 5311402c8b09..a42cbf2e4cf3 100644 --- a/pkgs/development/interpreters/rakudo/moarvm.nix +++ b/pkgs/development/interpreters/rakudo/moarvm.nix @@ -1,39 +1,46 @@ { - lib, - stdenv, fetchFromGitHub, + lib, perl, + pkg-config, + stdenv, + zstd, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "moarvm"; - version = "2025.06"; + version = "2025.12"; # nixpkgs-update: no auto update src = fetchFromGitHub { - owner = "moarvm"; - repo = "moarvm"; - rev = version; - hash = "sha256-QtJ8cLAbsFJ26wkfQCbIMVU1ArWlAXjsQ/RJbQ0wRNo="; + owner = "MoarVM"; + repo = "MoarVM"; + tag = finalAttrs.version; fetchSubmodules = true; + hash = "sha256-hftskJ+5p/XHahAJTG28ifWkExb8Z8u7J5CeoQooUYE="; }; + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ zstd ]; + postPatch = '' patchShebangs . + substituteInPlace Configure.pl \ + --replace-fail 'my @check_tools = qw/ar cc ld/;' 'my @check_tools = ();' '' + lib.optionalString stdenv.hostPlatform.isDarwin '' substituteInPlace Configure.pl \ - --replace '`/usr/bin/arch`' '"${stdenv.hostPlatform.darwinArch}"' \ - --replace '/usr/bin/arch' "$(type -P true)" \ - --replace '/usr/' '/nope/' + --replace-fail '`/usr/bin/arch`' '"${stdenv.hostPlatform.darwinArch}"' \ + --replace-fail '/usr/bin/arch' "$(type -P true)" \ + --replace-fail '/usr/' '/nope/' substituteInPlace 3rdparty/dyncall/configure \ - --replace '`sw_vers -productVersion`' '"11.0"' + --replace-fail '`sw_vers -productVersion`' '"11.0"' ''; - buildInputs = [ perl ]; - doCheck = false; # MoarVM does not come with its own test suite - - configureScript = "${perl}/bin/perl ./Configure.pl"; + configureScript = "${lib.getExe perl} ./Configure.pl"; + configureFlags = [ + "--pkgconfig=${lib.getExe pkg-config}" + ]; meta = { description = "VM with adaptive optimization and JIT compilation, built for Rakudo"; @@ -47,4 +54,4 @@ stdenv.mkDerivation rec { mainProgram = "moar"; platforms = lib.platforms.unix; }; -} +})