nixpkgs/pkgs/development/tools/code-maat/default.nix
stuebinm ff1a94e523 treewide: add meta.mainProgram to packages with a single binary
The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
2024-03-19 03:14:51 +01:00

47 lines
1.1 KiB
Nix

{ lib
, stdenvNoCC
, fetchurl
, makeBinaryWrapper
, jre
}:
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "code-maat";
version = "1.0.4";
src = fetchurl {
url = "https://github.com/adamtornhill/code-maat/releases/download/v${finalAttrs.version}/code-maat-${finalAttrs.version}-standalone.jar";
hash = "sha256-QoeuIDSQGERFD3aVR7xEl6DaGm0cf6b63IWHBeZ0O18=";
};
dontUnpack = true;
nativeBuildInputs = [
makeBinaryWrapper
];
installPhase =
let
jar = "$out/libexec/code-maat/code-maat.jar";
in
''
runHook preInstall
install -D ${finalAttrs.src} ${jar}
mkdir -p "$out/bin"
makeWrapper "${jre}/bin/java" "$out/bin/code-maat" \
--add-flags "-jar ${jar}"
runHook postInstall
'';
meta = with lib; {
description = "A command line tool to mine and analyze data from version-control systems";
mainProgram = "code-maat";
homepage = "https://github.com/adamtornhill/code-maat";
platforms = platforms.unix;
license = licenses.gpl3;
maintainers = with maintainers; [ sir4ur0n ];
};
})