# Template file for 'syncthing'
pkgname=syncthing
version=1.29.5
revision=1
build_style=go
go_import_path="github.com/syncthing/syncthing"
go_package="
 ${go_import_path}/cmd/stdiscosrv
 ${go_import_path}/cmd/strelaysrv
 ${go_import_path}/cmd/syncthing"
go_build_tags="noupgrade"
go_ldflags="-X github.com/syncthing/syncthing/lib/build.Version=v${version}"
make_check_target="./lib/...
 ./cmd/stdiscosrv
 ./cmd/strelaysrv
 ./cmd/syncthing"
short_desc="Open Source Continuous File Synchronization"
maintainer="Duncaen <duncaen@voidlinux.org>"
license="MPL-2.0"
homepage="https://syncthing.net/"
changelog="https://github.com/syncthing/syncthing/releases"
distfiles="https://github.com/syncthing/syncthing/archive/v${version}.tar.gz"
checksum=8dcef38261bc1f0388dcb85385822594573a76ff31a874703fd2d2699250040a

pre_build() {
	GOARCH= go generate github.com/syncthing/syncthing/lib/api/auto
}

post_install() {
	vinstall etc/firewall-ufw/syncthing 644 etc/ufw/applications.d
	vinstall etc/linux-desktop/syncthing-start.desktop 664 usr/share/applications
	vinstall etc/linux-desktop/syncthing-ui.desktop 644 usr/share/applications
	vinstall etc/linux-sysctl/30-syncthing.conf 644 usr/lib/sysctl.d
	vlicense LICENSE
	vdoc README.md
	for f in man/syncthing*; do vman $f; done
	for x in 32 64 128 256 512; do
		vinstall assets/logo-${x}.png 644 "usr/share/icons/hicolor/${x}x${x}/apps" syncthing.png
	done
	vinstall assets/logo-only.svg 644 usr/share/icons/hicolor/scalable/apps syncthing.svg
}

syncthing-relaysrv_package() {
	short_desc+=" - relay server"
	license="MIT"
	replaces="relaysrv>=0.12.18_2"
	provides="relaysrv-${version}_${revision}"
	system_accounts="relaysrv"
	relaysrv_homedir="/var/lib/relaysrv"

	make_dirs="
	 /var/log/relaysrv 700 root root
	 /var/lib/relaysrv 700 relaysrv relaysrv"

	pkg_install() {
		vmove usr/bin/strelaysrv
		vlicense cmd/strelaysrv/LICENSE
		vsv relaysrv
		vman man/strelaysrv.1
	}
}

syncthing-discosrv_package() {
	short_desc+=" - discovery server"
	system_accounts="_discosrv"
	_discosrv_homedir="/var/lib/discosrv"

	make_dirs="
	 /var/log/discosrv 700 root root
	 /var/lib/discosrv 700 _discosrv _discosrv"

	pkg_install() {
		vmove usr/bin/stdiscosrv
		vlicense LICENSE
		vsv discosrv
		vman man/stdiscosrv.1
	}
}

syncthing-inotify_package() {
	build_style=meta
	short_desc="Inotify file watcher for Syncthing (transitional dummy package)"
	depends="${sourcepkg}>=${version}_${revision}"
}