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