From 28339478815bf489b7855fb1f08f5cddc25ac699 Mon Sep 17 00:00:00 2001 From: Licaon_Kter Date: Fri, 1 May 2020 10:45:14 +0300 Subject: [PATCH] Newapp: ProtonVPN --- metadata/ch.protonvpn.android.yml | 69 +++++++++++++++++++ .../ch.protonvpn.android/openvpn-build.patch | 41 +++++++++++ 2 files changed, 110 insertions(+) create mode 100644 metadata/ch.protonvpn.android.yml create mode 100644 metadata/ch.protonvpn.android/openvpn-build.patch diff --git a/metadata/ch.protonvpn.android.yml b/metadata/ch.protonvpn.android.yml new file mode 100644 index 0000000000..dcda4dc803 --- /dev/null +++ b/metadata/ch.protonvpn.android.yml @@ -0,0 +1,69 @@ +AntiFeatures: + - NonFreeNet +Categories: + - Connectivity + - Internet +License: GPL-3.0-only +AuthorEmail: admin@protonvpn.com +WebSite: https://protonvpn.com/ +SourceCode: https://github.com/ProtonVPN/android-app +IssueTracker: https://github.com/ProtonVPN/android-app/issues + +RepoType: git +Repo: https://github.com/ProtonVPN/android-app.git + +Builds: + - versionName: 2.1.3 + versionCode: 20103 + commit: 2.1.3 + subdir: app + submodules: true + patch: + - openvpn-build.patch + gradle: + - prod + output: build/outputs/apk/prod/release/ProtonVPN-*-prod-release-unsigned.apk + rm: + - app/src/main/jniLibs/x86/* + - app/src/main/jniLibs/x86_64/* + - app/src/main/jniLibs/armeabi-v7a/* + - app/src/main/jniLibs/arm64-v8a/* + - openvpn/src/main/cpp/mbedtls/tests + - openvpn/src/main/cpp/openvpn3/test/unittests + - strongswan/testing/hosts/alice/etc/raddb/certs/random + prebuild: + - sed -i -e '/triple/d' -e '/play\ {/,+4d' build.gradle + - pushd ../strongswan + - $$NDK$$/build/tools/make-standalone-toolchain.sh --arch=arm --platform=android-21 + --install-dir=/tmp/toolchain + - export PATH=/tmp/toolchain/bin:$PATH + - git clone git://git.strongswan.org/android-ndk-boringssl.git -b ndk-static + src/frontends/android/app/src/main/jni/openssl + - ./autogen.sh + - ./configure + - make dist + - pushd src/frontends/android/app + - sed -i -e '/android\ {/alintOptions\ {abortOnError\ false}' build.gradle + - gradle assembleRelease + - popd + - popd + - cp -r ../strongswan/src/frontends/android/app/src/main/libs/* src/main/jniLibs/ + - rm -fr ../strongswan/src/frontends/android/app/src/main/libs/* + - rm -fr ../strongswan/src/frontends/android/app/build + - pushd .. + - gradle openvpn:assemble + - rm -fr openvpn/build/intermediates + - rm -fr openvpn/build/kotlin + - rm -fr openvpn/build/tmp + - rm -fr openvpn/.cxx + - popd + scanignore: + - app/src/main/jniLibs/ + ndk: r20b + gradleprops: + - buildUniversalApk + +AutoUpdateMode: None +UpdateCheckMode: Tags +CurrentVersion: 2.1.3 +CurrentVersionCode: 20103 diff --git a/metadata/ch.protonvpn.android/openvpn-build.patch b/metadata/ch.protonvpn.android/openvpn-build.patch new file mode 100644 index 0000000000..f633ce4143 --- /dev/null +++ b/metadata/ch.protonvpn.android/openvpn-build.patch @@ -0,0 +1,41 @@ +--- a/openvpn/build.gradle.kts ++++ b/openvpn/build.gradle.kts +@@ -102,9 +102,6 @@ + } + } + +- signingConfigs { +- create("release") {} +- } + + lintOptions { + enable("BackButton", "EasterEgg", "StopShip", "IconExpectedSize", "GradleDynamicVersion", "NewerVersionAvailable") +@@ -114,7 +111,6 @@ + + buildTypes { + getByName("release") { +- signingConfig = signingConfigs.getByName("release") + } + } + +@@ -139,20 +135,7 @@ + } + } + +-// ~/.gradle/gradle.properties +-if (project.hasProperty("keystoreFile") && +- project.hasProperty("keystorePassword") && +- project.hasProperty("keystoreAliasPassword")) { +- android.signingConfigs.getByName("release") { +- storeFile = file(project.properties["keystoreFile"] as String) +- storePassword = project.properties["keystorePassword"] as String +- keyPassword = project.properties["keystoreAliasPassword"] as String +- keyAlias = project.properties["keystoreAlias"] as String +- } +-} else { + android.buildTypes.getByName("release").signingConfig = null +-} +- + + /* Hack-o-rama but it works good enough and documentation is surprisingly sparse */ +