From 8e9c2824cf06f1bfe8b272527d87e1e21ccf6c7b Mon Sep 17 00:00:00 2001 From: Philipp Crocoll Date: Tue, 8 Apr 2025 14:16:39 +0200 Subject: [PATCH] add some files for building on Linux --- src/build-scripts/build-java.sh | 25 +++++++++++++++++++++++++ src/build-scripts/build-native.sh | 6 ++++++ src/build-scripts/linux-build.md | 29 +++++++++++++++++++++++++++++ 3 files changed, 60 insertions(+) create mode 100755 src/build-scripts/build-java.sh create mode 100755 src/build-scripts/build-native.sh create mode 100644 src/build-scripts/linux-build.md diff --git a/src/build-scripts/build-java.sh b/src/build-scripts/build-java.sh new file mode 100755 index 00000000..fb9337a7 --- /dev/null +++ b/src/build-scripts/build-java.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +set -e + +#unset ANDROID_NDK_HOME ANDROID_NDK + +pushd ../java/ + +pushd JavaFileStorageTest-AS +./gradlew assemble +popd + +pushd KP2ASoftkeyboard_AS +./gradlew assemble +popd + +pushd Keepass2AndroidPluginSDK2 +./gradlew assemble +popd + +pushd KP2AKdbLibrary +./gradlew assemble +popd + +popd diff --git a/src/build-scripts/build-native.sh b/src/build-scripts/build-native.sh new file mode 100755 index 00000000..32bb8361 --- /dev/null +++ b/src/build-scripts/build-native.sh @@ -0,0 +1,6 @@ +#!/bin/bash +set -e + +pushd ../java/argon2 +ndk-build +popd diff --git a/src/build-scripts/linux-build.md b/src/build-scripts/linux-build.md new file mode 100644 index 00000000..b9c301e6 --- /dev/null +++ b/src/build-scripts/linux-build.md @@ -0,0 +1,29 @@ +## Setup build environment +* install Android SDK +* install Android NDK +* install dotnet8 + +``` + +#from https://dotnet.microsoft.com/en-us/download/dotnet/thank-you/sdk-8.0.407-linux-x64-binaries +wget https://download.visualstudio.microsoft.com/download/pr/9d07577e-f7bc-4d60-838d-f79c50b5c11a/459ef339396783db369e0432d6dc3d7e/dotnet-sdk-8.0.407-linux-x64.tar.gz +mkdir -p $HOME/dotnet && tar zxf dotnet-sdk-8.0.407-linux-x64.tar.gz -C $HOME/dotnet +export DOTNET_ROOT=$HOME/dotnet +export PATH=$PATH:$HOME/dotnet + +``` + +## Build Keepass2Android + +``` +git clone --recurse-submodules https://github.com/PhilippC/keepass2android.git +cd keepass2android/src/build-scripts +./build-java.sh && ./build-native.sh +cd .. +cp Kp2aBusinessLogic/Io/DropboxFileStorageKeysDummy.cs Kp2aBusinessLogic/Io/DropboxFileStorageKeys.cs +cd keepass2android-app +ln -s Manifests/AndroidManifest_debug.xml AndroidManifest.xml +dotnet workload restore +dotnet restore +dotnet build +```