1{
2 lib,
3 stdenvNoCC,
4 fetchurl,
5 makeWrapper,
6 wrapGAppsHook3,
7 jre,
8}:
9
10stdenvNoCC.mkDerivation (finalAttrs: {
11 pname = "mcaselector";
12 version = "2.5.3";
13
14 src = fetchurl {
15 url = "https://github.com/Querz/mcaselector/releases/download/${finalAttrs.version}/mcaselector-${finalAttrs.version}.jar";
16 hash = "sha256-PQCXwtEK+Tq1cRJDkzlQ43dhdQ3J+bd8x/ymvsfIfdA=";
17 };
18
19 dontUnpack = true;
20 dontBuild = true;
21
22 nativeBuildInputs = [
23 jre
24 makeWrapper
25 wrapGAppsHook3
26 ];
27
28 dontWrapGApps = true;
29
30 installPhase = ''
31 runHook preInstall
32
33 mkdir -p $out/{bin,lib/mcaselector}
34 cp $src $out/lib/mcaselector/mcaselector.jar
35
36 runHook postInstall
37 '';
38
39 preFixup = ''
40 makeWrapper ${jre}/bin/java $out/bin/mcaselector \
41 --add-flags "-jar $out/lib/mcaselector/mcaselector.jar" \
42 ''${gappsWrapperArgs[@]}
43 '';
44
45 meta = with lib; {
46 homepage = "https://github.com/Querz/mcaselector";
47 description = "Tool to select chunks from Minecraft worlds for deletion or export";
48 mainProgram = "mcaselector";
49 sourceProvenance = with sourceTypes; [ binaryBytecode ];
50 license = licenses.mit;
51 maintainers = [ maintainers.Scrumplex ];
52 platforms = platforms.linux;
53 };
54})