diff --git a/pkgs/by-name/em/emmylua-check/package.nix b/pkgs/by-name/em/emmylua-check/package.nix new file mode 100644 index 000000000000..4620d4808814 --- /dev/null +++ b/pkgs/by-name/em/emmylua-check/package.nix @@ -0,0 +1,45 @@ +{ + lib, + fetchFromGitHub, + rustPlatform, + versionCheckHook, + nix-update-script, +}: +rustPlatform.buildRustPackage (finalAttrs: { + pname = "emmylua_check"; + version = "0.10.0"; + + src = fetchFromGitHub { + owner = "EmmyLuaLs"; + repo = "emmylua-analyzer-rust"; + tag = finalAttrs.version; + hash = "sha256-Fvg3G0C/YECDEWZ4mDC5b8qocWvyDJ9KdLYNtwIu0+I="; + }; + + buildAndTestSubdir = "crates/emmylua_check"; + + cargoHash = "sha256-MIGYx1qMxsCCq3QkFeOuKbM4w/sJ2K0T+SRIDJQjf/8="; + + nativeInstallCheckInputs = [ + versionCheckHook + ]; + versionCheckProgram = "${placeholder "out"}/bin/emmylua_check"; + versionCheckProgramArg = "--version"; + doInstallCheck = true; + + passthru = { + updateScript = nix-update-script { }; + }; + + meta = { + description = "Comprehensive Lua static analysis tool for code quality assurance"; + homepage = "https://github.com/EmmyLuaLs/emmylua-analyzer-rust"; + changelog = "https://github.com/EmmyLuaLs/emmylua-analyzer-rust/blob/${finalAttrs.src.tag}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ + mrcjkb + ]; + platforms = lib.platforms.all; + mainProgram = "emmylua_check"; + }; +})