2021-12-25 17:07:39 +00:00
|
|
|
{ fetchzip
|
2022-12-15 17:58:11 +00:00
|
|
|
, fetchFromGitHub
|
2021-12-25 17:07:39 +00:00
|
|
|
, lib
|
2022-12-15 17:58:11 +00:00
|
|
|
, makeDesktopItem
|
2021-12-25 17:07:39 +00:00
|
|
|
, makeWrapper
|
2023-02-07 02:41:49 +00:00
|
|
|
, nix-update-script
|
2021-12-25 17:07:39 +00:00
|
|
|
, stdenv
|
|
|
|
|
|
|
|
# Dependencies
|
|
|
|
, gtk2-x11
|
|
|
|
, mono
|
|
|
|
}:
|
|
|
|
|
|
|
|
stdenv.mkDerivation rec {
|
|
|
|
pname = "nbt-explorer";
|
|
|
|
version = "2.8.0";
|
|
|
|
|
|
|
|
src = fetchzip {
|
|
|
|
url = "https://github.com/jaquadro/NBTExplorer/releases/download/v${version}-win/NBTExplorer-${version}.zip";
|
2022-07-22 18:45:28 +00:00
|
|
|
hash = "sha256-T0FLxuzgVHBz78rScPC81Ns2X1Mw/omzvYJVRQM24iU=";
|
2021-12-25 17:07:39 +00:00
|
|
|
stripRoot = false;
|
|
|
|
};
|
|
|
|
|
2022-12-15 17:58:11 +00:00
|
|
|
iconSrc = fetchFromGitHub {
|
|
|
|
owner = "jaquadro";
|
|
|
|
repo = "NBTExplorer";
|
|
|
|
rev = "d29f249d7e489eaa4ccf8ba5b661cfa6ae0466ff";
|
|
|
|
sparseCheckout = [ "NBTExplorer/Resources/Dead_Bush_256.png" ];
|
|
|
|
hash = "sha256-Hq3VYZ4IztUghN2AqYB7KZIALfoinMDyEn2MjQ9eilE=";
|
|
|
|
};
|
|
|
|
|
|
|
|
desktopItem = makeDesktopItem {
|
|
|
|
categories = [ "Utility" ];
|
|
|
|
genericName = "Minecraft data editor";
|
|
|
|
desktopName = "NBTExplorer";
|
|
|
|
name = pname;
|
|
|
|
icon = pname;
|
|
|
|
exec = meta.mainProgram;
|
|
|
|
};
|
|
|
|
|
2021-12-25 17:07:39 +00:00
|
|
|
phases = [ "installPhase" "patchPhase" ];
|
|
|
|
nativeBuildInputs = [ makeWrapper ];
|
|
|
|
installPhase = ''
|
|
|
|
mkdir -p $out/lib
|
|
|
|
cp --target-directory $out/lib \
|
|
|
|
$src/NBTExplorer.exe \
|
|
|
|
$src/NBTModel.dll \
|
|
|
|
$src/Substrate.dll
|
|
|
|
|
2022-12-15 17:54:05 +00:00
|
|
|
makeWrapper "${mono}/bin/mono" $out/bin/${pname} \
|
2021-12-25 17:07:39 +00:00
|
|
|
--add-flags "$out/lib/NBTExplorer.exe" \
|
|
|
|
--suffix LD_LIBRARY_PATH : ${gtk2-x11}/lib
|
2022-12-15 17:58:11 +00:00
|
|
|
|
|
|
|
install -D $iconSrc/NBTExplorer/Resources/Dead_Bush_256.png $out/share/icons/${pname}.png
|
|
|
|
install -D -t $out/share/applications ${desktopItem}/share/applications/*
|
2021-12-25 17:07:39 +00:00
|
|
|
'';
|
|
|
|
|
2023-02-07 02:41:49 +00:00
|
|
|
passthru.updateScript = nix-update-script {
|
|
|
|
extraArgs = [ "--version-regex" "(.*)-win" ];
|
|
|
|
};
|
|
|
|
|
2021-12-25 17:07:39 +00:00
|
|
|
meta = {
|
|
|
|
description = "A graphical NBT editor for all Minecraft NBT data sources";
|
|
|
|
homepage = "https://github.com/jaquadro/NBTExplorer";
|
|
|
|
license = lib.licenses.mit;
|
2022-12-15 17:54:05 +00:00
|
|
|
mainProgram = pname;
|
2021-12-25 17:07:39 +00:00
|
|
|
};
|
|
|
|
}
|