{ lib, stdenv, fetchFromGitHub, cmake, llvmPackages, nix-update-script, }: stdenv.mkDerivation (finalAttrs: { pname = "luau"; version = "0.705"; src = fetchFromGitHub { owner = "luau-lang"; repo = "luau"; tag = finalAttrs.version; hash = "sha256-M0niHRtx/Xu3H5CJXbqB2VCXFsthvPDNcr29egY3ncI="; }; nativeBuildInputs = [ cmake ]; buildInputs = lib.optionals stdenv.cc.isClang [ llvmPackages.libunwind ]; installPhase = '' runHook preInstall install -Dm755 -t $out/bin luau install -Dm755 -t $out/bin luau-analyze install -Dm755 -t $out/bin luau-compile runHook postInstall ''; doCheck = true; checkPhase = '' runHook preCheck ./Luau.UnitTest ./Luau.Conformance runHook postCheck ''; passthru.updateScript = nix-update-script { }; meta = { description = "Fast, small, safe, gradually typed embeddable scripting language derived from Lua"; homepage = "https://luau-lang.org/"; changelog = "https://github.com/luau-lang/luau/releases/tag/${finalAttrs.version}"; license = lib.licenses.mit; platforms = lib.platforms.all; maintainers = with lib.maintainers; [ prince213 HeitorAugustoLN ]; mainProgram = "luau"; }; })