1{ lib, stdenv, fetchzip, makeWrapper, makeDesktopItem, jdk8 }:
2
3stdenv.mkDerivation rec {
4 pname = "jpexs";
5 version = "18.4.1";
6
7 src = fetchzip {
8 url = "https://github.com/jindrapetrik/jpexs-decompiler/releases/download/version${version}/ffdec_${version}.zip";
9 sha256 = "sha256-aaEL3xJZkFw78zo3IyauWJM9kOo0rJTUSKmWsv9xQZ8=";
10 stripRoot = false;
11 };
12
13 dontBuild = true;
14
15 nativeBuildInputs = [ makeWrapper ];
16
17 installPhase = ''
18 runHook preInstall
19
20 mkdir -p $out/bin
21 mkdir -p $out/share/{ffdec,icons/hicolor/512x512/apps}
22
23 cp ffdec.jar $out/share/ffdec
24 cp -r lib $out/share/ffdec
25 cp icon.png $out/share/icons/hicolor/512x512/apps/ffdec.png
26 cp -r ${desktopItem}/share/applications $out/share
27
28 makeWrapper ${jdk8}/bin/java $out/bin/ffdec \
29 --add-flags "-jar $out/share/ffdec/ffdec.jar"
30 '';
31
32 desktopItem = makeDesktopItem rec {
33 name = "ffdec";
34 exec = name;
35 icon = name;
36 desktopName = "JPEXS Free Flash Decompiler";
37 genericName = "Flash Decompiler";
38 comment = meta.description;
39 categories = [ "Development" "Java" ];
40 startupWMClass = "com-jpexs-decompiler-flash-gui-Main";
41 };
42
43 meta = with lib; {
44 description = "Flash SWF decompiler and editor";
45 mainProgram = "ffdec";
46 longDescription = ''
47 Open-source Flash SWF decompiler and editor. Extract resources,
48 convert SWF to FLA, edit ActionScript, replace images, sounds,
49 texts or fonts.
50 '';
51 homepage = "https://github.com/jindrapetrik/jpexs-decompiler";
52 sourceProvenance = with sourceTypes; [ binaryBytecode ];
53 license = licenses.gpl3;
54 platforms = jdk8.meta.platforms;
55 maintainers = [ ];
56 };
57}