# 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 local src_root=/usr/src/amneziawg-sources local src_full="${src_root}"/"${KV_FULL}" src_partial="${src_root}"/"${KV_MAJOR}.${KV_MINOR}${KV_LOCAL}" if [[ -d "${src_full}" ]]; then src_kernel="${src_full}" elif [[ -d "${src_partial}" ]]; then src_kernel="${src_partial}" fi fi local kernel_dir=src/kernel if [[ -n "${src_kernel}" ]]; then 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 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 }