Trying to install on ARM

Running Manjaro Linux on Arm64 architecture.

Tried installing via AUR, and via building from source - fails in the same spot every time.

.
-> Building bisq…

Configure project :
Pricenode: Skipping spot provider tests

Task :clean
Task :apitest:clean UP-TO-DATE
Task :assets:clean UP-TO-DATE
Task :cli:clean UP-TO-DATE
Task :common:clean UP-TO-DATE
Task :core:clean UP-TO-DATE
Task :daemon:clean UP-TO-DATE
Task :desktop:clean UP-TO-DATE
Task :inventory:clean UP-TO-DATE
Task :monitor:clean UP-TO-DATE
Task :p2p:clean UP-TO-DATE
Task :pricenode:clean UP-TO-DATE
Task :proto:clean UP-TO-DATE
Task :relay:clean UP-TO-DATE
Task :seednode:clean UP-TO-DATE
Task :statsnode:clean UP-TO-DATE
Task :assets:compileJava
Task :assets:processResources
Task :assets:classes
Task :assets:jar
Task :proto:extractIncludeProto
Task :proto:extractProto
Task :proto:generateProto FAILED

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ‘:proto:generateProto’.

Could not resolve all files for configuration ‘:proto:protobufToolsLocator_grpc’.
Could not find protoc-gen-grpc-java-linux-aarch_64.exe (io.grpc:protoc-gen-grpc-java:1.25.0).
Searched in the following locations:
https://repo.maven.apache.org/maven2/io/grpc/protoc-gen-grpc-java/1.25.0/protoc-gen-grpc-java-1.25.0-linux-aarch_64.exe

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

  • Get more help at NEW USERS CAN ONLY PUT 2 LINKS IN A POST EDITFUCK

BUILD FAILED in 8s
22 actionable tasks: 7 executed, 15 up-to-date
==> ERROR: A failure occurred in build().
Aborting…

When I go to the following link in a browser: https://repo.maven.apache.org/maven2/io/grpc/protoc-gen-grpc-java/1.25.0/

Can clearly see that there is no aarch64 version of Protobuf available (p.s. I have Protobuf installed ‘protoc --version’ in terminal displays ‘libprotoc 3.12.4’).

So I go to my bisq git clone folder, edit the ‘build.gradle’ file:
Changing: grpcVersion = ‘1.25.0’
To: grpcVersion = ‘1.26.0’
Because I can see the mirror above does have an aarch64 version of protobuf there… New error:

Pricenode: Skipping spot provider tests

FAILURE: Build failed with an exception.

  • What went wrong:
    A problem occurred configuring project ‘:desktop’.

Checksum failed for com.google.code.gson:gson:233a0149fc365c9f6edbd683cfe266b19bdc773be98eabdaf6b3c924b48e7d81

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

  • Get more help at NEW USERS CAN ONLY PUT 2 LINKS IN A POST EDITFUCK

Tried changing to the latest grpc version too as I can see that has support for aarch64 Protobuf, similar checksum error.

I can apply a little bit of common sense, but I’m no expert.

Has anyone managed to install Bisq on an ARM64 device lately?

Thanks

That seems weird if you are not in Windows universe no exe should exit
.

Yeah you would think that but .exe is just the file name, and the installation is being handled by ‘Gradle’ which probably does know how to interpret .exe’s.

Nobody has got this working on an ARM device lately then? Going to have another go tonight.

It’s an old topic, but probably a similar reason, that the checksum is wrong for some reason.

So Any ideas? I am trying to install this on Ubuntu 18.04. Running into same issue. I wonder if this is an issue with Gradle? Or if the issue is with the google code? Does the Bisq development team read this forum? Maybe this is a simple fix or configuration with the build to not check checksum. New to gradle and builds with gradlew wrapper, seems to me the local programs on my machine aren’t used, other than JRE, and the wrapper tries to build a consistent env for the Bisq build. I bet the Bisq team haven’t tried to build on aarch64 yet. :wink:

I tried deleteing the .gradle folders in my home and project directories to see if that might fix the checksum, to no avail.

Ok, I read up a bit on the Gradle docs from the help.gradle.com site. Seems that we can run:
./gradlew --dependency-verification lenient build

this command should let us get past any checksum errors. While still pointing to any files that fail checksum, so we can clear them later. The only problem is these docs are for Gradle v 6.7. Our wrapper is Gradle 5.6 which has no such abilities.

I think one option ‘might’ be to upgrade the gradlew wrapper to 6.7 v .jar
Another would be wait for the Bisq devs to do this? :smile:
Or, perhaps run this build with a ‘working’ 6.7 or better Gradle build on our aarch64 machines.

I haven’t checked yet, in the build.gradle file for this build, but is it just pointing to the google repository? Then maybe it could be pointed to the Maven or the other J* repositories to check for checksum error?

Ok, I’m going to try pointing the build file from the jcenter repository to mavenCentral,
this should fix this checksum error. The gradle-witness.gradle file in the projects gradle/witness/ folder, defines the checksums for the dependency files for this gradlew wrapper build. I will also update probably have to go to the maven repository and download each .jar file to then test grab their checksums and update each grpc related files checksum definition in this gradle-witness.gradle file. Since we had to upgrade to the newer grpc from 1.25 to 1.26 to fix the original error. I’ll give this a try and see if this fixes the build.