How to Contribute to Lemuroid
Fleetinggit clone https://github.com/Swordfish90/Lemuroid
cd Lemuroid
git submodule update --init --recursive # ~1.1G of libretro
{
description = "Lemuroid — Android emulation app build environment";
inputs = {
android-stack.url = "github:konubinix/devel?dir=flakes/android";
# local dev: android-stack.url = "path:/home/sam/prog/devel/flakes/android";
};
# The dev shell (JDK 17, Gradle 8, the SDK and the aapt2 override) lives
# in android-stack; this flake just re-exports it.
outputs = { android-stack, ... }: {
devShells = android-stack.devShells;
};
}
Build the debug APK
Builds freeBundleDebug (free flavor, cores bundled in). APK lands in
lemuroid-app/build/outputs/apk/freeBundle/debug/lemuroid-app-free-bundle-debug.apk.
nix develop --impure -c ./gradlew assembleFreeBundleDebug
Install on a connected device
Debug build’s applicationId is com.swordfish.lemuroid.debug — it coexists with
the Play Store / F-Droid release (com.swordfish.lemuroid). To switch device,
swap piano for your device alias.
clk android -d piano adb package install ./lemuroid-app/build/outputs/apk/freeBundle/debug/lemuroid-app-free-bundle-debug.apk --flow
Iterate
Edit code, then rebuild + reinstall in one go:
nix develop --impure -c ./gradlew assembleFreeBundleDebug \
&& clk android -d piano adb package install ./lemuroid-app/build/outputs/apk/freeBundle/debug/lemuroid-app-free-bundle-debug.apk --flow
Cleanup (start over)
Wipe the fork; the next clone+tangle from this file rebuilds everything.
cd ~/test/next && rm -rf Lemuroid
Uninstall the debug APK from the device:
clk android -d piano adb shell pm uninstall com.swordfish.lemuroid.debug
Notes linking here
- how to play secret of mana with 3 controllers on android
- how to transform my android phone into a music box in kiosk mode