diff options
Diffstat (limited to 'net-p2p')
-rw-r--r-- | net-p2p/syncthing/Manifest | 1 | ||||
-rw-r--r-- | net-p2p/syncthing/files/relaysrv.systemd.patch | 6 | ||||
-rw-r--r-- | net-p2p/syncthing/syncthing-0.13.9.ebuild | 101 |
3 files changed, 105 insertions, 3 deletions
diff --git a/net-p2p/syncthing/Manifest b/net-p2p/syncthing/Manifest index f6cfa12a67b1..4770a154b36b 100644 --- a/net-p2p/syncthing/Manifest +++ b/net-p2p/syncthing/Manifest @@ -1,2 +1,3 @@ DIST syncthing-0.12.25.tar.gz 4469275 SHA256 0374721434d0cb8bdd9464f63ff9705fe0ca14ab1e20d916780cb6347c91e72d SHA512 5bdb03ae5f76faddd54304994e04683f2a950419c8b4902553ea83d623976039bc05195f77fe59e2ef19615e91da308adc93b05061265e485a9dc941f2b750d4 WHIRLPOOL e6a10d1142dca73174bd9514526ad8f8357c930aa02fb2a2940adbd690fd209bcad15c3397daabd77052c5962d320665362a86fcafca3d19513ca6d06adcfd37 DIST syncthing-0.13.7.tar.gz 4331253 SHA256 c487a489504e48bc7a94f25322da5485c23b3a8e3df2832b2454556ab86552c8 SHA512 8e00355f9774329cb4da1173ad27528213520644c32d5b5ba2345b93787bc762d0498c33ccf2d72e91b770258e8a55d86573934baeff0bc0799416850320c82b WHIRLPOOL 688ef2a997e3e3ad4a23b5baeba6566d39938b007092f40e767db6f6a92c33069bf0ee3afdee2df848a2edfee7846cfb3fbabdc81dcf1a40e795feafae29a221 +DIST syncthing-0.13.9.tar.gz 4334897 SHA256 1b0a00ddbcbc88d8310741a2b0853266fe1980c427aa415ed6faa9f03dd52912 SHA512 07939eb068b417a8dc0ad4a868e5b5fd22ff14297e0b77d0d08fc14631d3ffe957da3ad4a745a4f37bae4a3bed8ac98a859037273b040a8abc88f7d5a67dc871 WHIRLPOOL 264a17f553a7d56a792f4949560dfc4eefbfab6c3dedd07e0ada5ec02d7ed97d2c196aa4a770630b6a3bb02879a9b462ddd5f95d58217f45874ff162206cf6d7 diff --git a/net-p2p/syncthing/files/relaysrv.systemd.patch b/net-p2p/syncthing/files/relaysrv.systemd.patch index 2cff1dc7d9a6..52417ca2ab14 100644 --- a/net-p2p/syncthing/files/relaysrv.systemd.patch +++ b/net-p2p/syncthing/files/relaysrv.systemd.patch @@ -1,7 +1,7 @@ -diff --git src/github.com/syncthing/syncthing/cmd/relaysrv/etc/linux-systemd/syncthing-relaysrv.service src/github.com/syncthing/syncthing/cmd/relaysrv/etc/linux-systemd/syncthing-relaysrv.service +diff --git a/src/github.com/syncthing/syncthing/cmd/relaysrv/etc/linux-systemd/syncthing-relaysrv.service b/src/github.com/syncthing/syncthing/cmd/relaysrv/etc/linux-systemd/syncthing-relaysrv.service index b9d3173..7f8e2c0 100644 ---- src/github.com/syncthing/syncthing/cmd/relaysrv/etc/linux-systemd/syncthing-relaysrv.service -+++ src/github.com/syncthing/syncthing/cmd/relaysrv/etc/linux-systemd/syncthing-relaysrv.service +--- a/src/github.com/syncthing/syncthing/cmd/relaysrv/etc/linux-systemd/syncthing-relaysrv.service ++++ b/src/github.com/syncthing/syncthing/cmd/relaysrv/etc/linux-systemd/syncthing-relaysrv.service @@ -5,7 +5,7 @@ After=network.target [Service] User=syncthing-relaysrv diff --git a/net-p2p/syncthing/syncthing-0.13.9.ebuild b/net-p2p/syncthing/syncthing-0.13.9.ebuild new file mode 100644 index 000000000000..74577d231b01 --- /dev/null +++ b/net-p2p/syncthing/syncthing-0.13.9.ebuild @@ -0,0 +1,101 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +EGO_PN="github.com/syncthing/syncthing" +EGIT_COMMIT=v${PV} + +inherit golang-vcs-snapshot systemd user versionator + +DESCRIPTION="Open Source Continuous File Synchronization" +HOMEPAGE="https://syncthing.net" +SRC_URI="https://${EGO_PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~amd64 ~x86 ~arm" +IUSE="tools" + +DOCS="README.md AUTHORS CONTRIBUTING.md" +PATCHES=( "${FILESDIR}/relaysrv.systemd.patch" ) + +pkg_setup() { + enewgroup ${PN} + enewuser ${PN} -1 -1 /var/lib/${PN} ${PN} + + if use tools ; then + # separate user for relaysrv + enewgroup ${PN}-relaysrv + enewuser ${PN}-relaysrv -1 -1 /var/lib/${PN}-relaysrv ${PN}-relaysrv + fi +} + +src_compile() { + export GOPATH="${S}:$(get_golibdir_gopath)" + cd src/${EGO_PN} || die + # If we pass "build" to build.go, it builds only syncthing itself, and + # places the binary in the root folder. If we do not pass "build", all the + # tools are built, and all binaries are placed in folder ./bin. + ST_BUILD="build" + if use tools ; then + ST_BUILD="" + fi + go run build.go -version "v${PV}" -no-upgrade ${ST_BUILD} || die "build failed" +} + +src_test() { + cd src/${EGO_PN} || die + go run build.go test || die "test failed" +} + +src_install() { + cd src/${EGO_PN} || die + doman man/*.[157] + + if use tools ; then + dobin bin/syncthing + exeinto /usr/libexec/syncthing + for exe in bin/* ; do + [ "${exe}" = "bin/syncthing" ] || doexe "${exe}" + done + else + dobin syncthing + fi + + # openrc and systemd service files + systemd_dounit "${S}"/src/${EGO_PN}/etc/linux-systemd/system/${PN}@.service \ + "${S}"/src/${EGO_PN}/etc/linux-systemd/system/${PN}-resume.service + systemd_douserunit "${S}"/src/${EGO_PN}/etc/linux-systemd/user/${PN}.service + newconfd "${FILESDIR}/${PN}.confd" ${PN} + newinitd "${FILESDIR}/${PN}.initd" ${PN} + + keepdir /var/{lib,log}/${PN} + fowners ${PN}:${PN} /var/{lib,log}/${PN} + insinto /etc/logrotate.d + newins "${FILESDIR}/${PN}.logrotate" ${PN} + + if use tools ; then + # openrc and systemd service files + systemd_dounit "${S}"/src/${EGO_PN}/cmd/relaysrv/etc/linux-systemd/${PN}-relaysrv.service + newconfd "${FILESDIR}/${PN}-relaysrv.confd" ${PN}-relaysrv + newinitd "${FILESDIR}/${PN}-relaysrv.initd" ${PN}-relaysrv + + keepdir /var/lib/${PN}-relaysrv + fowners ${PN}-relaysrv:${PN}-relaysrv /var/{lib,log}/${PN} + + insinto /etc/logrotate.d + newins "${FILESDIR}/syncthing-relaysrv.logrotate" syncthing-relaysrv + fi +} + +pkg_postinst() { + if [[ $(get_version_component_range 2) -gt \ + $(get_version_component_range 2 ${REPLACING_VERSIONS}) ]]; then + ewarn "Version ${PV} is not protocol-compatible with version" \ + "0.$(($(get_version_component_range 2) - 1)).x or lower." + ewarn "Make sure all your devices are running at least version" \ + "0.$(get_version_component_range 2).0." + fi +} |