1{ 2 lib, 3 stdenv, 4 fetchurl, 5 unzip, 6 jre, 7 makeDesktopItem, 8 copyDesktopItems, 9}: 10 11let 12 desktopItem = makeDesktopItem { 13 desktopName = "JDiskReport"; 14 genericName = "A graphical utility to visualize disk usage"; 15 categories = [ "Utility" ]; 16 exec = "jdiskreport"; 17 name = "jdiskreport"; 18 }; 19in 20stdenv.mkDerivation rec { 21 pname = "jdiskreport"; 22 version = "1.4.1"; 23 24 src = fetchurl { 25 url = "https://www.jgoodies.com/download/jdiskreport/jdiskreport-${ 26 lib.replaceStrings [ "." ] [ "_" ] version 27 }.zip"; 28 sha256 = "0d5mzkwsbh9s9b1vyvpaawqc09b0q41l2a7pmwf7386b1fsx6d58"; 29 }; 30 31 nativeBuildInputs = [ 32 copyDesktopItems 33 unzip 34 ]; 35 inherit jre; 36 37 installPhase = '' 38 runHook preInstall 39 40 unzip $src 41 42 jar=$(ls */*.jar) 43 44 mkdir -p $out/share/java 45 mv $jar $out/share/java 46 47 mkdir -p $out/bin 48 cat > $out/bin/jdiskreport <<EOF 49 #! $SHELL -e 50 exec $jre/bin/java -jar $out/share/java/$(basename $jar) 51 EOF 52 chmod +x $out/bin/jdiskreport 53 54 runHook postInstall 55 ''; 56 57 desktopItems = [ desktopItem ]; 58 59 meta = with lib; { 60 homepage = "http://www.jgoodies.com/freeware/jdiskreport/"; 61 description = "Graphical utility to visualize disk usage"; 62 sourceProvenance = with sourceTypes; [ binaryBytecode ]; 63 license = licenses.unfreeRedistributable; # TODO freedist, libs under BSD-3 64 platforms = [ 65 "x86_64-linux" 66 "x86_64-darwin" 67 ]; 68 maintainers = with maintainers; [ kylesferrazza ]; 69 mainProgram = "jdiskreport"; 70 }; 71}