depot/third_party/nixpkgs/pkgs/applications/networking/soapui/default.nix

68 lines
1.8 KiB
Nix
Raw Normal View History

{
fetchurl,
lib,
stdenv,
writeText,
jdk,
makeWrapper,
nixosTests,
}:
stdenv.mkDerivation rec {
pname = "soapui";
version = "5.7.2";
src = fetchurl {
url = "https://dl.eviware.com/soapuios/${version}/SoapUI-${version}-linux-bin.tar.gz";
sha256 = "sha256-pT0ZANVC7Sv7zxMDPY86aclIUGZeazOZadiVVsmEjtw=";
};
nativeBuildInputs = [makeWrapper];
buildInputs = [jdk];
installPhase = ''
runHook preInstall
mkdir -p $out/share/java
cp -R bin lib $out/share/java
makeWrapper $out/share/java/bin/soapui.sh $out/bin/soapui --set SOAPUI_HOME $out/share/java
runHook postInstall
'';
patches = [
# Adjust java path to point to derivation paths
(writeText "soapui-${version}.patch" ''
--- a/bin/soapui.sh
+++ b/bin/soapui.sh
@@ -50,7 +50,7 @@
#JAVA 16
JAVA_OPTS="$JAVA_OPTS --illegal-access=permit"
-JFXRTPATH=`java -cp $SOAPUI_CLASSPATH com.eviware.soapui.tools.JfxrtLocator`
+JFXRTPATH=`${jdk}/bin/java -cp $SOAPUI_CLASSPATH com.eviware.soapui.tools.JfxrtLocator`
SOAPUI_CLASSPATH=$JFXRTPATH:$SOAPUI_CLASSPATH
if $darwin
@@ -85,4 +85,4 @@
echo =
echo ================================
-java $JAVA_OPTS -cp $SOAPUI_CLASSPATH com.eviware.soapui.SoapUI "$@"
+${jdk}/bin/java $JAVA_OPTS -cp $SOAPUI_CLASSPATH com.eviware.soapui.SoapUI "$@"
'')
];
passthru.tests = {inherit (nixosTests) soapui;};
meta = with lib; {
description = "Most Advanced REST & SOAP Testing Tool in the World";
homepage = "https://www.soapui.org/";
sourceProvenance = with sourceTypes; [binaryBytecode];
license = "SoapUI End User License Agreement";
maintainers = with maintainers; [gerschtli];
platforms = platforms.linux; # we don't fetch the dmg yet
mainProgram = "soapui";
};
}