net-vpn/amneziawg-tools: add 1.0.20260223

Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo@sysrq.in>
This commit is contained in:
Anna (cybertailor) Vyalkova
2026-02-28 21:19:55 +05:00
parent 4c2d80bf34
commit 3453ef1198
2 changed files with 89 additions and 0 deletions

View File

@@ -1 +1,2 @@
DIST amneziawg-tools-1.0.20250903.tar.gz 160214 BLAKE2B ec32969cf32b0c75179a3c53702997963c176e61958d4cc166706d8439ae736e191be488e7dc93e3c2f9d8657e67deee674359b15e19ca473ddfc19f5fe3767d SHA512 a69f3911b18cd5abb73ba1f695802c87205ed6be10be035a5d06ca266c5de3c0b88c0aeac7670bc302112288f1b58937608e7b2835a22d2b4fc45a8f63b218ad
DIST amneziawg-tools-1.0.20260223.tar.gz 160261 BLAKE2B 33277e23dfd7b498e845329a853495ecfe4ca00faf1f9d5aa2288e302d0d03363df418082f32c727ce83b67ece8dccd91c252964e67c42a6646d7cea1d489227 SHA512 591afaef659e26be16c8d883da8d8ff026f855f60c9887440b566ef18b9948ca57754673d833f27e77d8c05f7e354f37b49adc9f5467334eeb7eda7165960c54

View File

@@ -0,0 +1,88 @@
# Copyright 2025-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit linux-info bash-completion-r1 systemd toolchain-funcs
DESCRIPTION="Required tools for AmneziaWG, such as awg(8) and awg-quick(8)"
HOMEPAGE="https://github.com/amnezia-vpn/amneziawg-tools"
SRC_URI="https://github.com/amnezia-vpn/amneziawg-tools/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64"
IUSE="+awg-quick selinux"
BDEPEND="virtual/pkgconfig"
RDEPEND="${DEPEND}
awg-quick? (
|| ( net-firewall/nftables net-firewall/iptables )
virtual/resolvconf
)
selinux? ( sec-policy/selinux-wireguard )
"
awg_quick_optional_config_nob() {
CONFIG_CHECK="$CONFIG_CHECK ~$1"
declare -g ERROR_$1="CONFIG_$1: This option is required for automatic routing of default routes inside of awg-quick(8), though it is not required for general AmneziaWG usage."
}
pkg_setup() {
if use awg-quick; then
awg_quick_optional_config_nob IP_ADVANCED_ROUTER
awg_quick_optional_config_nob IP_MULTIPLE_TABLES
awg_quick_optional_config_nob IPV6_MULTIPLE_TABLES
if has_version net-firewall/nftables; then
awg_quick_optional_config_nob NF_TABLES
awg_quick_optional_config_nob NF_TABLES_IPV4
awg_quick_optional_config_nob NF_TABLES_IPV6
awg_quick_optional_config_nob NFT_CT
awg_quick_optional_config_nob NFT_FIB
awg_quick_optional_config_nob NFT_FIB_IPV4
awg_quick_optional_config_nob NFT_FIB_IPV6
awg_quick_optional_config_nob NF_CONNTRACK_MARK
elif has_version net-firewall/iptables; then
awg_quick_optional_config_nob NETFILTER_XTABLES
awg_quick_optional_config_nob NETFILTER_XT_MARK
awg_quick_optional_config_nob NETFILTER_XT_CONNMARK
awg_quick_optional_config_nob NETFILTER_XT_MATCH_COMMENT
awg_quick_optional_config_nob NETFILTER_XT_MATCH_ADDRTYPE
awg_quick_optional_config_nob IP6_NF_RAW
awg_quick_optional_config_nob IP_NF_RAW
awg_quick_optional_config_nob IP6_NF_FILTER
awg_quick_optional_config_nob IP_NF_FILTER
fi
fi
get_version
if ! has_version net-vpn/amneziawg-modules; then
ewarn
ewarn "Linux kernel does not have upstream support for AmneziaWG."
ewarn "However, the net-vpn/amneziawg-modules ebuild"
ewarn "contains a module that should work for your kernel."
ewarn "It is highly recommended to install it:"
ewarn
ewarn " emerge -av net-vpn/amneziawg-modules"
ewarn
fi
linux-info_pkg_setup
}
src_compile() {
emake RUNSTATEDIR="${EPREFIX}/run" -C src CC="$(tc-getCC)" LD="$(tc-getLD)"
}
src_install() {
dodoc README.md
dodoc -r contrib
emake \
WITH_BASHCOMPLETION=yes \
WITH_SYSTEMDUNITS=yes \
WITH_WGQUICK=$(usex awg-quick) \
DESTDIR="${D}" \
BASHCOMPDIR="$(get_bashcompdir)" \
SYSTEMDUNITDIR="$(systemd_get_systemunitdir)" \
PREFIX="${EPREFIX}/usr" \
-C src install
use awg-quick && newinitd "${FILESDIR}/awg-quick.init" awg-quick
}