Use BASE editor CLI interface to build app seamlessly
This commit is contained in:
51
flake.lock
generated
51
flake.lock
generated
@@ -1,5 +1,29 @@
|
||||
{
|
||||
"nodes": {
|
||||
"base": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"flake-utils"
|
||||
],
|
||||
"gradle2nix": "gradle2nix",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1752220426,
|
||||
"narHash": "sha256-4zLXFFq93mh2+1n+c5wPMdSZtRxbRS/d8kxQ/MkiKjE=",
|
||||
"ref": "refs/heads/master",
|
||||
"rev": "20598b65db7941d225095cdc97969fb1104a53d4",
|
||||
"revCount": 600,
|
||||
"type": "git",
|
||||
"url": "https://git.orleander.pl/bartek/base.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://git.orleander.pl/bartek/base.git"
|
||||
}
|
||||
},
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
@@ -18,6 +42,32 @@
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gradle2nix": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"base",
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"base",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1743629487,
|
||||
"narHash": "sha256-MjnEgT9MhO2HknLhrx7GvBRVxdOzSKydIJMyzawe2Fk=",
|
||||
"owner": "tadfisher",
|
||||
"repo": "gradle2nix",
|
||||
"rev": "293ecbdc10d32d9d4bdc2d23213b9be09ce247ee",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tadfisher",
|
||||
"ref": "v2",
|
||||
"repo": "gradle2nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1751943650,
|
||||
@@ -35,6 +85,7 @@
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"base": "base",
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
|
||||
@@ -3,7 +3,12 @@
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "nixpkgs/nixos-25.05";
|
||||
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
|
||||
base.url = "git+https://git.orleander.pl/bartek/base.git";
|
||||
base.inputs.nixpkgs.follows = "nixpkgs";
|
||||
base.inputs.flake-utils.follows = "flake-utils";
|
||||
};
|
||||
|
||||
outputs = inputs @ {
|
||||
|
||||
19
game.nix
19
game.nix
@@ -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" \
|
||||
|
||||
Reference in New Issue
Block a user