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