pkgsrc/net/syncthing/Makefile
triaxx d2f1612e7f syncthing: update to 1.2.0
syncthingandroid is ready on https://f-droid.org/

upstream changes:
-----------------
Important notes

    This release does not interoperate with Syncthing 0.14.45 or older.

    This release adds QUIC with NAT traversal as a new transport protocol. TCP
    is usually more performant and remains the preferred way of connection when
    possible.

    This release adds automatic crash reporting. See
    https://docs.syncthing.net/users/crashrep.html for details.

    This release makes large / variable block size the only available mode of
    operation; small / fixed blocks are deprecated. See
    https://docs.syncthing.net/advanced/folder-uselargeblocks.html for details.

    This release reverts the version naming change in #4586 (v1.1.4). Versions
    are now named with the time of their archiving, and the file modification
    time is unchanged when archiving. An exception to this is the "Trashcan"
    versioner which does not modify the name - instead it does set the file
    modification time the time of archiving.

Bugfixes

    #4170: panic: bug: ClusterConfig called on closed or nonexistent connection
    #5609: Filesystem watching failed when parent folder is not listable
    #5652: Connection error after closing failed items list and opening another list
    #5765: Verioner cleanup looks at the wrong time
    #5766: Support bundle doesn't include errors list, instead printing an error
    #5770: Scan failure blocks "Rescan" button
    #5777: Spurious need to "revert" nonexistent changes with Receive Only folder on Android
    #5780: Panic when folder disappears while scanning
    #5781: Shutdown takes too long, triggering fmut deadlock panic
    #5791: Puller complains about invalid filenames which are long gone

Enhancements

    #959: Automatic error log sending to dev. team
    #3345: Show last connection error per discovered address
    #5377: Use of QUIC for transport
    #5631: Dockerfile ENTRYPOINT doesn't pass along extra arguments from "docker run"
    #5697: Handle fatal watch errors gracefully
    #5774: WebUI table column widths broken on narrow displays

Other issues

    #5760: Dead link in README.md
    #5796: TestPullInvalidIgnoredSR/SO is flaky
2019-07-14 20:48:39 +00:00

83 lines
2.9 KiB
Makefile

# $NetBSD: Makefile,v 1.92 2019/07/14 20:48:39 triaxx Exp $
# Upstream used to frequently break protocol compatibility. While
# users of pkgsrc syncthing on multiple systems can update
# synchronously, an important use case is interoperating with
# syncthing-android.
# Therefore, pkgsrc will update to a new major version (e.g. 0.14.x vs
# 1.0.x) when a corresponding syncthing-android version becomes
# available in the f-droid.org repository:
# https://f-droid.org/repository/browse/?fdid=com.nutomic.syncthingandroid
# Updates to new major versions must be tested against the android
# version from f-droid prior to commiting. (This is an attempt to
# avoid having to version syncthing in pkgsrc.)
# Note that the android versioning is disconnected from syncthing versioning;
# see https://github.com/syncthing/syncthing-android/issues/652 for
# a fuller explanation.
DISTNAME= syncthing-source-v1.2.0
PKGNAME= ${DISTNAME:S,source-v,,}
CATEGORIES= net
MASTER_SITES= ${MASTER_SITE_GITHUB:=syncthing/}
GITHUB_RELEASE= v${PKGVERSION_NOREV}
# Minor version updates may be committed without asking. Major
# updates not following the above policy will be reverted.
COMMENT= Keeps directories in sync across hosts
HOMEPAGE= https://syncthing.net/
MAINTAINER= gdt@NetBSD.org
LICENSE= mpl-2.0
# The 'zillode' dependency calls the compiler on certain archs.
USE_LANGUAGES= c
NO_CONFIGURE= yes
GO_SRCPATH= github.com/syncthing/syncthing
GO_DIST_BASE= syncthing
INSTALLATION_DIRS= bin
CHECK_RELRO_SKIP+= bin/syncthing
SUBST_CLASSES+= version
SUBST_STAGE.version= pre-build
SUBST_MESSAGE.version= Fixing version string
SUBST_FILES.version= build.go
SUBST_SED.version= -e 's|runError("git", "describe", "--always", "--dirty")|runError("echo","v${PKGVERSION_NOREV}")|'
SUBST_SED.version+= -e 's|runError("git", "show", "-s", "--format=%ct")|runError("false")|'
SUBST_SED.version+= -e 's|"go"|"${GO}"|'
SUBST_CLASSES+= go
SUBST_STAGE.go= pre-build
SUBST_MESSAGE.go= Fixing go executable reference
SUBST_FILES.go= lib/auto/doc.go cmd/strelaypoolsrv/auto/doc.go
SUBST_SED.go+= -e 's|go run|"${GO}" run|'
.include "../../mk/bsd.prefs.mk"
PKG_SYSCONFSUBDIR= syncthing
SYNCTHING_USER?= syncthing
SYNCTHING_GROUP?= syncthing
PKG_GROUPS_VARS+= SYNCTHING_GROUP
PKG_USERS_VARS+= SYNCTHING_USER
OWN_DIRS_PERMS+= ${PKG_SYSCONFDIR} ${SYNCTHING_USER} ${SYNCTHING_GROUP} 0755
OWN_DIRS_PERMS+= ${VARBASE}/db/syncthing ${SYNCTHING_USER} ${SYNCTHING_GROUP} 0755
PKG_GROUPS= ${SYNCTHING_GROUP}
PKG_USERS= ${SYNCTHING_USER}:${SYNCTHING_GROUP}
PKG_HOME.${SYNCTHING_USER}= ${VARBASE}/db/syncthing
FILES_SUBST+= SYNCTHING_USER=${SYNCTHING_USER}
FILES_SUBST+= SYNCTHING_GROUP=${SYNCTHING_GROUP}
RCD_SCRIPTS+= syncthing
do-build:
cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${GO} run build.go build syncthing
# Binaries other than syncthing proper should perhaps be installed.
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/syncthing ${DESTDIR}/${PREFIX}/bin
.include "../../lang/go/go-package.mk"
.include "../../mk/bsd.pkg.mk"