camasca/pkgs/enigma.nix

42 lines
919 B
Nix

{
stdenv,
fetchurl,
jdk,
makeWrapper,
makeDesktopItem,
copyDesktopItems,
}:
stdenv.mkDerivation (finalAttrs: {
name = "enigma";
version = "2.5.0";
src = fetchurl {
url = with finalAttrs; "https://maven.fabricmc.net/cuchaz/enigma-swing/${version}/enigma-swing-${version}-all.jar";
hash = "sha256-yOPPTKt96aRSbziYDBLBKqfLS2R9GeXgz5m2t1fgFHo=";
};
dontUnpack = true;
nativeBuildInputs = [makeWrapper copyDesktopItems];
installPhase = with finalAttrs; ''
runHook preInstall
mkdir -p $out/bin $out/share/${name}
cp ${src} $out/share/${name}/${name}.jar
makeWrapper ${jdk}/bin/java $out/bin/${name} --add-flags "-jar $out/share/${name}/${name}.jar"
runHook postInstall
'';
desktopItems = [
(makeDesktopItem {
name = "enigma";
desktopName = "Enigma";
exec = "enigma";
terminal = false;
})
];
meta.mainProgram = "enigma";
})