Your rating: None Average: 5 (1 vote)

Wireguard userspace implementation, packaged for Sailfish.

You can use this standalong but you may want want to install WireGuard for Sailfish (Settings UI) which includes the UI for configuring the VPN (it will pull this package as a dependency).

Source: https://github.com/javitonino/sailfish-wireguard-tools


Application versions: 
File wireguard-go-0.0.20220316-1.aarch64.rpm750.95 KB03/11/2022 - 19:53
File wireguard-go-0.0.20220316-1.i486.rpm851.44 KB03/11/2022 - 19:53
File wireguard-go-0.0.20220316-3.armv7hl.rpm782.24 KB16/12/2022 - 18:19



armorica's picture

I faced the same problem on my Gemini. Tried to fix it via the source, but ran in all sorts of trouble (due to my inexperience). Finally got it to work.

On the device:

  • install the WireGuard for Sailfish (Settings UI) package; this will install the other packages as depencies (incl. the i386 wireguard)

On your PC (mine is linux):

  • install the latest go
  • download wireguard-go
  • set target to armv7
  • build it
  • copy to the device, overwriting the erroneous i386 wireguard
  • import/create and start the tunnel

From my history.


wget https://go.dev/dl/go1.19.4.linux-amd64.tar.gz
tar -xvf go1.19.4.linux-amd64.tar.gz
sudo mv go /usr/local/
cd /usr/local/go/src
git clone https://git.zx2c4.com/wireguard-go
export GOPATH=/usr/local/go
export GOROOT=/usr/local/go
export GOARCH=arm
export GOARM=7
export GOOS=linux
export PATH=$GOPATH/bin:$GOROOT/bin:$PATH
cd wireguard-go/
go build
scp wireguard <user>@<sailfish-device>:/tmp/


devel-su su -
mv /tmp/wireguard /usr/bin/wireguard

Hope this helps!

javitonino's picture

I just released a new version that should have the correct architecture binary. Can you test it? Thanks for your code, it helped identify the silly mistake (an incorrect architecture string).

armorica's picture

Just ran the update on my Gemini and the architecture for the wireguard executable is fine now!

VPN up and running. Thanx!

ade's picture

/usr/bin/wireguard is an Intel 80386 executable inside the armv7hl rpm packages.

javitonino's picture

I just released a new version that should indeed have the correct architecture. Sorry I did not noticed this message earlier!