| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 1.0.20241112 | 8 | amd64 | 0 |
# Copyright 2025 RomikB
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit linux-mod-r1
DESCRIPTION="AmneziaWG Linux kernel module"
HOMEPAGE="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module"
SRC_URI="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64"
DEPEND="dist-kernel? ( sys-kernel/amneziawg-sources )"
PATCHES=( "${FILESDIR}/fix-apply-patches.patch" )
src_unpack() {
default
mv "${WORKDIR}"/amneziawg-linux-kernel-module-* "${S}" || die
}
src_compile() {
local src_kernel
if use dist-kernel; then
einfo "Building for kernel ${KV_FULL}"
local src_root=/usr/src/amneziawg-sources kv_patch="$KV_PATCH"
while [ "${kv_patch}" -ge 0 ]; do
local kv_full="${KV_MAJOR}.${KV_MINOR}.${kv_patch}${KV_LOCAL}"
local src_full="${src_root}/${kv_full}"
if [[ -d "${src_full}" ]]; then
src_kernel="${src_full}"
break
fi
kv_patch=$((kv_patch - 1))
done
fi
local kernel_dir=src/kernel
if [[ -n "${src_kernel}" ]]; then
einfo "Using AmneziaWG kernel sources from ${src_kernel}"
local wg_dir="${kernel_dir}"/drivers/net wg_name=wireguard
mkdir -p "${wg_dir}"
ln -s "${src_kernel}" "${wg_dir}"/"${wg_name}"
ln -s "${KV_DIR}"/include "${kernel_dir}"/
else
einfo "Using kernel sources from ${KV_DIR}"
ln -s "${KV_DIR}" "${kernel_dir}"
fi
local modargs=(KERNELRELEASE="${KV_FULL}")
local modlist=(amneziawg=kernel/drivers/net:src:src:all)
linux-mod-r1_src_compile
}
dist-kernel? ( sys-kernel/amneziawg-sources )
| Type | File | Size | Source URLs |
|---|---|---|---|
| DIST | amneziawg-1.0.20241112.tar.gz | 417511 bytes | https://github.com/amnezia-vpn/amneziawg-linux-kernel-module/archive/v1.0.20241112.tar.gz |