-
Notifications
You must be signed in to change notification settings - Fork 165
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Arm64 Build #323
Comments
Ah, damn, I totally missed the path "gluon". Thanks! |
Now I have the built .a llibraries, however, I am not too sure how to link them to bridge when using "make" |
Figured out, just copied the *.a files to /usr/lib and /usr/lib/aarch64-linux-gnu |
Seems "bridge" was built and so far works, but I got some strange errors.
|
You need to update https://github.com/ProtonMail/gluon/blob/dev/internal/parser/package.go with new entries for arm64 so that the Gluon library is linking against these symbols. You may need to use a custom fork of the Gluon repo that you replace in the bridge's go.mod file. |
Thanks for the tips. I am not entirely sure how to update this file fore any new entries? Would it be like this? (removing comments, and other entries)
|
I can't say with certainty. I would expect adding a new entry (see below). would be enough.
We currently don't test on ARM64. I would recommend you checkout the Gluon repository and see if you can run the unit test on your machine with those changes. Once you succeed at doing that it should work with Bridge. Also don't forget to checkout the git sub modules ( |
Thank you very much! |
There are just way too many references to this repository and after updating them they there is always an error ;( |
As @LBeernaertProton said, we don't build/test for ARM64. However, I can imagine it would be pretty straightforward to set up using a go workspace (see https://go.dev/blog/get-familiar-with-workspaces). You'd have a top level directory for the workspace, in which you would clone both the bridge and the gluon repo. Then, you'd make changes as @LBeernaertProton described to build gluon for ARM64. Once that works and the unit tests all pass, you'd just have to edit the go.work to make bridge build against your local gluon version. All going well, you won't have to make any changes to the bridge source code. Also, bridge should automatically find the compiled static archives produced by gluon; you don't have to move them to /usr/lib. |
Hi @sqpp, Thank you for your interest in Bridge. I can just confirm what @LBeernaertProton and @jameshoulahan said, ARM64 is not officially supported, and is not on the short term plans. Because ARM64 build is mostly blocked by the Gluon library, it can make sense to bring this discussion to the Gluon repository. Some has already started under this issue. |
with gluon's dependency for antlr removed, shouldn't support be available soon? once gluon has been updated to 0.15.0? |
Hey @larivierec . Yes that is correct. Gluon v0.15 no longer has any direct C++ dependencies. As soon as we are able, we will release an update which includes this version of Gluon. |
I am so thankful, because I pay for Proton as a Business owner and the only reason I cannot use SMTP on my Raspberry is that ProtonBridge is required. Thank you guys! |
Hi @sqpp and others, we've bumped the For example, to build for Raspberry Pi, make sure you have Go 1.18+ and Then check things work with You can then run the bridge by giving it the NOTE: The |
Just to confirm all works great on Raspberry Pi 4. Thank you once again for this quick fix! |
Glad to hear it :) As such, I'll close this issue. |
confirmed works thanks :) |
I still can't build it for arm64. I'm getting
|
@primalmotion that's strange -- could you please dump the output of |
|
Thanks. Looks like you're trying to build for ARM64 on an AMD64 machine. Cross-compilation is difficult when cgo is involved. If you want to build for ARM64, I'd suggest actually doing the build on the target machine. |
correct. Good ol' CGO... I wanted to build that on my laptop as it's faster than on my phone :) but yeah let me try that |
hum. I'm ending up with the original error of that ticket
Where are these libs coming from? Their names are too generic to find a matching package |
Those come from Gluon. However, as explained in this message, you'll need to ensure you're building against the Please be aware that the |
that worked thanks! |
i just ran into this same issue today, while trying to build the proton-bridge on my PinebookPro:
...and after that i would like to try the same build on my RISC-V box:
so more than happy to help/assist with building/testing/documenting for these two non-intel architectures. |
Hi @mbohun, can you confirm you're on the |
my apologies, i should be more specific: no i was not on the
|
I built this on my PinePhone with the v3 branch and the instructions here: https://github.com/ProtonMail/proton-bridge/blob/master/BUILDS.md, and I'm getting an error in GNOME Online Accounts, complaining about the connection being PLAIN. I am using the correct server, correct username, correct password, and STARTTLS |
PinePhone nice!. @julianfairfax You can change the IMAP security to use SSL instead of STARTTLS. |
That generates still shows the same error. |
@julianfairfax i wonder if you could clarify if that problem happens only with GNOME Online Accounts OR if it happens with all apps (Geary, Thuderbird, mutt, etc.) you tested with proton-bridge ? i tested successfully that on my:
with Geary, HOWEVER i did point Geary running on the PinePhone-s over a ssh tunnel connected to an intel box running the proton-bridge (i was not running proton-bridge on PinePhone-s yet). Basically i am just curious if you could narrow down the problem if it is specific to GNOME Online Accounts or if it is affecting other apps (Geary, Thuderbird, mutt, etc.) too. |
It seems that it works fine when adding the account directly through Geary. So, this is an odd bug, but probably not necessarily related to ARM or even to the bridge itself; could be a GNOME Online Accounts bug. In any case, using it through Geary works for me. |
Given this works now would you be willing to add arm64 builds to flatpak/flathub? |
I second that. Please :) |
The flatpak build is an unofficial distribution of Bridge, we are not the maintainers. We currently have no plans to officially support flatpak. |
@LBeernaertProton given that the build on Flathub currently has 55,000 installs just for the x86 build and considering ProtonMail's focus on privacy/security it would be great if Proton could consider making that an official distribution channel rather than having people get it from unofficial sources. |
@baarkerlounger I personally agree with you and have advocated for this, but sadly at the moment we have "bigger fish to fry". |
@LBeernaertProton would you be willing to make a arm64 .deb available on the official distribution channel? This still refers to it being x86 only due to QT6 dependency https://proton.me/support/operating-systems-supported-bridge |
I'm afraid this is not a priority for us at the moment. |
Hi, I tried building proton-bridge on ARM using the V3-branch and
|
For all the NORMAL people (Linux, PinePhone, arm64, riscv64, etc. users) , i compiled a little HOWTO, more than happy to make that into a proper wiki with a step-by-step guides, so people can easier configure, troubleshoot their setup: i am testing these setup-s on number of diff devices: arm64
riscv64
on a number of diff distros / OS-es:
@julianfairfax i wonder if you could share your simple 5-10 lines step-by-step build of proton-mail bridge on PinePhone? NOTE: i keep adding more info (how to add Proton Calendar, etc. - i just have to find and copy my old notes) |
Just follow the steps here
You can't do that. Proton Calendar is end-to-end encrypted, and there's no bridge. |
@colans Well, yes, but the problem is that i do not own a Librem5, when i wanted to order one (back in early 2021) it was already sold out (and i was not willing to pay like 2000USD for that "Librem5 USA" version; i can ask around, some of the Librem5 owners if they are willing to test these things on their device. |
@julianfairfax i am not entirely sure if i understand you correctly, but previously (apx. 2 months ago) i was able to go in that proton calendar web GUI into some settings and get a calendar URL that i then entered into Mozilla Thunderbird calendar configuration, and it was working OK (well, fine as in: i could view/read the Proton Calnedar entries (created in the proton web GUI in a browser, but i was not able to create/edit/delete any of the calendar entries in Mozilla thuinderbird). |
I might be able to help as I want to get it running on mine. If you still want one, they're very close to shipping parity, being able to ship the regular one on demand after getting through the backlog (later this summer they're saying). |
Current Behavior
When trying to build version
3.0.6
, I am getting this error:Error
What was done
The only missing package/lib was
ninja-build
andlibsecret-1-dev and libsecret-1-0
however, both were installed.The text was updated successfully, but these errors were encountered: