diff --git a/net-p2p/syncthing/Manifest b/net-p2p/syncthing/Manifest index ada6c923bee1e..49556cca2e61c 100644 --- a/net-p2p/syncthing/Manifest +++ b/net-p2p/syncthing/Manifest @@ -9,3 +9,5 @@ DIST syncthing-source-v2.0.16.tar.gz 62749079 BLAKE2B a9c5f3f7c26506e1997d0e2871 DIST syncthing-source-v2.0.16.tar.gz.asc 1391 BLAKE2B ae28c7037514065d63d784c3085c94e249626ad72b37b887dc9d49038ba3b89ec6be9884132ab5b19053d565e2da393ae71d850cd9515e6da983f29a75b47c90 SHA512 6821ac6ab15e5a9ca5f3944a2d4da20febaba1d9d41ee485492511a7cdf399e363e34fb44c94640e401e31befccace6a408f82891f55ded09406580923a41104 DIST syncthing-source-v2.1.0.tar.gz 63030467 BLAKE2B a49e5eb507bd81483ff82d00d07de40b2b7df640190f3df98427ee41d96aa43eaacea34e8b9f37e5f1846044c2d4b25463048fe8b109b6b6b272c7f6be7074ab SHA512 ee6e14d9522e4d37063b90afcda20fc55dbd1a4a9faf7cd6fe34b9f7581a28572d8b8614e8821b5bfaca94c0a7456784f053f02878ac7872900a2752f19e3210 DIST syncthing-source-v2.1.0.tar.gz.asc 1391 BLAKE2B 68c2835c37a78a123f4a04af0d04d3a0c8c7699532d8e38400ed535877d3b324ae2a220c70946c959d6c01f3a1c26425370acbe0a445bc2ce50892fc929af835 SHA512 c724d0cf5aab6dc27d72587ba3d51b2bb8932c88b65cdbe45a26b72210f2fd50ca37ba05d9a307035c963c15166595bcf36dacef3b6d11269dda70286720adba +DIST syncthing-source-v2.1.1.tar.gz 63011776 BLAKE2B a2e3dc9b7b460a38625ab815545e6b031a2b18d8b4690f848c332540f80de71e02edf74860ad13cf15564f0a5f2f56f7d075497a9d70c6197b5fead6e3ebba25 SHA512 9287ffb2a472b5c8cc9eada9ddfed1f669b1e381431e41a2a76f474639463d8d667a7562ca695290e73ed3df1b89b0622371016a7d3240b90c718c5a93b94a31 +DIST syncthing-source-v2.1.1.tar.gz.asc 1391 BLAKE2B 143b30b627005de85b9eedba156362f8f838cf42ca6a11ff29a8a876a24e514f9e5a89a272cee524577f805d0ec70495e580eeeada8bb699854a0fa4d3d2a2f9 SHA512 e920b6f252de586f47beddbf3f97a2477d3c8fdd14753f28e3137b4deea1340035cd31a46dddc25320977d355b45481fde40ec36332441a522bf0140b28c609d diff --git a/net-p2p/syncthing/syncthing-2.1.1.ebuild b/net-p2p/syncthing/syncthing-2.1.1.ebuild new file mode 100644 index 0000000000000..73bfd5f459a97 --- /dev/null +++ b/net-p2p/syncthing/syncthing-2.1.1.ebuild @@ -0,0 +1,126 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit eapi9-ver desktop go-module systemd verify-sig xdg + +DESCRIPTION="Open Source Continuous File Synchronization" +HOMEPAGE="https://syncthing.net https://github.com/syncthing/syncthing" +SRC_URI=" + https://github.com/${PN}/${PN}/releases/download/v${PV}/${PN}-source-v${PV}.tar.gz + verify-sig? ( + https://github.com/${PN}/${PN}/releases/download/v${PV}/${PN}-source-v${PV}.tar.gz.asc + ) +" +S="${WORKDIR}"/${PN} + +LICENSE="MPL-2.0 Apache-2.0 BSD BSD-2 CC0-1.0 ISC MIT Unlicense" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" +IUSE="selinux tools" + +DEPEND=" + dev-db/sqlite:3 +" +RDEPEND=" + ${DEPEND} + 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.25.0 + verify-sig? ( sec-keys/openpgp-keys-syncthing ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/syncthing.asc + +DOCS=( AUTHORS {GOALS,README}.md ) + +PATCHES=( + "${FILESDIR}"/${PN}-1.3.4-TestIssue5063_timeout.patch + "${FILESDIR}"/${PN}-1.18.4-tool_users.patch + "${FILESDIR}"/${PN}-1.29.5-remove_race_in_tests.patch #955442 +) + +src_prepare() { + # Bug #679280 + xdg_environment_reset + + default + + local srv + for srv in st{disco,relay}srv; do + sed -i \ + 's|^ExecStart=.*|ExecStart=/usr/libexec/${PN}/${srv}|' \ + cmd/${srv}/etc/linux-systemd/${srv}.service || die + done; +} + +src_compile() { + # https://github.com/mattn/go-sqlite3#linux + # -tags libsqlite3: use system sqlite3 instead of bundled + ego run build.go -version "v${PV}" -tags "libsqlite3" -no-upgrade -build-out=bin/ \ + build $(usev tools all) +} + +src_test() { + ego run build.go test +} + +src_install() { + dobin bin/${PN} + + doman man/*.[157] + einstalldocs + + domenu etc/linux-desktop/${PN}-{start,ui}.desktop + local -i icon_size + 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 + + systemd_dounit etc/linux-systemd/system/${PN}@.service + systemd_douserunit etc/linux-systemd/user/${PN}.service + newconfd "${FILESDIR}"/${PN}.confd-r2 ${PN} + newinitd "${FILESDIR}"/${PN}.initd-r5 ${PN} + exeinto /etc/user/init.d + newexe "${FILESDIR}"/syncthing.initd-user-r2 syncthing + + keepdir /var/log/${PN} + insinto /etc/logrotate.d + newins "${FILESDIR}"/${PN}.logrotate ${PN} + + insinto /etc/ufw/applications.d + doins etc/firewall-ufw/${PN} + + if use tools; then + exeinto /usr/libexec/${PN} + insinto /etc/logrotate.d + + local srv + for srv in st{disco,relay}srv; do + doexe bin/${srv} + systemd_dounit cmd/${srv}/etc/linux-systemd/${srv}.service + newconfd "${FILESDIR}"/${srv}.confd ${srv} + newinitd "${FILESDIR}"/${srv}.initd-r1 ${srv} + + newins "${FILESDIR}"/${srv}.logrotate ${srv} + done + fi +} + +pkg_postinst() { + xdg_pkg_postinst + + if ver_replacing -lt 2.0 ; then + elog "Major changes in 2.0:" + elog "https://github.com/syncthing/syncthing/blob/v${PV}/relnotes/v2.0.md" + fi +}