Skip to content

Commit

Permalink
rebase jool WIP on stable
Browse files Browse the repository at this point in the history
  • Loading branch information
root@ThinkPArchd authored and JasonGantner committed Sep 15, 2024
1 parent a0a3aad commit 5da124b
Show file tree
Hide file tree
Showing 7 changed files with 318 additions and 0 deletions.
16 changes: 16 additions & 0 deletions metadata/md5-cache/net-misc/jool-4.1.13
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
BDEPEND=sys-kernel/linux-headers tools? ( sys-devel/gnuconfig || ( >=dev-build/automake-1.17-r1:1.17 >=dev-build/automake-1.16.5:1.16 ) || ( >=dev-build/autoconf-2.72-r1:2.72 >=dev-build/autoconf-2.71-r6:2.71 ) >=dev-build/libtool-2.4.7-r3 ) doc? ( www-apps/jekyll ) dist-kernel? ( virtual/dist-kernel ) verify-sig? ( app-crypt/gnupg >=app-portage/gemato-20 ) >=app-portage/elt-patches-20240116
DEFINED_PHASES=compile install postinst postrm preinst prepare pretend setup unpack
DEPEND=iptables? ( net-firewall/iptables ) kernel_linux? ( sys-apps/kmod[tools] dist-kernel? ( virtual/dist-kernel:= ) ) kernel_linux? ( virtual/linux-sources virtual/libelf )
DESCRIPTION=An Open Source implementation of multiple NAT64 RFC for linux
EAPI=8
HOMEPAGE=https://jool.mx/
INHERIT=linux-mod bash-completion-r1 verify-sig autotools
IUSE=bash-completion dist-kernel doc iptables +nat64 +siit +tools dist-kernel verify-sig
KEYWORDS=~amd64
LICENSE=GPL-2 doc? ( FDL-1.3 )
RDEPEND=iptables? ( net-firewall/iptables ) kernel_linux? ( sys-apps/kmod[tools] dist-kernel? ( virtual/dist-kernel:= ) )
REQUIRED_USE=|| ( nat64 siit )
SLOT=0
SRC_URI=https://github.com/NICMx/Jool/releases/download/v4.1.13/jool-4.1.13.tar.gz verify-sig? ( https://github.com/NICMx/Jool/releases/download/v4.1.13/jool-4.1.13.tar.gz.asc )
_eclasses_=toolchain-funcs 948855ec7ad9f11351edf9066708dfa9 multilib 7e1347c006a76bb812f3a9f663b79991 linux-info ea4122ba1d8791a12b78e53f9510a2e3 multiprocessing e644caa6eb7ce7e5ab0864383ac13ad9 linux-mod 000f3723e8e062061ee523106e69f84a bash-completion-r1 3047612be964ffd4a549447fc4289f12 verify-sig a79ba011daaf532d71a219182474d150 gnuconfig f8b9cc21e72de8cbedde6ca5108d208b libtool f9e6905c12590c1cac06d85371a0819a autotools 61927ff6474f1d141b4ea4a5b9870424
_md5_=fa7102a03c62a8fad4ead66c00c255eb
16 changes: 16 additions & 0 deletions metadata/md5-cache/net-misc/jool-4.1.8
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
BDEPEND=sys-kernel/linux-headers tools? ( sys-devel/gnuconfig || ( >=dev-build/automake-1.17-r1:1.17 >=dev-build/automake-1.16.5:1.16 ) || ( >=dev-build/autoconf-2.72-r1:2.72 >=dev-build/autoconf-2.71-r6:2.71 ) >=dev-build/libtool-2.4.7-r3 ) doc? ( www-apps/jekyll ) dist-kernel? ( virtual/dist-kernel ) verify-sig? ( app-crypt/gnupg >=app-portage/gemato-20 ) >=app-portage/elt-patches-20240116
DEFINED_PHASES=compile install postinst postrm preinst prepare pretend setup unpack
DEPEND=iptables? ( net-firewall/iptables ) kernel_linux? ( sys-apps/kmod[tools] dist-kernel? ( virtual/dist-kernel:= ) ) kernel_linux? ( virtual/linux-sources virtual/libelf )
DESCRIPTION=An Open Source implementation of multiple NAT64 RFC for linux
EAPI=8
HOMEPAGE=https://jool.mx/
INHERIT=linux-mod bash-completion-r1 verify-sig autotools
IUSE=bash-completion dist-kernel doc iptables +nat64 +siit +tools dist-kernel verify-sig
KEYWORDS=~amd64
LICENSE=GPL-2 doc? ( FDL-1.3 )
RDEPEND=iptables? ( net-firewall/iptables ) kernel_linux? ( sys-apps/kmod[tools] dist-kernel? ( virtual/dist-kernel:= ) )
REQUIRED_USE=|| ( nat64 siit )
SLOT=0
SRC_URI=https://github.com/NICMx/Jool/releases/download/v4.1.8/jool-4.1.8.tar.gz verify-sig? ( https://github.com/NICMx/Jool/releases/download/v4.1.8/jool-4.1.8.tar.gz.asc )
_eclasses_=toolchain-funcs 948855ec7ad9f11351edf9066708dfa9 multilib 7e1347c006a76bb812f3a9f663b79991 linux-info ea4122ba1d8791a12b78e53f9510a2e3 multiprocessing e644caa6eb7ce7e5ab0864383ac13ad9 linux-mod 000f3723e8e062061ee523106e69f84a bash-completion-r1 3047612be964ffd4a549447fc4289f12 verify-sig a79ba011daaf532d71a219182474d150 gnuconfig f8b9cc21e72de8cbedde6ca5108d208b libtool f9e6905c12590c1cac06d85371a0819a autotools 61927ff6474f1d141b4ea4a5b9870424
_md5_=fa7102a03c62a8fad4ead66c00c255eb
8 changes: 8 additions & 0 deletions net-misc/jool/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
DIST jool-4.1.13.tar.gz 625231 BLAKE2B 988108cc76d78cf8d92d49b45142bf52a002ff00b948796bb090f8f38daa7b667614c76cff425e2f92f0d7aa3f6bde72ea3b077c0a301aa354f98735af10d57f SHA512 27c67e99ca3198f35b764b17294c51edbdab78cf56e887c1a74ede050daf627e38e91ef866a32deed6f2930c64a81f27e530059034999d1a4e4743dfc137886d
DIST jool-4.1.13.tar.gz.asc 833 BLAKE2B 206476b47be061fded6e2849d2a76455662f3f88e2c8e578446232813f84d64590d7bd1b478d58965c4d4be59761f3e0d24a74ecc1c9c8dbf1591c88872676d4 SHA512 18a233e7a90ed1eeca06648d6f717c350f725a90f282242daab3c34626b6780f8b6bb350cb1941b5fa8f3fcf8bdf4e8adab0a418351c5d9c726faf8b36c771b8
DIST jool-4.1.8.tar.gz 624004 BLAKE2B 1c8a8debb217a03c6c59041dc606181555834bb103199c10b7bf4a3900d13e3289e1c85a995201a8f9fc7507a4e0b14620362acd90176aede189bdcf9bfc9c14 SHA512 4fa211c44a8df33648760185629fa6f941f47b092ddfba36c75c58c016343153ac19cb63e28c5171f8027a4e573e5453963c2f80a0417eb7945804eceda43311
DIST jool-4.1.8.tar.gz.asc 833 BLAKE2B 4e3994da31f1745cccd9c3a8dc921eba9f56af3c97890c42edd7527d1a976c1509434796fa8559b8044af32bac21b35fb794c9011ef50773402f335dfb8ae235 SHA512 71dfd3c8d87e9b40d08a83d4be4871807445e92c9ac51ef3d81c8ca1122f2f4452f2d307d8a3c4e43038cf291379ec5b4cc0724e2a3716372d82ff518dc8788a
EBUILD jool-4.1.13.ebuild 1947 BLAKE2B edb7c36560245c309a90a8eae726e1aa9c8b83bb32ef459a7abc6f8017007cc722ad4aa4d3155dca547de7eb81072748f6a35374bc31d66675674b21fc60ba59 SHA512 6113ea42fee642a9596a3f2f9025f3807e73033176639676924b08fd089fe6b86435a29fc215e9da6e866dadb3af175709ee0d14b7f9b80e31c55fbd4e587f5f
EBUILD jool-4.1.8.ebuild 1947 BLAKE2B edb7c36560245c309a90a8eae726e1aa9c8b83bb32ef459a7abc6f8017007cc722ad4aa4d3155dca547de7eb81072748f6a35374bc31d66675674b21fc60ba59 SHA512 6113ea42fee642a9596a3f2f9025f3807e73033176639676924b08fd089fe6b86435a29fc215e9da6e866dadb3af175709ee0d14b7f9b80e31c55fbd4e587f5f
MISC jool-9999.ebuid 1261 BLAKE2B 48aa11c8fbcc68cec18f727e6326db814532d2ef4aa877ec47b94f5ea0a363c087164ac48fc111b041df25dbe929f21c89e0412bb1cb514e76e66016ae1e3235 SHA512 be07a6d2b3ac5776810483e00d870f47e0db856510168dbec86a40aeb1c21fa6e59e83938cf5e6699e1fd2ead8f1f39e85add7c72c34dbe4608a2307cdd91619
MISC metadata.xml 938 BLAKE2B 2845d5946b77d38bd7bdc508434a48acf8a408b7ce6aea36a77c742e635d12e2e1725a575ce7d18f72fdc77f7a49a904bea2c852908f1fc1e96353b73ff17073 SHA512 c3a7f85c072051bbfa2d90ec552244774752a7d54c0585f695df66d0649a1e7c2a3239a36071fec8517698815249dae4148833267b545371208c327bc96b5161
95 changes: 95 additions & 0 deletions net-misc/jool/jool-4.1.13.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright 2022-2024 Jason André Charles Gantner
# Distributed under the terms of the GNU General Public License v2

EAPI=8

DESCRIPTION="An Open Source implementation of multiple NAT64 RFC for linux"
HOMEPAGE="https://jool.mx/"
IUSE="bash-completion dist-kernel doc iptables +nat64 +siit +tools"
SLOT="0"
LICENSE="GPL-2 doc? ( FDL-1.3 )"
KEYWORDS="~amd64"
SRC_URI="
https://github.com/NICMx/Jool/releases/download/v${PV}/${P}.tar.gz
verify-sig? ( https://github.com/NICMx/Jool/releases/download/v${PV}/${P}.tar.gz.asc )
"

REQUIRED_USE="
|| ( nat64 siit )
"

inherit linux-mod bash-completion-r1

# Autotools config
WANT_AUTOCONF='latest'
WANT_LIBTOOL='latest'
AUTOTOOLS_AUTO_DEPEND='no'

# verify-sig config
VERIFY_SIG_OPENPGP_KEY_PATH=

# inherit now that necessary config has been added
inherit verify-sig autotools

DEPEND="
iptables? ( net-firewall/iptables )
"
RDEPEND="${DEPEND}"
BDEPEND="
sys-kernel/linux-headers
tools? ( ${AUTOTOOLS_DEPEND} )
doc? ( www-apps/jekyll )
dist-kernel? ( virtual/dist-kernel )
"

#TODO: add te following line once the upstream signing keys has been identified and packaged
# verify-sig? ( sec-keys/openpgp-keys- )

# linux-mod config
BUILD_TARGETS='clean modules'
MODULES_NAMES='jool_common(extra:src/mod/common)'

pkg_pretend(){
use_m 3 13 0 || {
eerror 'Supported Linux kernels are >= 3.13.0'
die
}
if use siit;then
MODULES_NAMES+=' jool_siit(extra:src/mod/jool_siit)'
fi
if use nat64;then
MODULES_NAMES+=' jool(extra:src/mod/jool)'
fi
}

pkg_setup(){
linux-mod_pkg_setup
}

src_prepare(){
eautoreconf && econf
}

src_compile(){
linux-mod_src_compile

if use tools; then
emake -C "${S}/src/tools"
fi

if use doc; then
cd docs && jekyll build || die
fi
}

src_install(){
default
if use doc;then
dodoc -r docs/_site
fi
use bash-completion && dobashcomp src/*/*/*.bash
dodoc src/*/*/*.?
}

# vim: set syntax=modeline notabexpand
95 changes: 95 additions & 0 deletions net-misc/jool/jool-4.1.8.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
# SPDX-License-Identifier: GPL-2.0
# Copyright 2022-2024 Jason André Charles Gantner
# Distributed under the terms of the GNU General Public License v2

EAPI=8

DESCRIPTION="An Open Source implementation of multiple NAT64 RFC for linux"
HOMEPAGE="https://jool.mx/"
IUSE="bash-completion dist-kernel doc iptables +nat64 +siit +tools"
SLOT="0"
LICENSE="GPL-2 doc? ( FDL-1.3 )"
KEYWORDS="~amd64"
SRC_URI="
https://github.com/NICMx/Jool/releases/download/v${PV}/${P}.tar.gz
verify-sig? ( https://github.com/NICMx/Jool/releases/download/v${PV}/${P}.tar.gz.asc )
"

REQUIRED_USE="
|| ( nat64 siit )
"

inherit linux-mod bash-completion-r1

# Autotools config
WANT_AUTOCONF='latest'
WANT_LIBTOOL='latest'
AUTOTOOLS_AUTO_DEPEND='no'

# verify-sig config
VERIFY_SIG_OPENPGP_KEY_PATH=

# inherit now that necessary config has been added
inherit verify-sig autotools

DEPEND="
iptables? ( net-firewall/iptables )
"
RDEPEND="${DEPEND}"
BDEPEND="
sys-kernel/linux-headers
tools? ( ${AUTOTOOLS_DEPEND} )
doc? ( www-apps/jekyll )
dist-kernel? ( virtual/dist-kernel )
"

#TODO: add te following line once the upstream signing keys has been identified and packaged
# verify-sig? ( sec-keys/openpgp-keys- )

# linux-mod config
BUILD_TARGETS='clean modules'
MODULES_NAMES='jool_common(extra:src/mod/common)'

pkg_pretend(){
use_m 3 13 0 || {
eerror 'Supported Linux kernels are >= 3.13.0'
die
}
if use siit;then
MODULES_NAMES+=' jool_siit(extra:src/mod/jool_siit)'
fi
if use nat64;then
MODULES_NAMES+=' jool(extra:src/mod/jool)'
fi
}

pkg_setup(){
linux-mod_pkg_setup
}

src_prepare(){
eautoreconf && econf
}

src_compile(){
linux-mod_src_compile

if use tools; then
emake -C "${S}/src/tools"
fi

if use doc; then
cd docs && jekyll build || die
fi
}

src_install(){
default
if use doc;then
dodoc -r docs/_site
fi
use bash-completion && dobashcomp src/*/*/*.bash
dodoc src/*/*/*.?
}

# vim: set syntax=modeline notabexpand
70 changes: 70 additions & 0 deletions net-misc/jool/jool-9999.ebuid
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

inherit linux-mod-r1 git-r3

DESCRIPTION="An Open Source implementaion of SIIT and NAT64 for linux"
HOMEPAGE="https://jool.mx/"
IUSE="bash_completion dist-kernel doc iptables mapt nat64 siit tools"
SLOT="0"
LICENSE="GPL-2 doc? ( FDL-1.3 )"

EGIT_REPO_URI="https://github.com/NICMx/Jool.git"
KEYWORDS="~amd64"

# Autotools config
WANT_AUTOCONF='latest'
WANT_LIBTOOL='latest'
AUTOTOOLS_AUTO_DEPEND='no'

# linux-mod config
BUILD_TARGETS='clean modules'
MODULES_NAMES='jool_common(extra:src/mod/common)'

use tools && inherit autotools

DEPEND="
iptables? ( dev-libs/libxtables )
"
RDEPEND="${DEPEND}"
BDEPEND="
virtual/linux-headers
tools? ( ${AUTOTOOLS_DEPEND} )
doc? ( www-apps/jekyll )
verify-sig? ( sec-keys/openpgp-keys- )
dist-kernel? ( virtual/dist-kernel )
"

pkg_pretend(){
use_m 3 13 0 || {
eerror 'Supported Linux kernels are >= 3.13.0'
die
}
}

pkg_setup(){
linux-mod_pkg_setup
}

src_prepare(){
eautoreconf && econf
}

src_compile(){
linux-mod_src_compile

if use doc; then
cd docs && jekyll build || die
fi
}

src_install(){
default
if use doc;then
dohtml -r docs/_site
fi
}

# vim: set syntax=modeline notabexpand
18 changes: 18 additions & 0 deletions net-misc/jool/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>[email protected]</email>
<name>Jason André Charles Gantner</name>
</maintainer>
<use>
<flag name="iptables">Build xtable modules to enable <pkg>net-firewall/iptables</pkg> (legacy) support instead of relying on netfilters (accessible trough <pkg>net-firewall/nftables</pkg>)</flag>
<flag name="mapt">Enable NAT64 Jool implementing RFC6146</flag>
<flag name="nat64">Enable MAP-T Jool implementing RFC7597 and RFC7599</flag>
<flag name="siit">Enable SIIT Jool implementing RFCXXXX</flag>
<flag name="bash-completion">install completers for bash</flag>
<flag name="tools">Also build userspace tools to interact with the kernel modules
You SHOULD select this use flag unless you have other userspace tools to interact with jool
</flag>
</use>
</pkgmetadata>

0 comments on commit 5da124b

Please sign in to comment.