depot/third_party/nixpkgs/pkgs/by-name/sc/schemacrawler/package.nix

43 lines
1.1 KiB
Nix

{ lib
, stdenv
, fetchzip
, jre
, makeWrapper
}:
stdenv.mkDerivation (finalAttrs: {
pname = "schemacrawler";
version = "16.22.3";
src = fetchzip {
url = "https://github.com/schemacrawler/SchemaCrawler/releases/download/v${finalAttrs.version}/schemacrawler-${finalAttrs.version}-bin.zip";
hash = "sha256-bZXJvINVsDkGU+xR1tukK2qY93MAVIp2yGV5TZQoQsY=";
};
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp -r {config,lib} $out/
makeWrapper ${jre}/bin/java $out/bin/schemacrawler \
--add-flags "-cp $out/lib/*:$out/config" \
--add-flags schemacrawler.Main
runHook postInstall
'';
preferLocalBuild = true;
meta = with lib; {
description = "Database schema discovery and comprehension tool";
mainProgram = "schemacrawler";
homepage = "https://www.schemacrawler.com/";
sourceProvenance = with sourceTypes; [ binaryBytecode ];
license = with licenses; [ epl10 gpl3Only lgpl3Only ];
platforms = platforms.unix;
maintainers = with maintainers; [ elohmeier ];
};
})