Use BASE editor CLI interface to build app seamlessly

This commit is contained in:
2025-07-11 09:58:46 +02:00
parent 1e8ff04930
commit d66aabd58a
3 changed files with 67 additions and 8 deletions

View File

@@ -1,5 +1,6 @@
{
pkgs,
base,
lib,
stdenv,
system,
@@ -17,20 +18,22 @@ stdenv.mkDerivation rec {
pname = "base-demo";
version = "0.0.1";
src = pkgs.requireFile {
name = "${pname}-jar-${version}.jar";
sha256 = "0k0zh3zccz1sgdqgc97glb6i2rb2459lp89j9s6hyvlzpk86sy5z";
message = "Please compile the game with BASE game designer, then rename the output 'game.jar' file to '${pname}-jar-${version}.jar' and add it to store before proceeding.";
};
src = ./.;
dontUnpack = true;
nativeBuildInputs = [base.packages.${system}.default makeWrapper];
nativeBuildInputs = [makeWrapper];
buildPhase = ''
base-editor -bHp $src/project.json -o build
'';
installPhase = ''
mkdir -p $out/bin
mkdir -p $out/share/java
cp build/out/game.jar $out/share/java/base-demo-game.jar
makeWrapper "${jdk17}/bin/java" $out/bin/base-demo \
--add-flags "-jar ${src}" \
--add-flags "-jar $out/share/java/base-demo-game.jar" \
--prefix LD_LIBRARY_PATH : "${xorg.libXtst}/lib" \
--prefix LD_LIBRARY_PATH : "${openjfx17}/lib" \
--prefix LD_LIBRARY_PATH : "${glib.out}/lib" \