summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-p2p')
-rw-r--r--net-p2p/syncthing/Manifest1
-rw-r--r--net-p2p/syncthing/syncthing-1.26.1.ebuild113
2 files changed, 114 insertions, 0 deletions
diff --git a/net-p2p/syncthing/Manifest b/net-p2p/syncthing/Manifest
index aa72f8263191..adc8e972cd91 100644
--- a/net-p2p/syncthing/Manifest
+++ b/net-p2p/syncthing/Manifest
@@ -1,2 +1,3 @@
DIST syncthing-1.24.0.tar.gz 18625515 BLAKE2B aeff0ab43fca0d6f440e6ccacb1a947e22131d625d8600eebaf9cc285a3ed51ab52cd9f13e64be79e290ba07d6181aafe5176922cf01d24ec65cc0882d1d7a61 SHA512 bc53ee04b3454642606047d2009fb9adaafd509d0a4e52a4b6e57565bf502615bfcbc29e15b30733ee8eace62685b00a784347f63c2986ccf90b70631f858908
DIST syncthing-1.25.0.tar.gz 15010308 BLAKE2B 7b6ea7f87e6d77550f659b8839aca2cebecca547058e0a768144e00863bf92f1b67ceffcdbc08e0a51ee62b4d0a93610b9efcb15045f35837021a4c263ff6933 SHA512 f9f36bd9a98afda1b48c24ded94b1ba8fd8a0b0c426f6335827fc1b0508845d46f05b69aad05d2127afbca5f10c9b0ba40727f8ed68e35616306396a8287500f
+DIST syncthing-1.26.1.tar.gz 15020478 BLAKE2B 679536a4a5cbd5299458253b69308fbffcd20fe25273d05ae91c7ff80af98e486af277855fc6d66a7487b88b3fe532be5f85766dac4c9ab766d199b824de5740 SHA512 932c0faf1d7b9af67474ac4729d867b7495a023459aa59ed5f4210b5cba5ef5561bc82020f6e202dda549086db06c20844e7e5541f136892a8916c25439c754d
diff --git a/net-p2p/syncthing/syncthing-1.26.1.ebuild b/net-p2p/syncthing/syncthing-1.26.1.ebuild
new file mode 100644
index 000000000000..6be654e9d91a
--- /dev/null
+++ b/net-p2p/syncthing/syncthing-1.26.1.ebuild
@@ -0,0 +1,113 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop go-module systemd xdg-utils
+
+DESCRIPTION="Open Source Continuous File Synchronization"
+HOMEPAGE="https://syncthing.net"
+SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${PN}-source-v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0 BSD BSD-2 CC0-1.0 ISC MIT MPL-2.0 Unlicense"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~x86"
+IUSE="selinux tools"
+
+RDEPEND="acct-group/syncthing
+ acct-user/syncthing
+ tools? ( >=acct-user/stdiscosrv-1
+ >=acct-user/strelaysrv-1 )
+ selinux? ( sec-policy/selinux-syncthing )"
+BDEPEND=">=dev-lang/go-1.20.0"
+
+DOCS=( README.md AUTHORS CONTRIBUTING.md )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.3.4-TestIssue5063_timeout.patch
+ "${FILESDIR}"/${PN}-1.18.4-tool_users.patch
+ "${FILESDIR}"/${PN}-1.23.2-tests_race.patch
+)
+
+S="${WORKDIR}"/${PN}
+
+src_prepare() {
+ # Bug #679280
+ xdg_environment_reset
+
+ default
+ sed -i \
+ 's|^ExecStart=.*|ExecStart=/usr/libexec/syncthing/stdiscosrv|' \
+ cmd/stdiscosrv/etc/linux-systemd/stdiscosrv.service \
+ || die
+ sed -i \
+ 's|^ExecStart=.*|ExecStart=/usr/libexec/syncthing/strelaysrv|' \
+ cmd/strelaysrv/etc/linux-systemd/strelaysrv.service \
+ || die
+}
+
+src_compile() {
+ GOARCH= go run build.go -version "v${PV}" -no-upgrade -build-out=bin/ \
+ ${GOARCH:+-goarch="${GOARCH}"} \
+ build $(usex tools "all" "") || die "build failed"
+}
+
+src_test() {
+ go run build.go test || die "test failed"
+}
+
+src_install() {
+ local icon_size
+
+ doman man/*.[157]
+ einstalldocs
+
+ dobin bin/syncthing
+
+ domenu etc/linux-desktop/*.desktop
+ for icon_size in 32 64 128 256 512; do
+ newicon -s ${icon_size} assets/logo-${icon_size}.png ${PN}.png
+ done
+ newicon -s scalable assets/logo-only.svg ${PN}.svg
+
+ if use tools; then
+ exeinto /usr/libexec/syncthing
+ local exe
+ for exe in bin/* ; do
+ [[ "${exe}" == "bin/syncthing" ]] || doexe "${exe}"
+ done
+ fi
+
+ systemd_dounit etc/linux-systemd/system/${PN}{@,-resume}.service
+ systemd_douserunit etc/linux-systemd/user/${PN}.service
+ newconfd "${FILESDIR}"/${PN}.confd ${PN}
+ newinitd "${FILESDIR}"/${PN}.initd-r2 ${PN}
+
+ keepdir /var/log/${PN}
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/${PN}.logrotate ${PN}
+
+ if use tools; then
+ systemd_dounit cmd/stdiscosrv/etc/linux-systemd/stdiscosrv.service
+ newconfd "${FILESDIR}"/stdiscosrv.confd stdiscosrv
+ newinitd "${FILESDIR}"/stdiscosrv.initd-r1 stdiscosrv
+
+ systemd_dounit cmd/strelaysrv/etc/linux-systemd/strelaysrv.service
+ newconfd "${FILESDIR}"/strelaysrv.confd strelaysrv
+ newinitd "${FILESDIR}"/strelaysrv.initd-r1 strelaysrv
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}"/stdiscosrv.logrotate strelaysrv
+ newins "${FILESDIR}"/strelaysrv.logrotate strelaysrv
+ fi
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}