summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-vpn/headscale/headscale-0.15.0-r1.ebuild')
-rw-r--r--net-vpn/headscale/headscale-0.15.0-r1.ebuild49
1 files changed, 49 insertions, 0 deletions
diff --git a/net-vpn/headscale/headscale-0.15.0-r1.ebuild b/net-vpn/headscale/headscale-0.15.0-r1.ebuild
new file mode 100644
index 000000000000..856fe17a4444
--- /dev/null
+++ b/net-vpn/headscale/headscale-0.15.0-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module systemd
+
+DESCRIPTION="An open source, self-hosted implementation of the Tailscale control server"
+HOMEPAGE="https://github.com/juanfont/headscale"
+SRC_URI="https://github.com/juanfont/headscale/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~jsmolic/distfiles/net-vpn/headscale/${P}-deps.tar.xz
+"
+
+LICENSE="BSD Apache-2.0 MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ acct-group/headscale
+ acct-user/headscale
+"
+RDEPEND="
+ ${DEPEND}
+ net-firewall/iptables
+"
+
+PATCHES=(
+ "${FILESDIR}"/config-socket.patch
+)
+
+src_compile() {
+ emake version=v${PV}
+}
+
+src_install() {
+ dobin headscale
+ dodoc -r docs/* config-example.yaml
+ keepdir /etc/headscale /var/lib/headscale
+ systemd_dounit "${FILESDIR}"/headscale.service
+ newconfd "${FILESDIR}"/headscale.confd headscale
+ newinitd "${FILESDIR}"/headscale.initd headscale
+ fowners -R ${PN}:${PN} /etc/headscale /var/lib/headscale
+}
+
+pkg_postinst() {
+ [[ -f "${EROOT}"/etc/headscale/config.yaml ]] && return
+ elog "Please create ${EROOT}/etc/headscale/config.yaml before starting the service"
+ elog "An example is in ${EROOT}/usr/share/doc/${PV}/config-example.yaml"
+}