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": {
|
"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": {
|
"flake-utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
@@ -18,6 +42,32 @@
|
|||||||
"type": "github"
|
"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": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1751943650,
|
"lastModified": 1751943650,
|
||||||
@@ -35,6 +85,7 @@
|
|||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"base": "base",
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,12 @@
|
|||||||
|
|
||||||
inputs = {
|
inputs = {
|
||||||
nixpkgs.url = "nixpkgs/nixos-25.05";
|
nixpkgs.url = "nixpkgs/nixos-25.05";
|
||||||
|
|
||||||
flake-utils.url = "github:numtide/flake-utils";
|
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 @ {
|
outputs = inputs @ {
|
||||||
|
|||||||
19
game.nix
19
game.nix
@@ -1,5 +1,6 @@
|
|||||||
{
|
{
|
||||||
pkgs,
|
pkgs,
|
||||||
|
base,
|
||||||
lib,
|
lib,
|
||||||
stdenv,
|
stdenv,
|
||||||
system,
|
system,
|
||||||
@@ -17,20 +18,22 @@ stdenv.mkDerivation rec {
|
|||||||
pname = "base-demo";
|
pname = "base-demo";
|
||||||
version = "0.0.1";
|
version = "0.0.1";
|
||||||
|
|
||||||
src = pkgs.requireFile {
|
src = ./.;
|
||||||
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.";
|
|
||||||
};
|
|
||||||
|
|
||||||
dontUnpack = true;
|
nativeBuildInputs = [base.packages.${system}.default makeWrapper];
|
||||||
|
|
||||||
nativeBuildInputs = [makeWrapper];
|
buildPhase = ''
|
||||||
|
base-editor -bHp $src/project.json -o build
|
||||||
|
'';
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/bin
|
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 \
|
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 : "${xorg.libXtst}/lib" \
|
||||||
--prefix LD_LIBRARY_PATH : "${openjfx17}/lib" \
|
--prefix LD_LIBRARY_PATH : "${openjfx17}/lib" \
|
||||||
--prefix LD_LIBRARY_PATH : "${glib.out}/lib" \
|
--prefix LD_LIBRARY_PATH : "${glib.out}/lib" \
|
||||||
|
|||||||
Reference in New Issue
Block a user