summaryrefslogtreecommitdiff
path: root/net-vpn/wireguard-modules
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2021-01-29 18:03:51 +0000
committerV3n3RiX <venerix@redcorelinux.org>2021-01-29 18:03:51 +0000
commitd7ed2b01311f15ba54fe8ea872aab7d59ab2b193 (patch)
tree1814dd2b5bbf2e7639fdafbeef48d228cfaf5e9b /net-vpn/wireguard-modules
parentabaa75b10f899ada8dd05b23cc03205064394bc6 (diff)
gentoo resync : 29.01.2021
Diffstat (limited to 'net-vpn/wireguard-modules')
-rw-r--r--net-vpn/wireguard-modules/Manifest2
-rw-r--r--net-vpn/wireguard-modules/wireguard-modules-1.0.20210124.ebuild99
2 files changed, 101 insertions, 0 deletions
diff --git a/net-vpn/wireguard-modules/Manifest b/net-vpn/wireguard-modules/Manifest
index e72cb5260772..2f7735138335 100644
--- a/net-vpn/wireguard-modules/Manifest
+++ b/net-vpn/wireguard-modules/Manifest
@@ -1,3 +1,5 @@
DIST wireguard-linux-compat-1.0.20201221.tar.xz 262596 BLAKE2B fffd0f3a5501aa5ad0e52f3210edf507b0db63230d59b3204104584cc2b1d739311262a0e0180ce5cd5d6e74c5228d01a631fdbba8be9788bda2d80df8cfcbd0 SHA512 1b06eeda525903661657cae4f462cf2ef464bce292b0a9ae37425d254142ed4137ca7a2296da0f11447f89a4d921c3cb7cee018a4f691131541f0ec32f99c458
+DIST wireguard-linux-compat-1.0.20210124.tar.xz 262500 BLAKE2B 3ba5de204040abf2c2049b4223f6adcf0c24ef85bcc10702e5f8e40e751dbc6c8d217ac4d1534f407a7cf5f078bbb2e9a82862043c7979cc69a45e33d6e0cfb6 SHA512 4438391eb6a6a1526cbb9b7eb7b8f8b2999bf425d5fca028f1a412d93bffaa6107be133d673e68add6eeeb86201aa080228706de2af00e69c0ac88ccb127e56e
EBUILD wireguard-modules-1.0.20201221.ebuild 3471 BLAKE2B 9c49d59f13b7c8a6e4260e8a9696af455bdd26113c016cad92c57d08aba7d4ef7b2e3f626eb1c612ecdb3a2455e07c13b153992380a7f1f874fbb61ba3cfc0bd SHA512 7d0d4e11e30e2ba19f5116d79cdaacb542c42884f1ccefdd2c3516645609452cd066785c22f86e705eb4ea76052fd7d3f8a2426869c8d4f8a65200d781a82f05
+EBUILD wireguard-modules-1.0.20210124.ebuild 3473 BLAKE2B c72bac7a93da6bb4026198b1269c8b2c874f18be8be33c6f1e75c6df497249be2ca63e7660d47984a5ad10d5e0b3a4157ad833db8a1637f32abe37e753d1be13 SHA512 56b88643363fc8cc41838954fe866be82ec9826c232ae3f1965e9682ee2382f43bb0ab9f126460e4c885fb6d5384eaa25539a87eabd028cb15f4acf57165ec4f
MISC metadata.xml 661 BLAKE2B bb9a48b3a4f3162f8ccec522734cbc8ffdc7a92868cc7dc32adc1f7ef89f7b2eab1df573bed421d4b76204f9f38ad4fee45f9db4b41c7dc3b86d9d9bb3120a8f SHA512 e9daa3bb8fa72cc60373a3187610231cf396bc5014f33412b65d069ffd02caa659c426819aa76d46a0dd15e8cb579325b46df5296a3b2136d020ec378e5f98a5
diff --git a/net-vpn/wireguard-modules/wireguard-modules-1.0.20210124.ebuild b/net-vpn/wireguard-modules/wireguard-modules-1.0.20210124.ebuild
new file mode 100644
index 000000000000..a057f7a62290
--- /dev/null
+++ b/net-vpn/wireguard-modules/wireguard-modules-1.0.20210124.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MODULES_OPTIONAL_USE="module"
+inherit linux-mod bash-completion-r1
+
+DESCRIPTION="Simple yet fast and modern VPN that utilizes state-of-the-art cryptography."
+HOMEPAGE="https://www.wireguard.com/"
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://git.zx2c4.com/wireguard-linux-compat"
+else
+ SRC_URI="https://git.zx2c4.com/wireguard-linux-compat/snapshot/wireguard-linux-compat-${PV}.tar.xz"
+ S="${WORKDIR}/wireguard-linux-compat-${PV}"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="debug +module module-src"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+MODULE_NAMES="wireguard(kernel/drivers/net:src)"
+BUILD_TARGETS="module"
+CONFIG_CHECK="NET INET NET_UDP_TUNNEL CRYPTO_ALGAPI"
+
+pkg_setup() {
+ if use module; then
+ linux-mod_pkg_setup
+ if [[ -f $KERNEL_DIR/include/uapi/linux/wireguard.h ]]; then
+ eerror
+ eerror "WireGuard has been merged upstream into this kernel. Therefore,"
+ eerror "you no longer need this compatibility ebuild. Instead, simply"
+ eerror "enable CONFIG_WIREGUARD=y in your kernel configuration."
+ eerror
+ die "Use CONFIG_WIREGUARD=y for this kernel, and do not use this package."
+ elif kernel_is -lt 3 10 0 || kernel_is -ge 5 6 0; then
+ die "This version of ${PN} requires Linux >= 3.10 and < 5.6."
+ fi
+ fi
+}
+
+src_compile() {
+ BUILD_PARAMS="KERNELDIR=${KV_OUT_DIR}"
+ use debug && BUILD_PARAMS="CONFIG_WIREGUARD_DEBUG=y ${BUILD_PARAMS}"
+ use module && linux-mod_src_compile
+}
+
+src_install() {
+ use module && linux-mod_src_install
+ use module-src && emake DESTDIR="${D}" PREFIX="${EPREFIX}/usr" -C src dkms-install
+}
+
+pkg_postinst() {
+ if use module-src && ! use module; then
+ einfo
+ einfo "You have enabled the module-src USE flag without the module USE"
+ einfo "flag. This means that sources are installed to"
+ einfo "${ROOT}/usr/src/wireguard instead of having the"
+ einfo "kernel module compiled. You will need to compile the module"
+ einfo "yourself. Most likely, you don't want this USE flag, and should"
+ einfo "rather use USE=module"
+ einfo
+ fi
+
+ if use module; then
+ linux-mod_pkg_postinst
+ local old new
+ if [[ $(uname -r) != "${KV_FULL}" ]]; then
+ ewarn
+ ewarn "You have just built WireGuard for kernel ${KV_FULL}, yet the currently running"
+ ewarn "kernel is $(uname -r). If you intend to use this WireGuard module on the currently"
+ ewarn "running machine, you will first need to reboot it into the kernel ${KV_FULL}, for"
+ ewarn "which this module was built."
+ ewarn
+ elif [[ -f /sys/module/wireguard/version ]] && \
+ old="$(< /sys/module/wireguard/version)" && \
+ new="$(modinfo -F version "${ROOT}/lib/modules/${KV_FULL}/net/wireguard.ko" 2>/dev/null)" && \
+ [[ $old != "$new" ]]; then
+ ewarn
+ ewarn "You appear to have just upgraded WireGuard from version v$old to v$new."
+ ewarn "However, the old version is still running on your system. In order to use the"
+ ewarn "new version, you will need to remove the old module and load the new one. As"
+ ewarn "root, you can accomplish this with the following commands:"
+ ewarn
+ ewarn " # rmmod wireguard"
+ ewarn " # modprobe wireguard"
+ ewarn
+ ewarn "Do note that doing this will remove current WireGuard interfaces, so you may want"
+ ewarn "to gracefully remove them yourself prior."
+ ewarn
+ fi
+ fi
+}