parent
b40f62f3f8
commit
2c13f8ea93
@ -0,0 +1,66 @@ |
||||
{ lib |
||||
, stdenv |
||||
, fetchFromGitHub |
||||
, copyDesktopItems |
||||
, jdk |
||||
, makeDesktopItem |
||||
, makeWrapper |
||||
}: |
||||
|
||||
stdenv.mkDerivation rec { |
||||
pname = "graphwar"; |
||||
version = "1.0.0"; |
||||
|
||||
src = fetchFromGitHub { |
||||
owner = "catabriga"; |
||||
repo = "graphwar"; |
||||
rev = version; |
||||
sha256 = "sha256-t3Y576dXWp2Mj6OSQN5cm9FuNBWNqKq6xxkVRbjIBgE="; |
||||
}; |
||||
|
||||
nativeBuildInputs = [ copyDesktopItems makeWrapper ]; |
||||
buildInputs = [ jdk ]; |
||||
|
||||
buildPhase = '' |
||||
runHook preBuild |
||||
|
||||
mkdir -p out/ |
||||
javac -d out/ -sourcepath src/ -classpath out/ -encoding utf8 src/**/*.java |
||||
|
||||
runHook postBuild |
||||
''; |
||||
|
||||
installPhase = '' |
||||
runHook preInstall |
||||
|
||||
mkdir -p $out/lib/ |
||||
mv out $out/lib/graphwar |
||||
cp -r rsc $out/lib/graphwar/rsc |
||||
|
||||
makeWrapper ${jdk}/bin/java $out/bin/graphwar \ |
||||
--add-flags "-classpath $out/lib/graphwar Graphwar.Graphwar" |
||||
makeWrapper ${jdk}/bin/java $out/bin/graphwar-roomserver \ |
||||
--add-flags "-classpath $out/lib/graphwar RoomServer.RoomServer" |
||||
makeWrapper ${jdk}/bin/java $out/bin/graphwar-globalserver \ |
||||
--add-flags "-classpath $out/lib/graphwar GlobalServer.GlobalServer" |
||||
|
||||
runHook postInstall |
||||
''; |
||||
|
||||
desktopItems = [ |
||||
(makeDesktopItem { |
||||
name = "graphwar"; |
||||
exec = "graphwar"; |
||||
desktopName = "Graphwar"; |
||||
categories = [ "Game" ]; |
||||
}) |
||||
]; |
||||
|
||||
meta = with lib; { |
||||
homepage = "http://www.graphwar.com/"; |
||||
description = "An artillery game in which you must hit your enemies using mathematical functions"; |
||||
license = licenses.gpl3Plus; |
||||
platforms = jdk.meta.platforms; |
||||
maintainers = with maintainers; [ yrd ]; |
||||
}; |
||||
} |
Loading…
Reference in new issue