Fry3DX/android/shell.nix
Nexoniarz f6f5e5f288 Fry3DX 0.5: builds for Windows, Linux and Android, a phone layout, Apache 2.0
- Apache License 2.0
- Windows: cross-built with clang-cl (cmake --preset windows), a window
  program with its icon; Linux: a portable preset (SDL and the C++
  library inside); Android: android/build_apk.py makes the APK
- tools/package.py packs the downloads; a GitHub workflow builds all
  three and makes a release for a v* tag
- A phone layout (fry_touch, on by default on Android): the UI drawn
  bigger, panels when asked for, a bar of big buttons, one finger to
  turn the view, two to move and pinch, a long press for a right-click;
  files through the phone's file picker
- Settings and autosaves now in a Nexoniarz folder (copied over once)
- README rewritten, the website shows the downloads and the phone

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01NMSrd5oe1GpUD7E6d825KP
2026-10-19 22:05:01 +02:00

20 lines
883 B
Nix

# Android build environment for Fry3DX: SDK (platform 35, build-tools), NDK, adb, a JDK.
# nix-shell android/shell.nix --run "python3 android/build_apk.py"
{ pkgs ? import <nixpkgs> { config = { android_sdk.accept_license = true; allowUnfree = true; }; } }:
let
android = pkgs.androidenv.composeAndroidPackages {
platformVersions = [ "35" ];
buildToolsVersions = [ "35.0.0" ];
includeNDK = true;
ndkVersions = [ "27.2.12479018" ];
includeEmulator = false;
includeSystemImages = false;
};
sdk = android.androidsdk;
in pkgs.mkShell {
packages = [ sdk pkgs.jdk17 pkgs.cmake pkgs.ninja pkgs.python3 pkgs.glslang pkgs.shaderc pkgs.zip pkgs.unzip ];
ANDROID_HOME = "${sdk}/libexec/android-sdk";
ANDROID_SDK_ROOT = "${sdk}/libexec/android-sdk";
ANDROID_NDK_ROOT = "${sdk}/libexec/android-sdk/ndk/27.2.12479018";
JAVA_HOME = "${pkgs.jdk17.home}";
}