Add Nix shell and local 16KB-aligned Olm build
This commit is contained in:
parent
9bc3651341
commit
700289fef9
15 changed files with 499 additions and 51 deletions
60
flake.nix
Normal file
60
flake.nix
Normal file
|
|
@ -0,0 +1,60 @@
|
|||
{
|
||||
description = "Nix dev shell for building matrix-android from the CLI";
|
||||
|
||||
inputs = {
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||
};
|
||||
|
||||
outputs = { self, flake-utils, nixpkgs }:
|
||||
flake-utils.lib.eachDefaultSystem (system:
|
||||
let
|
||||
pkgs = import nixpkgs {
|
||||
inherit system;
|
||||
config.allowUnfree = true;
|
||||
config.android_sdk.accept_license = true;
|
||||
};
|
||||
|
||||
androidComposition = pkgs.androidenv.composeAndroidPackages {
|
||||
platformVersions = [ "31" "35" ];
|
||||
buildToolsVersions = [ "30.0.2" "34.0.0" "35.0.0" ];
|
||||
includeEmulator = false;
|
||||
includeNDK = true;
|
||||
includeSources = false;
|
||||
includeSystemImages = false;
|
||||
};
|
||||
|
||||
androidSdk = androidComposition.androidsdk;
|
||||
androidSdkRoot = "${androidSdk}/libexec/android-sdk";
|
||||
in
|
||||
{
|
||||
devShells.default = pkgs.mkShell {
|
||||
packages = [
|
||||
pkgs.gradle
|
||||
pkgs.jdk17
|
||||
androidSdk
|
||||
];
|
||||
|
||||
ANDROID_HOME = androidSdkRoot;
|
||||
ANDROID_SDK_ROOT = androidSdkRoot;
|
||||
JAVA_HOME = pkgs.jdk17.home;
|
||||
|
||||
shellHook = ''
|
||||
export ANDROID_USER_HOME="$PWD/.android"
|
||||
export GRADLE_USER_HOME="$PWD/.gradle"
|
||||
export PATH="$ANDROID_SDK_ROOT/platform-tools:$PATH"
|
||||
export GRADLE_OPTS="-Dorg.gradle.project.android.aapt2FromMavenOverride=$ANDROID_SDK_ROOT/build-tools/35.0.0/aapt2"
|
||||
|
||||
cat > local.properties <<EOF
|
||||
# Generated by nix develop.
|
||||
sdk.dir=$ANDROID_SDK_ROOT
|
||||
EOF
|
||||
|
||||
echo "matrix-android dev shell"
|
||||
echo " JAVA_HOME=$JAVA_HOME"
|
||||
echo " ANDROID_SDK_ROOT=$ANDROID_SDK_ROOT"
|
||||
echo " Build with: gradle assembleDebug"
|
||||
'';
|
||||
};
|
||||
});
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue