Freenet on Pinebook pro
#1
Hello, has anyone managed to get freenet to work on the pinebook pro? It's a java program, normally it should work fine. But when launching the program I got the following error message:

Code:
    Freenet do not start on Pinebook pro. No wrapper for linux-aarch64-32.

Your java executable at /bin/java seems suitable
Unable to locate any of the following binaries:
/home/regivanx/.config/freenet/./bin/wrapper-linux-aarch64-32
/home/regivanx/.config/freenet/./bin/wrapper
Starting Freenet 0.7...

Let's start the node without the wrapper, you'll have to daemonize it yourself.
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/jna/Platform
at freenet.support.ProcessPriority.enterBackgroundMode(ProcessPriority.java:63)
at freenet.node.NodeStarter.main(NodeStarter.java:264)
Caused by: java.lang.ClassNotFoundException: com.sun.jna.Platform
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:636)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:182)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
... 2 more


I submitted a bug to https://freenet.mantishub.io/view.php?id=7149 but no news since. Would someone be willing to help me install freenet on the pinebook pro?
Pinebook Pro, standard config (Manjaro)
  Reply
#2
Short version: Edit ~/Freenet/run.sh.
Change jna-4.2.2.jar and jna-platform-4.2.2.jar to jna-4.5.2.jar and jna-platform-4.5.2.jar both times that they appear, and then it seems to run.

Code:
$ sed -i 's/4.2.2/4.5.2/g' run.sh

---
It doesn't support aarch64.

There is an AUR package, https://aur.archlinux.org/packages/freenet/

According to that, java-service-wrapper is a required dependency.

https://aur.archlinux.org/packages/java-...e-wrapper/

Even though the PKGBUILD for java_service_wrapper includes aarch64, it doesn't actually build properly on aarch64 without modification.

Code:
[[ "$CARCH" = @(x86_64|aarch64) ]] && _bits=64    || _bits=32
[[ "$CARCH" = arm*              ]] && _arch=armhf || _arch=x86

^ that part is obviously wrong, and causes it to detect the platform as x86 64-bit. It seems to build if I hardcode _bits=64 ; _arch=armhf, using the 64-bit armhf makefile.

The wrappers are supposed to be in ~/Freenet/bin
It doesn't include a wrapper for aarch64 or armhf 64-bit.
java-service-wrapper installs to a system directory (/usr/share/java) so it doesn't fix that.

The error messages are coming from ~/Freenet/run.sh

If it can't find the wrappers, it falls back to a command line with a hardcoded classpath that includes jna and jna-platform. This code obviously doesn't get tested often because, while both of those are bundled and in the same directory, the hardcoded version number is wrong, so it can't find them.

The error message 'Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/jna/Platform' is the direct result of that.

wrapper.conf uses the proper version numbers; they forgot to update the fallback.
  Reply
#3
Thanks a lot. Freenet starts with the patch, but cannot load WebOfTrust. It is therefore impossible to send encrypted emails. No doubt there is more work to be done to get freenet running on ARM, as illustrated by the android freenet application, which also cannot send email.

I want to pay someone to run Freenet on Pinebook pro. I submitted a bug on mantishub, but no news since. The IRC and the mailing list no longer work.

Can you help me contact the Freenet team? I don't know how to reach them. Why are they not responding to the bug on mantishub? However, the repository is active. Not very good communication to report bugs or offer donations...
Pinebook Pro, standard config (Manjaro)
  Reply
#4
I don't know any freenet people to try emailing, but I didn't see WebOfTrust fail to load.

I went to Configuration > Plugins in the web interface (http://127.0.0.1:8888/plugins/) and loaded the official Freemail and WebOfTrust plugins, then to the Community tab to create a WebOfTrust identity and the Freemail tab to create an account, and nothing failed to load so far.

The official Freenet site has a Donate page, with contact email addresses at the bottom. I can't check whether the IRC channel on libera.chat works because it's blocking my VPN. The links in the default Freemail welcome email are way out of date; starting point should be the current Documentation page.

There are 3,400 open issues, and many of them don't have any comments. I might guess that they haven't had the time, or they don't have the hardware.

It looks extremely slow. Community > Statistics reports 3923 non-own identities, and it's downloading 51.576107 per hour. So about 76 hours for WoT to sync. I need to solve "about 10 captchas" to get to a basic level of trust, and so far it's gotten around to finding me 3.

I would be careful about relying on anything for anonymity or privacy that's still in alpha and may have been largely abandoned for years.
  Reply
#5
For donations, I don't have paypal or bitcoin, and I don't want to use them. I would prefer to pay by SEPA (Europe) transfer. In addition, some free software teams offer to accept payments to develop a special feature or to fix a particular bug. It is also a way of earning a living by developing free software. This is what I would like to do.

The support@freenetproject.org mailing list long dead. The last time I wrote to them to offer them money, a completely unknown guy answered me to tell me that he did not understand what I wanted to talk about, then after talk a bit he remembered that he signed up for the freenet mailing list a long time ago.

I will try press@freenetproject.org, hoping that this box is not dead, too.

--

To come back to web of trust, it doesn't work for me. Do you have any idea where the problem is?

I enclose the output of the terminal after launching ./run.sh start

Code:
Could not load plugin WebOfTrust : java.lang.reflect.InaccessibleObjectException: etc.

Other than Freenet, I don't know how to send really secure emails. PGP allows messages to be encrypted, but an attacker knows who is writing to whom, when, and can easily find the correspondents or block their communication, if they cannot read it.


Attached Files
.txt   freenet.out.txt (Size: 11.69 KB / Downloads: 377)
Pinebook Pro, standard config (Manjaro)
  Reply
#6
We are using different Java VM versions to run it.

Yours:
Initializing Node using Freenet Build #1492 rbuild01492 and freenet-ext Build #29 rv29 with N/A JVM version 17.0.1 running on aarch64 Linux 5.15.7-1-MANJARO-ARM

Mine:
Initializing Node using Freenet Build #1492 rbuild01492 and freenet-ext Build #29 rv29 with Oracle Corporation JVM version 11.0.13 running on aarch64 Linux 5.7.19-1-MANJARO-ARM

The code contains unfixed illegal reflective accesses which Java used to allow. Background reading: Reflection vs Encapsulation – Stand Off in the Java Module System

JVM 17 no longer supports --illegal-access=warn or --illegal-access=permit, which was the prior default. So the code now breaks.

So what you can do is,
$ sudo pacman -S jre11-openjdk-headless jre11-openjdk jdk11-openjdk

and then,
$ sudo archlinux-java set java-11-openjdk

So that you will have both OpenJDK 11 and OpenJDK 17 installed, with OpenJDK 11 selected as the active Java environment.

Until the Freenet developers tighten up the formerly legal reflective accesses, that's the workaround.

In addition to Bitcoin and Paypal, they also support major credit cards via their Bountysource page. I've heard of SEPA but it's not really used outside the EU. I wonder if Bountysource still pays through to them, or if they just sit on the money.
  Reply
#7
Thanks a lot! WoT works, now.
Pinebook Pro, standard config (Manjaro)
  Reply
#8
Hi!

The problem is corrected at "Freenet 0.7.5 version no 1494 rbuild01494": no more file editing is needed to run Freenet and WoT.

However, you still need to manually add the wrapper-linux-aarch64-32 file to run Freenet in the wrapper.

Download page of the Java Service Wrapper.

Select "Linux ARM (AArch64)" line, "Community" column.

The file is located in the "bin" folder of the compressed file. Unzip it into Freenet's bin directory, and rename it "wrapper-linux-aarch64-32".

Restart Freenet.

The bug is still open on mantishub, but it is presumably being fixed.
Pinebook Pro, standard config (Manjaro)
  Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Upgrading Armbian from v24.2.1 gnome, breaks pinebook pro Sb2024 0 191 11-10-2024, 02:50 PM
Last Post: Sb2024
  Pinebook pro won't boot after bootloader installation jwensouls 4 1,140 08-21-2024, 04:17 AM
Last Post: KC9UDX
  [Pinebook Pro/Mobian/XFCE4] can fix touch or screen in greeter not both SynthGal 0 451 05-31-2024, 09:42 AM
Last Post: SynthGal
  Debian on Pinebook Pro u974615 7 3,112 03-31-2024, 10:11 AM
Last Post: u974615
  Pinebook Pro upgrading from the factory image yamsoup 12 4,584 02-22-2024, 04:02 PM
Last Post: tllim
  Help installing Manjaro on eMMC of Pinebook Pro pine4546464 4 3,382 12-13-2023, 07:22 PM
Last Post: trillobite
  Need Help Recovering Manjaro /boot Contents on Pinebook Pro calinb 6 3,679 12-11-2023, 03:47 AM
Last Post: calinb
  Gentoo on Pinebook Pro RELEASE jannik2099 54 105,828 12-08-2023, 11:25 PM
Last Post: tllim
  Boot Order in Pinebook Pro food 8 2,995 11-23-2023, 07:37 AM
Last Post: KC9UDX
  PineBook Pro seems to go to deep sleep, but doesn't wake up pogo 11 7,736 08-31-2023, 04:20 PM
Last Post: TRS-80

Forum Jump:


Users browsing this thread: 4 Guest(s)