Syncthing has stopped working on Pinebook Pro since update

Hello,

I recently updated Manjaro KDE on my Pinebook Pro and now Syncthing refuses to start.

Does anyone else have the same problem?

Thx

What error do you get when launching it from terminal?

This is what I get:

[quadrantids@PBP ~]$ syncthing
panic: qtls.ClientSessionState not compatible with tls.ClientSessionState

goroutine 1 [running]:
github.com/lucas-clemente/quic-go/internal/handshake.init.2()
github.com/lucas-clemente/quic-go@v0.17.3/internal/handshake/unsafe.go:26 +0x1d0

Seems the syncthing package was last updated on August 19th, which is before the new GCC and libraries where updated. So my guess is that syncthing just needs to be rebuilt against the new libraries.

OK. Thx.
So does this mean I wait for the maintainer to do this?

Either that or find the PKGBUILD and build it yourself. :slight_smile:

I think I’ll try and be patient.

Thank you!

I’m not sure I know how to do this.

Is it complicated?

  1. Download these files: syncthing (aarch64) | Package Files | Arch Linux ARM
  2. Edit the PKGBUILD to include aarch64 in the arch=() line.
  3. Import the GPG key: 37C84554E7E0A261E4F76E1ED26E6ED000654A3E into your keyring.
  4. Run makepkg -sci in the folder with the PKGBUILD.

But I see it depends on GO, so maybe it’s incompatibility with the new GO 1.15, which would probably require a new release from SyncThing.

Did this ever get resovled?

It is an incompatiblity with go-1.15 + quic. Syncthing developers say to use their binaries or downgrade:

Here’s a link that I can’t post: forum.syncthing[dot net]/t/syncthing-wont-start-qtls-clientsessionstate-not-compatible-with-tls-clientsessionstate/15520

So if I download the ARM64 binary from Syncthing, how do I install it?

I heard that SyncThing 1.9.0 from the repo, should work with the new Go binaries.
Have you tried that?

It’s in arm-testing/arm-unstable.

I’m not sure I understand where to find this.
I’ve opened Add/Remove Software and under AUR I can see syncthing-bin 1.9.0.2. Is this what I need to install by clicking on the Build button?

If you don’t want to switch branches, you can use the AUR one, yes.

The AUR one returns the following error:
“Failed to build syncthing-bin”.

I tried changing branches to testing with the following command:
sudo pacman-mirrors --api --set-branch {testing}
but I get an error message “invalid choice”.

I’ve said it before. The branches on ARM are different than on x86.
Also pacman-mirrors does not support switching to arm branches with the command. You need to set it in the /etc/pacman-mirrors.conf file, which I tell people about in each of my update posts.

This is not going to help us. You need to tell us the entire error.
But it looks like it does not really support “aarch64”, since this is wrong for it:

case "$CARCH" in
	arm*) _pkgarch="arm"
		sha256sums+=('6d71bb3ffbbc5409110bd365bbf6c3dcecb94802812034c1315985f4317528ba')
		;;
	i686) _pkgarch="386"
		sha256sums+=('9042ccf06896448b626701e27ef7bdb054c87698f0732d75d7cb40c0fafee74d')
		;;
	x86_64) _pkgarch="amd64"
		sha256sums+=('b28d4d1451799d04c063271154935f92e797eea9b3caa789db95f1e805d0854c')
		;;
esac

Can confirm… works.