at master 63 lines 1.6 kB view raw
1{ 2 stdenv, 3 fetchzip, 4 lib, 5 makeWrapper, 6 makeDesktopItem, 7 jdk, 8}: 9 10stdenv.mkDerivation rec { 11 version = "2.2"; 12 pname = "visualvm"; 13 14 src = fetchzip { 15 url = "https://github.com/visualvm/visualvm.src/releases/download/${version}/visualvm_${ 16 builtins.replaceStrings [ "." ] [ "" ] version 17 }.zip"; 18 sha256 = "sha256-xEqzSNM5Mkt9SQ+23Edb2NMN/o8koBjhQWTGuyZ/0m4="; 19 }; 20 21 desktopItem = makeDesktopItem { 22 name = "visualvm"; 23 exec = "visualvm"; 24 comment = "Java Troubleshooting Tool"; 25 desktopName = "VisualVM"; 26 genericName = "Java Troubleshooting Tool"; 27 categories = [ "Development" ]; 28 }; 29 30 nativeBuildInputs = [ makeWrapper ]; 31 32 installPhase = '' 33 find . -type f -name "*.dll" -o -name "*.exe" -delete; 34 35 substituteInPlace etc/visualvm.conf \ 36 --replace "#visualvm_jdkhome=" "visualvm_jdkhome=" \ 37 --replace "/path/to/jdk" "${jdk.home}" \ 38 39 cp -r . $out 40 ''; 41 42 meta = with lib; { 43 description = "Visual interface for viewing information about Java applications"; 44 mainProgram = "visualvm"; 45 longDescription = '' 46 VisualVM is a visual tool integrating several commandline JDK 47 tools and lightweight profiling capabilities. Designed for both 48 production and development time use, it further enhances the 49 capability of monitoring and performance analysis for the Java 50 SE platform. 51 ''; 52 homepage = "https://visualvm.github.io"; 53 license = with licenses; [ 54 gpl2Plus 55 classpathException20 56 ]; 57 platforms = platforms.all; 58 maintainers = with maintainers; [ 59 michalrus 60 moaxcp 61 ]; 62 }; 63}