Age | Commit message (Collapse) | Author |
|
* PROBLEM: the build fails on gitlab in a debian-based docker container
* BUT: i (@aguestuser) have a recently-achieved passing build on a
debian laptop
* ATTEMPTED SOLUTION: construct a dockerfile that matches my local
configuration as precisely as possible
* PROGRESS: the build gets further than it did before -- getting part of
the way through the `buildNative` gradle script before failing
* REMAINING FAILURE: several arm64 cross-compile steps in the
`ndk-build` step fail because they depend on
[neon](https://developer.android.com/ndk/guides/cpu-arm-neon.html):
```shell
[arm64-v8a] Compile : crypto_static <= aesv8-armx-64.S
openssl/crypto/aes/asm/aesv8-armx-64.S:35:2: error: instruction requires: neon
eor v0.16b,v0.16b,v0.16b
^
openssl/crypto/aes/asm/aesv8-armx-64.S:36:2: error: instruction requires: neon
ld1 {v3.16b},[x0],#16
^
openssl/crypto/aes/asm/aesv8-armx-64.S:38:2: error: instruction requires: neon
ld1 {v1.4s,v2.4s},[x3],#32
```
* PROPOSED NEXT STEPS:
* consult team to see if there's any collective wisdom about `neon`
* look for ways to analyze diff of c dependencies in local machine
v. docker instance
* consider using ubuntu or debian:sid as the base image for the
android container?
|
|
* add detailed instructions on installing and compiling
* provide workarounds for gotchas setting up emulator on debian
* offer instructions for building in docker
side-effects:
* update build tools & gradle version
* fix indentation in build.gradle
* comment out tests in `TestLogFileHandler` causing `build` to break (and provide justification)
|
|
- Android gradle plugin to 1.5.0
- Gson to 2.4
- Support annotations to 23.2.1
- Robotium-solo to 5.5.4
|
|
|
|
|
|
Warn about the needed libraries for 64 bit systems.
|
|
|
|
|
|
Riseup's EE certificate expired (EE = End-Entity, the commercial
certificate signed by the issuer), and we weren't able to fetch
provider.json because the pin wasn't valid.
This problem needs to be avoided in the future, using
HKPK (https://tools.ietf.org/html/rfc7469), which Micah's implementing
on Riseup.
Switching from build types from flavors enables us to run tests against
production apk, not just debug. I didn't detect this pinning problem
because tests were run only against the debug apk, which trusted
preseeded providers by default (thus bypassing pinning issue).
|
|
|
|
|
|
ics-openvpn is now officially on GitHub, and they track openssl and
openvpn as submodules, so it's easier to update everything. Just a git
submodule update --recursive.
I've also set up soft links to native modules from ics-openvpn in app,
so that we don't copy files in Gradle (which was causing problems with
the submodules .git* files, not being copied). That makes the repo
cleaner.
|
|
|
|
Sometimes, the emulator is so slow (I wish genymotion was open
source...) that even though everything's going OK tests fail because
they don't wait enough.
|
|
Updated butterknife, dagger, renderers, fabbuton and gson, as well as
gradle plugin.
|
|
Tested with physical Galaxy Young S6310.
|
|
This fixes the "task cleanTest is not found"
|
|
Next step: a bit of UI design, removing the switch.
|
|
Using AndroidPinning library from Moxie, I make sure the provider.json
file Bitmask downloads is fetched from a pinned https connection, so
that the api certificate fingerprint is the good one.
|
|
Calyx fails.
|
|
Improved build.gradle script.
|
|
|
|
|
|
|
|
|
|
|
|
Gradle doesn't invoke updateIcsOpenVpn task unless the task is
explicitly invoked. I needed to put all the related tasks into the
configuration phase, rather than on the execution one.
|
|
|
|
Material design!
It still doesn't run properly on my tablet, openvpn keeps getting down
and exiting.
|
|
|
|
|
|
|
|
|
|
|
|
F-Droid strips the signingConfigs section from build.gradle, so
buildTypes mustn't check if there is a release signing configuration.
|
|
Fixed notifications too (forgot to do it in another branch, it's #5964).
|
|
|
|
|
|
I've also fixed a simple test that wasn't letting the suite to finish
correctly.
|
|
- Build tools update to latest version (20).
- testPackageName is correctly calculated by default, doing nothing.
- support library needs some tweaks to support pre Android L versions.
|
|
This happens when you've used a eip enabled provider, and then you
switch to a non eip enabled one (e.g., choosing demo.bitmask.net and
then switching to cdev.bitmask.net in their current configurations).
I've also disabled the build task dependency on updating
ics-openvpn. It's causing problems, while not fixing anything.
|
|
|
|
Forgot to add the menu for the log.
Now we'll strive to fix se.leap.bitmaskclient problems: first compilation, then functionality.
|
|
api folder and aidl files aren't needed for us. They are used for
external apps that want to use ics-openvpn as an already installed
package, while what we want is to avoid the installation of ics-openvpn
including it (refactored) in bitmask android.
|
|
|
|
|
|
Functionality copied to the Release build.
|
|
release apk is not working ok with proguard.
|
|
|
|
You have to edit a gradle.properties file with the following structure:
storeFileProperty=fullPath
storePasswordProperty=store password without quotation marks
keyAliasProperty=key alias without quotation marks
keyPasswordProperty=key password without quotation marks
|