1 { lib, stdenv, fetchurl, unzip, jre8
7 stdenv.mkDerivation rec {
8 pname = "protege-distribution";
12 url = "https://github.com/protegeproject/protege-distribution/releases/download/v${version}/Protege-${version}-platform-independent.zip";
13 sha256 = "092x22wyisdnhccx817mqq15sxqdfc7iz4whr4mbvzrd9di6ipjq";
16 nativeBuildInputs = [ unzip copyDesktopItems iconConvTools ];
19 # Replace logic for searching the install directory with a static cd into $out
21 # Disable console logging, maintaining only file-based logging
22 ./disable-console-log.patch
26 # Resolve @out@ (introduced by "static-path.patch") to $out, and set the
27 # correct Java executable (Protege is a JRE 8 application)
28 substituteInPlace run.sh \
29 --subst-var-by out $out \
30 --replace "java -X" "exec ${jre8.outPath}/bin/java -X"
41 # Delete non-Linux launch scripts
44 # Move launch script into /bin, giving it a recognizable name
45 install -D run.sh $out/bin/run-protege
47 # Generate and copy icons to where they can be found
48 icoFileToHiColorTheme app/Protege.ico protege $out
50 # Move everything else under protege/
52 mv {bin,bundles,conf,plugins} $out/protege
60 desktopName = "Protege Desktop";
62 comment = "OWL2 ontology editor";
63 categories = [ "Development" ];
69 description = "The OWL2 ontology editor from Stanford, with third-party plugins included";
70 homepage = "https://protege.stanford.edu/";
71 downloadPage = "https://protege.stanford.edu/products.php#desktop-protege";
72 maintainers = with maintainers; [ nessdoor ];
73 license = with licenses; [ asl20 bsd2 epl10 lgpl3 ];
74 platforms = platforms.linux;