mirror of
https://github.com/nix-packages/nixapks.git
synced 2025-11-08 19:46:11 +01:00
add ankidroid
This commit is contained in:
parent
69a5e88b27
commit
a3d9d36ed4
1 changed files with 72 additions and 0 deletions
72
apks/an/ankidroid/package.nix
Normal file
72
apks/an/ankidroid/package.nix
Normal file
|
|
@ -0,0 +1,72 @@
|
|||
{
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
android-sdk = inputs.android-nixpkgs.sdk.${pkgs.stdenv.hostPlatform.system} (
|
||||
sdkPkgs: with sdkPkgs; [
|
||||
build-tools-35-0-0
|
||||
cmdline-tools-latest
|
||||
platform-tools
|
||||
platforms-android-35
|
||||
]
|
||||
);
|
||||
gradle-init-script =
|
||||
(import inputs.gradle-dot-nix {
|
||||
inherit pkgs;
|
||||
gradle-verification-metadata-file = ./verification-metadata.xml;
|
||||
public-maven-repos = ''
|
||||
[
|
||||
"https://dl.google.com/dl/android/maven2",
|
||||
"https://repo.maven.apache.org/maven2",
|
||||
"https://plugins.gradle.org/m2",
|
||||
"https://maven.google.com",
|
||||
"https://www.jitpack.io"
|
||||
]
|
||||
'';
|
||||
}).gradle-init;
|
||||
in
|
||||
pkgs.stdenv.mkDerivation rec {
|
||||
name = "ankidroid-${version}.apk";
|
||||
version = "2.22.3";
|
||||
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "ankidroid";
|
||||
repo = "Anki-Android";
|
||||
rev = "v${version}";
|
||||
hash = "";
|
||||
};
|
||||
|
||||
JDK_HOME = "${pkgs.jdk21.home}";
|
||||
ANDROID_HOME = "${android-sdk}/share/android-sdk";
|
||||
ANDROID_NDK_ROOT = "${ANDROID_HOME}/ndk-bundle";
|
||||
|
||||
nativeBuildInputs = [
|
||||
android-sdk
|
||||
pkgs.gradle_8
|
||||
pkgs.jdk21
|
||||
pkgs.git
|
||||
];
|
||||
|
||||
preBuild = ''
|
||||
export TMPDIR=$(mktemp -d)
|
||||
export GRADLE_USER_HOME=$TMPDIR/.gradle
|
||||
# Ensure AAPT2 has a writable directory
|
||||
mkdir -p $TMPDIR/aapt2
|
||||
export AAPT2_DAEMON_DIR=$TMPDIR/aapt2
|
||||
# Increase JVM heap space for Gradle
|
||||
export GRADLE_OPTS="-Xmx6144m -XX:MaxMetaspaceSize=1024m"
|
||||
'';
|
||||
|
||||
buildPhase = ''
|
||||
gradle assembleRelease --info -I ${gradle-init-script} \
|
||||
--offline --full-stacktrace -x lint -x lintDebug -x lintRelease \
|
||||
-Dorg.gradle.project.android.aapt2FromMavenOverride=$ANDROID_HOME/build-tools/35.0.1/aapt2 \
|
||||
-Dfile.encoding=utf-8
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
cp AnkiDroid/build/outputs/apk/release/AnkiDroid-release-unsigned.apk $out
|
||||
'';
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue