My ongoing effort of packaging syncthing’s dependencies for fedora is paying off - only three packages are still missing, and nothing is blocking them (right now). Once I have successfully submitted those to the fedora repositories, only the syncthing package itself has still to be reviewed, approved, built and submitted to fedora.
New official fedora packages
In the time between the April 2017 status update and now, some more packages were formally approved, and I’ve submitted them to the fedora repositories:
golang(github.com/ccding/go-stun), PkgDB entry
golang(github.com/cznic/internal), PkgDB entry
golang(github.com/edsrzf/mmap-go), PkgDB entry
golang(github.com/klauspost/reedsolomon), PkgDB entry
golang(github.com/xtaci/kcp-go), PkgDB entry
golang(github.com/xtaci/smux), PkgDB entry
Pending package requests
The three still pending packages are:
Upstream changes to go compiler support
With the recent
0.14.28 release of syncthing, code has been introduced that doesn’t successfully compile with
go 1.6 anymore (because it relies on the
context package, which has only been added to the standard library with
For the moment, upstream developers have provided me with a (quite simple, but a bit ugly) workaround, replacing the usage of
context with the “legacy”
sed -i 's/"context"/"golang.org\/x\/net\/context"/' cmd/syncthing/*.go lib/*/*.go
I don’t know how long this will work, but right now, I can continue to provide syncthing builds for fedora 24 and EPEL7.
Additionally, I don’t think this will be a problem for long, since fedora 24 will be EOL’d in ~2 months anyway, and I hope that the
go compiler on RHEL7 will be updated at some point in the future.