Merge updates from master

This commit is contained in:
Repository mirror & CI
2023-05-01 13:50:16 +00:00
78 changed files with 150 additions and 5846 deletions

View File

@@ -20,8 +20,10 @@ SLOT="0"
KEYWORDS="amd64 x86"
IUSE="berkdb exif geo postscript +rcs +reports spell test"
RESTRICT="!test? ( test )
!berkdb? ( test )"
# Previously had: !berkdb? ( test ) combined w/ dev-python/bsddb3 dep only for py3.9
# so now restricted entirely.
# See also https://github.com/gramps-project/gramps/pull/1408.
RESTRICT="test"
RDEPEND="
$(python_gen_cond_dep '
@@ -34,9 +36,6 @@ RDEPEND="
>x11-libs/gtk+-3.14.8:3[introspection]
x11-libs/pango[introspection]
x11-misc/xdg-utils
berkdb? ( $(python_gen_cond_dep '
dev-python/bsddb3[${PYTHON_USEDEP}]
' python3_9) )
geo? ( >=sci-geosciences/osm-gps-map-1.1.0 )
spell? ( app-text/gtkspell:3[introspection] )
rcs? ( dev-vcs/rcs )
@@ -97,13 +96,6 @@ pkg_postinst() {
xdg_desktop_database_update
xdg_icon_cache_update
xdg_mimeinfo_database_update
if use berkdb; then
ewarn "The BSDDB back-end in ${PN} has got known stability and data-corruption issues. It has been deprecated since version 5.1.0 and might be removed in 5.2.0."
ewarn "If you have any family trees in this format you are highly advised to convert them to SQLite, as described here:"
ewarn
ewarn "https://gramps-project.org/wiki/index.php/Gramps_5.1_Wiki_Manual_-_Manage_Family_Trees#Converting_a_BSDDB_Family_Tree_to_SQLite"
fi
}
pkg_postrm() {

View File

@@ -18,9 +18,9 @@ python3_5 dead 3.5
python3_6 dead 3.6
python3_7 dead 3.7
python3_8 dead 3.8
python3_9 old 3.9
python3_10 current 3.10
python3_11 supported 3.11
python3_9 dead 3.9
python3_10 supported 3.10
python3_11 current 3.11
pypy1_8 2.7-pypy-1.8 dead p1.8
pypy1_9 2.7-pypy-1.9 dead p1.9

View File

@@ -43,7 +43,6 @@ RESTRICT="!test? ( test )"
RDEPEND="
app-arch/bzip2:=
app-arch/xz-utils:=
dev-lang/python-exec[python_targets_python3_9(-)]
dev-libs/libffi:=
dev-python/gentoo-common
sys-apps/util-linux:=

View File

@@ -40,7 +40,7 @@ inherit multiprocessing toolchain-funcs
# All supported Python implementations, most preferred last.
_PYTHON_ALL_IMPLS=(
pypy3
python3_{9..11}
python3_{10..11}
)
readonly _PYTHON_ALL_IMPLS
@@ -52,7 +52,7 @@ _PYTHON_HISTORICAL_IMPLS=(
jython2_7
pypy pypy1_{8,9} pypy2_0
python2_{5..7}
python3_{1..8}
python3_{1..9}
)
readonly _PYTHON_HISTORICAL_IMPLS
@@ -131,7 +131,7 @@ _python_set_impls() {
case ${i} in
pypy3|python3_9|python3_1[01])
;;
jython2_7|pypy|pypy1_[89]|pypy2_0|python2_[5-7]|python3_[1-8])
jython2_7|pypy|pypy1_[89]|pypy2_0|python2_[5-7]|python3_[1-9])
obsolete+=( "${i}" )
;;
*)
@@ -440,8 +440,6 @@ _python_export() {
PYTHON_PKG_DEP)
local d
case ${impl} in
python3.9)
PYTHON_PKG_DEP=">=dev-lang/python-3.9.16-r1:3.9";;
python3.10)
PYTHON_PKG_DEP=">=dev-lang/python-3.10.9-r1:3.10";;
python3.11)

View File

@@ -64,7 +64,7 @@ tmpfile=$(mktemp)
inherit python-utils-r1
for minor in 9 10 11; do
for minor in 10 11; do
ebegin "Testing python3.${minor}"
eindent
test_var EPYTHON "python3_${minor}" "python3.${minor}"
@@ -199,16 +199,10 @@ test_is "_python_impl_matches python3_6 python*" 0
test_is "_python_impl_matches python3_7 python*" 0
test_is "_python_impl_matches pypy3 python*" 1
set +f
test_is "_python_impl_matches python3_9 3.9" 0
test_is "_python_impl_matches python3_9 3.10" 1
test_is "_python_impl_matches python3_9 3.11" 1
test_is "_python_impl_matches python3_10 3.9" 1
test_is "_python_impl_matches python3_10 3.10" 0
test_is "_python_impl_matches python3_10 3.11" 1
test_is "_python_impl_matches python3_11 3.9" 1
test_is "_python_impl_matches python3_11 3.10" 1
test_is "_python_impl_matches python3_11 3.11" 0
test_is "_python_impl_matches pypy3 3.9" 0
test_is "_python_impl_matches pypy3 3.10" 1
test_is "_python_impl_matches pypy3 3.11" 1
eoutdent

View File

@@ -1,2 +1 @@
DIST pypacker-5.1.tar.gz 623638 BLAKE2B 329e8ec2af336118a4ff8d200ced2e356a10dae5217582fb69b77be336e830d3c2356165ea42be6224ef8fd2291637b23fde35733652969affae1f81eb2411dc SHA512 427d2afc45735e920867098c77be8256e28840031a7a01dfae5c9817ff78d2ddb699bf94721eda3b1f4b568bb70bd3bd25ccb8cb77076b84e2aa71898ba0bf57
DIST pypacker-v5.2.tar.bz2 544026 BLAKE2B 3401b47a496e8c76d2b925e63c43838d2a05af01655a3e470ddfd0c2c57ab6b37ba1b9acd49386232b5c0fb4bc8d061f8992eac07f5729306502fa76413c51f5 SHA512 3ccb82ff2a352553819991c0e24fb6da8a26091f5cdced3d3358192ecf6598153fb3b36d48b1f51cdc1dd7f54e136c073e8e5a2f3fb050af24f83c77e1bda3b4

View File

@@ -1,29 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{9..10} )
inherit distutils-r1 vcs-snapshot
DESCRIPTION="Fast and simple packet creation and parsing library for Python"
HOMEPAGE="https://gitlab.com/mike01/pypacker"
SRC_URI="https://gitlab.com/mike01/pypacker/-/archive/v${PV}/pypacker-v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="examples"
DOCS=( AUTHORS CHANGES HACKING README.md )
python_test() {
"${EPYTHON}" tests/test_pypacker.py || die
}
python_install_all() {
distutils-r1_python_install_all
use examples && dodoc -r examples
}

View File

@@ -1,2 +1 @@
DIST scanlogd-2.2.7.tar.gz 11352 BLAKE2B 480e1ef78ac35ff04fb44961aa501f997786e20a3501f54f74b9e5761edba4736341d364a9a10772d795cb6025b88399bf3b56b0a980a0d2d0787f7a66eeeb22 SHA512 56238cb91a33524a9512914568984ed0d066eb84bea1c08551fbc4e02c9643a3f9535d59b364db00d538e4d9bcd9650ac24f2042584d3a9c639f99eb77ba1a7b
DIST scanlogd-2.2.8.tar.gz 12190 BLAKE2B 26396c3174de3d3cceed9833354cae7d7bbcf3078a81472ae1fa28856f011e6984fa8182a994d5a10632c19f15f86e31f1ee73309273cad04e05fec942afa0a4 SHA512 92f7a28dd40593dad6afae4fd0572efeceea3f43f334ff82c349538d4a28e9ab624912f82fc5c102a4a9937009bbf7b76a81029588e2815ff9b305144143572a

View File

@@ -1,50 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit savedconfig toolchain-funcs
DESCRIPTION="A port scan detection tool"
SRC_URI="http://www.openwall.com/scanlogd/${P}.tar.gz"
HOMEPAGE="http://www.openwall.com/scanlogd/"
LICENSE="scanlogd GPL-2" # GPL-2 for initscript
SLOT="0"
KEYWORDS="~amd64 ~ppc x86"
IUSE="+nids pcap"
REQUIRED_USE="?? ( nids pcap )"
DEPEND="
nids? ( net-libs/libnids )
pcap? ( net-libs/libpcap )
"
RDEPEND="
${DEPEND}
acct-group/scanlogd
acct-user/scanlogd
"
PATCHES=(
"${FILESDIR}"/${P}-gentoo.patch
)
src_prepare() {
default
restore_config params.h
tc-export CC
}
src_compile() {
local target=linux
use nids && target=libnids
use pcap && target=libpcap
emake ${target}
}
src_install() {
dosbin scanlogd
doman scanlogd.8
newinitd "${FILESDIR}"/scanlogd.rc scanlogd
save_config params.h
}

View File

@@ -1,2 +1 @@
DIST scapy-2.4.5.tar.gz 3323309 BLAKE2B af94b3ec6324c4544aca25f63bcca8aa60a3b1cbbf132d3ed07b5bc73b95e4298bf250e65157bdb7851226fd0ac039367892a9a14d844e5815832ad4ab556819 SHA512 b5ccd689f7bd4fbbb86921a35360b94ec7a738b494f16e4764828689835296016bc476825add798406e4d32761d8df90b41ce7e38049afdabf98397b1bf5982a
DIST scapy-2.5.0.tar.gz 6082895 BLAKE2B 2673de913d46532760dce93914916b909a4706d846e1e699c16f35b738cac8a073e23b194f9ed4647ade41170a04849ebd33ab3d0ba5b7f09fea8fa527e14c5d SHA512 4e5cacff0bbf6fd991ea24f4680049d042082fae4b349c8082078e6f01b38c09bb5c8276bfba15d4a88a1eb5af92c505848ec98556b10eecbd803f134a5b244a

View File

@@ -1,48 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PYTHON_COMPAT=( python3_{9..10} )
DISTUTILS_USE_SETUPTOOLS=rdepend
inherit distutils-r1 readme.gentoo-r1
DESCRIPTION="A Python interactive packet manipulation program for mastering the network"
HOMEPAGE="https://scapy.net/ https://github.com/secdev/scapy"
SRC_URI="https://github.com/secdev/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm ~arm64 x86"
DOC_CONTENTS="
Scapy has optional support for the following packages:
dev-python/cryptography
dev-python/ipython
dev-python/matplotlib
dev-python/pyx
media-gfx/graphviz
net-analyzer/tcpdump
net-analyzer/tcpreplay
net-libs/libpcap
virtual/imagemagick-tools
See also ""${EPREFIX}/usr/share/doc/${PF}/installation.rst""
"
src_prepare() {
if ! [[ -f ${PN}/VERSION ]]; then
echo ${PV} > ${PN}/VERSION || die
else
die
fi
distutils-r1_src_prepare
}
src_install() {
distutils-r1_src_install
dodoc -r doc/${PN}/*
DISABLE_AUTOFORMATTING=plz readme.gentoo_create_doc
}

View File

@@ -1,247 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
LUA_COMPAT=( luajit )
inherit autotools lua-single systemd tmpfiles
DESCRIPTION="The de facto standard for intrusion detection/prevention"
HOMEPAGE="https://www.snort.org"
SRC_URI="https://www.snort.org/downloads/archive/${PN}/${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~mips ~ppc ~ppc64 ~sparc ~x86"
IUSE="+active-response control-socket debug file-inspect +flexresp3 +gre
high-availability inline-init-failopen large-pcap-64bit +libtirpc
linux-smp-stats +non-ether-decoders open-appid +perfprofiling +ppm +react
reload-error-restart selinux shared-rep side-channel sourcefire +threads"
DEPEND="acct-user/snort
acct-group/snort
dev-libs/libdnet
>=dev-libs/libpcre-8.33
net-libs/libnsl:0=
>=net-libs/libpcap-1.3.0
sys-libs/zlib
!libtirpc? ( sys-libs/glibc[rpc(-)] )
libtirpc? ( net-libs/libtirpc )
open-appid? ( ${LUA_DEPS} )"
BDEPEND=">=net-libs/daq-2.0.2"
RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-snort )"
REQUIRED_USE="!kernel_linux? ( !shared-rep )
open-appid? ( ${LUA_REQUIRED_USE} )"
PATCHES=(
"${FILESDIR}/${PN}-2.9.8.3-no-implicit.patch"
"${FILESDIR}/${PN}-2.9.8.3-rpc.patch"
"${FILESDIR}/${PN}-2.9.12-snort.pc.patch"
)
pkg_setup() {
use open-appid && lua-single_pkg_setup
}
src_prepare() {
default
mv configure.{in,ac} || die
# USE=debug exposes a macro whose name apparently wasn't changed
sed -i -e 's/BEFORE_SRV_FAIL/BEFORE_SERVICE_FAIL/' \
src/dynamic-preprocessors/appid/appInfoTable.c || die
AT_M4DIR=m4 eautoreconf
}
src_configure() {
econf \
$(use_enable gre) \
$(use_enable control-socket) \
$(use_enable file-inspect) \
$(use_enable high-availability ha) \
$(use_enable non-ether-decoders) \
$(use_enable shared-rep) \
$(use_enable side-channel) \
$(use_enable sourcefire) \
$(use_enable ppm) \
$(use_enable perfprofiling) \
$(use_enable linux-smp-stats) \
$(use_enable inline-init-failopen) \
$(use_enable open-appid) \
$(use_enable threads pthread) \
$(use_enable debug) \
$(use_enable debug debug-msgs) \
$(use_enable debug corefiles) \
$(use_enable !debug dlclose) \
$(use_enable active-response) \
$(use_enable reload-error-restart) \
$(use_enable react) \
$(use_enable flexresp3) \
$(use_enable large-pcap-64bit large-pcap) \
$(use_with libtirpc) \
--enable-mpls \
--enable-normalizer \
--enable-reload \
--enable-targetbased \
--disable-build-dynamic-examples \
--disable-profile \
--disable-ppm-test \
--disable-intel-soft-cpm \
--disable-static-daq \
--disable-static \
--disable-so-with-static-lib
}
src_install() {
default
keepdir /var/log/snort \
/etc/snort/rules \
/etc/snort/so_rules \
/usr/$(get_libdir)/snort_dynamicrules
# config.log and build.log are needed by Sourcefire
# to trouble shoot build problems and bug reports so we are
# perserving them incase the user needs upstream support.
dodoc RELEASE.NOTES ChangeLog \
doc/* \
tools/u2boat/README.u2boat
insinto /etc/snort
doins etc/attribute_table.dtd \
etc/classification.config \
etc/gen-msg.map \
etc/reference.config \
etc/threshold.conf \
etc/unicode.map
# We use snort.conf.distrib because the config file is complicated
# and the one shipped with snort can change drastically between versions.
# Users should migrate setting by hand and not with etc-update.
newins etc/snort.conf snort.conf.distrib
# config.log and build.log are needed by Sourcefire
# to troubleshoot build problems and bug reports so we are
# preserving them incase the user needs upstream support.
if [ -f "${WORKDIR}/${PF}/config.log" ]; then
dodoc "${WORKDIR}/${PF}/config.log"
fi
if [ -f "${T}/build.log" ]; then
dodoc "${T}/build.log"
fi
insinto /etc/snort/preproc_rules
doins preproc_rules/decoder.rules \
preproc_rules/preprocessor.rules \
preproc_rules/sensitive-data.rules
fowners -R snort:snort \
/var/log/snort \
/etc/snort
newinitd "${FILESDIR}/snort.rc12" snort
newconfd "${FILESDIR}/snort.confd.2" snort
systemd_newunit "${FILESDIR}/snort_at.service" "snort@.service"
newtmpfiles "${FILESDIR}"/snort.tmpfiles snort.conf
# Sourcefire uses Makefiles to install docs causing Bug #297190.
# This removes the unwanted doc directory and rogue Makefiles.
rm -rf "${ED}"/usr/share/doc/snort || die "Failed to remove SF doc directories"
rm "${ED}"/usr/share/doc/"${PF}"/Makefile* || die "Failed to remove doc make files"
# Remove unneeded .la files (Bug #382863)
find "${ED}" -name '*.la' -type f -delete || die
# Set the correct lib path for dynamicengine, dynamicpreprocessor, and dynamicdetection
sed -i -e 's|/usr/local/lib|/usr/'$(get_libdir)'|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
# Set the correct rule location in the config
sed -i -e 's|RULE_PATH ../rules|RULE_PATH /etc/snort/rules|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
# Set the correct preprocessor/decoder rule location in the config
sed -i -e 's|PREPROC_RULE_PATH ../preproc_rules|PREPROC_RULE_PATH /etc/snort/preproc_rules|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
# Enable the preprocessor/decoder rules
sed -i -e 's|^# include $PREPROC_RULE_PATH|include $PREPROC_RULE_PATH|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
sed -i -e 's|^# dynamicdetection directory|dynamicdetection directory|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
# Just some clean up of trailing /'s in the config
sed -i -e 's|snort_dynamicpreprocessor/$|snort_dynamicpreprocessor|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
# Make it clear in the config where these are...
sed -i -e 's|^include classification.config|include /etc/snort/classification.config|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
sed -i -e 's|^include reference.config|include /etc/snort/reference.config|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
# Disable all rule files by default.
sed -i -e 's|^include $RULE_PATH|# include $RULE_PATH|g' \
"${ED%}/etc/snort/snort.conf.distrib" || die
# Set the configured DAQ to afpacket
sed -i -e 's|^# config daq: <type>|config daq: afpacket|g' \
"${ED%}/etc/snort/snort.conf.distrib" || die
# Set the location of the DAQ modules
sed -i -e 's|^# config daq_dir: <dir>|config daq_dir: /usr/'$(get_libdir)'/daq|g' \
"${ED%}/etc/snort/snort.conf.distrib" || die
# Set the DAQ mode to passive
sed -i -e 's|^# config daq_mode: <mode>|config daq_mode: passive|g' \
"${ED%}/etc/snort/snort.conf.distrib" || die
# Set snort to run as snort:snort
sed -i -e 's|^# config set_gid:|config set_gid: snort|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
sed -i -e 's|^# config set_uid:|config set_uid: snort|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
# Set the default log dir
sed -i -e 's|^# config logdir:|config logdir: /var/log/snort/|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
# Set the correct so_rule location in the config
sed -i -e 's|SO_RULE_PATH ../so_rules|SO_RULE_PATH /etc/snort/so_rules|g' \
"${ED}/etc/snort/snort.conf.distrib" || die
}
pkg_postinst() {
tmpfiles_process snort.conf
einfo "There have been a number of improvements and new features"
einfo "added to ${P}. Please review the RELEASE.NOTES and"
einfo "ChangLog located in /usr/share/doc/${PF}."
einfo
elog "The Sourcefire Vulnerability Research Team (VRT) recommends that"
elog "users migrate their snort.conf customizations to the latest config"
elog "file released by the VRT. You can find the latest version of the"
elog "Snort config file in /etc/snort/snort.conf.distrib."
elog
elog "!! It is important that you migrate to this new snort.conf file !!"
elog
elog "This version of the ebuild includes an updated init.d file and"
elog "conf.d file that rely on options found in the latest Snort"
elog "config file provided by the VRT."
if use debug; then
elog "You have the 'debug' USE flag enabled. If this has been done to"
elog "troubleshoot an issue by producing a core dump or a back trace,"
elog "then you need to also ensure the FEATURES variable in make.conf"
elog "contains the 'nostrip' option."
fi
}

View File

@@ -1,7 +1,3 @@
DIST tcpdump-4.99.1-upstream.tar.gz 2014324 BLAKE2B 0a10fe68afdfe80d3e7e661352fcaf1c47702df27fbed959f52fb0ec81543a1d4ce6b0de16a8b081de48dd43e09a13f5e1f0fb11d7590f92cbff29dc511bea12 SHA512 53d31355e1a6ef5a65bb3bf72454169fc80adf973a327a5768840e6ccf0550fbeb3c8a41f959635076d871df0619680321910a3a97879607f481cdaa8b7ceda7
DIST tcpdump-4.99.1-upstream.tar.gz.sig 442 BLAKE2B 9a80b1796ef777bd06d0b8953fe1ff446431d0ff1dffcd58e29a0b771f6734f70f3f0da7c36a1eaa1b6e57719d79c601872a84b7734208a7e8951cad9aca86ee SHA512 b438643701efbbb5579d9d51ed48756a47dd644e0acb10b0edff6d04f3ae4cea6528b40820a656407b73f983b2a634e0165a6c8c0fca3b557394a14e2f2384ab
DIST tcpdump-4.99.2.tar.gz 1897480 BLAKE2B be13fbf493478270c8ebc034a3c1467907a008ce2ed9632a87b7d7b9104b9fda248cd535da7313a1c3d57ca21f324c25593812590b96ec334c474d1ce06f3fd5 SHA512 7986e7517441872d4461da23dc546c01e23449108974458a4e5e493db6f066f9e7da801623a6c43cfa2079ac3d409f813d1ffde2ecc12b6dba661dae0693b735
DIST tcpdump-4.99.2.tar.gz.sig 442 BLAKE2B 011c93803a1c339f9ce46dedb8e3420d77c5362575061c9b852647d8e8de6936079150240b444f660a84b9e45337960b8878e7c4de1f4e6ad2fff16225811d24 SHA512 33704e9b2ece65ca8a1fbf8234088e561f132a561ac859da32c7fb4d4caaeabd9a4b50ac8f939e48c18e672dade9393c7e56bc838ec8ac9828be5360e99e5692
DIST tcpdump-4.99.3.tar.gz 1901814 BLAKE2B 8e8adda6df40f3a79cbeb80bd01d43834e0b3ec44c8227bda2260b43ea0852f76beb02199120cca16adae0d793841cf684e7e276e520f49479a1b04ab1dc4821 SHA512 e1442e923d89f367cfe403dc460d0d46e19a241470d56b30b7a411bedd8d21a78c428f20ffe725cbb4fa5068f7dcc5c93d206e1a8d53feb9bccc6f0cda8bf0f9
DIST tcpdump-4.99.3.tar.gz.sig 442 BLAKE2B 97dbac4534f9b9daf0ab89d6a230835690737827330d4a6f15e7450bd8aed24af2bc097bf41511bb40534687623ffe63fb766c5e344ce66483c9dd5f34427155 SHA512 a7dfd95c11fa9066740552acc9ebfa1c674ba9242dfb6dddf27658845245b8677b4c2da392cfe1447f32b929e108e9ff5326a94cdc0be9502a05e0efc15a5934
DIST tcpdump-4.99.4.tar.gz 1903612 BLAKE2B f100e10774574ef04a770bc30d4e2d06fd0f1f16a7b2c88848be6e8290cc4838666ff378d9f78fdc418f4ffab9716a11214edc3588c292cb5ff39636cd7cfd2d SHA512 cb51e19574707d07c0de90dd4c301955897f2c9f2a69beb7162c08f59189f55625346d1602c8d66ab2b4c626ea4b0df1f08ed8734d2d7f536d0a7840c2d6d8df

View File

@@ -1,57 +0,0 @@
https://github.com/the-tcpdump-group/tcpdump/pull/1007
From 4fa4e8db882b6298f5504d866665441ba7594df3 Mon Sep 17 00:00:00 2001
From: Sam James <sam@gentoo.org>
Date: Mon, 12 Sep 2022 17:28:58 +0100
Subject: [PATCH] configure.ac: fix configure tests broken with Clang 15
(implicit function declarations)
Clang 15 makes implicit function declarations fatal by default which
leads to some of tcpdump's configure tests silently failing/returning
the wrong result.
This adds the needed #includes to various tests for the functions used,
resolving the following errors:
```
net-analyzer/tcpdump-4.99.1/clang15.log:47:error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int [-Wimplicit-int]
net-analyzer/tcpdump-4.99.1/clang15.log:51:error: call to undeclared library function 'strcmp' with type 'int (const char *, const char *)'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
net-analyzer/tcpdump-4.99.1/clang15.log:55:error: call to undeclared library function 'sscanf' with type 'int (const char *restrict, const char *restrict, ...)'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
net-analyzer/tcpdump-4.99.1/clang15.log:68:error: call to undeclared library function 'memset' with type 'void *(void *, int, unsigned long)'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
net-analyzer/tcpdump-4.99.1/clang15.log:112:error: call to undeclared function 'ether_ntohost'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
net-analyzer/tcpdump-4.99.1/clang15.log:115:error: call to undeclared library function 'exit' with type 'void (int) __attribute__((noreturn))'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
```
Signed-off-by: Sam James <sam@gentoo.org>
--- a/configure.ac
+++ b/configure.ac
@@ -87,8 +87,11 @@ if test "x$with_smi" != "xno" ; then
AC_TRY_RUN(
[
/* libsmi available check */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
#include <smi.h>
-main()
+int main()
{
int current, revision, age, n;
const int required = 2;
@@ -264,6 +267,7 @@ AC_COMPILE_IFELSE(
[
AC_LANG_SOURCE(
[[
+#include <string.h>
/* AF_INET6 available check */
#include <sys/types.h>
#ifdef _WIN32
@@ -473,6 +477,8 @@ AC_CHECK_FUNCS(ether_ntohost, [
AC_CACHE_CHECK(for buggy ether_ntohost, ac_cv_buggy_ether_ntohost, [
AC_TRY_RUN([
#include <netdb.h>
+ #include <netinet/ether.h>
+ #include <stdlib.h>
#include <sys/types.h>
#include <sys/param.h>
#include <sys/socket.h>

View File

@@ -1,107 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="A tool for network monitoring and data acquisition"
HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/tcpdump"
if [[ ${PV} == *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/the-tcpdump-group/tcpdump"
else
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc
inherit verify-sig
# Note: drop -upstream on bump, this is just because we switched to the official
# distfiles for verify-sig
SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz -> ${P}-upstream.tar.gz"
SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig -> ${P}-upstream.tar.gz.sig )"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
fi
LICENSE="BSD"
SLOT="0"
IUSE="+drop-root +smi +ssl +samba suid test"
REQUIRED_USE="test? ( samba )"
RESTRICT="!test? ( test )"
# Assorted failures: bug #768498
#RESTRICT="test"
RDEPEND="
>=net-libs/libpcap-1.10.1
drop-root? (
acct-group/pcap
acct-user/pcap
sys-libs/libcap-ng
)
smi? ( net-libs/libsmi )
ssl? (
>=dev-libs/openssl-0.9.6m:0=
)
suid? (
acct-group/pcap
acct-user/pcap
)
"
DEPEND="
${RDEPEND}
test? (
dev-lang/perl
)
"
BDEPEND="drop-root? ( virtual/pkgconfig )"
if [[ ${PV} != *9999* ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )"
fi
PATCHES=(
"${FILESDIR}"/${PN}-9999-libdir.patch
"${FILESDIR}"/${PN}-4.99.1-clang15-configure.patch
)
src_prepare() {
default
eautoreconf
}
src_configure() {
econf \
$(use_enable samba smb) \
$(use_with drop-root cap-ng) \
$(use_with drop-root chroot '') \
$(use_with smi) \
$(use_with ssl crypto "${ESYSROOT}/usr") \
$(usex drop-root "--with-user=pcap" "")
}
src_test() {
if [[ ${EUID} -ne 0 ]] || ! use drop-root ; then
emake check
else
ewarn "If you want to run the test suite, make sure you either"
ewarn "set FEATURES=userpriv or set USE=-drop-root"
fi
}
src_install() {
dosbin tcpdump
doman tcpdump.1
dodoc *.awk
dodoc CHANGES CREDITS README.md
if use suid ; then
fowners root:pcap /usr/sbin/tcpdump
fperms 4110 /usr/sbin/tcpdump
fi
}
pkg_postinst() {
use suid && elog "To let normal users run tcpdump, add them to the pcap group."
}

View File

@@ -1,103 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
DESCRIPTION="A tool for network monitoring and data acquisition"
HOMEPAGE="https://www.tcpdump.org/ https://github.com/the-tcpdump-group/tcpdump"
if [[ ${PV} == *9999* ]] ; then
inherit git-r3
EGIT_REPO_URI="https://github.com/the-tcpdump-group/tcpdump"
else
VERIFY_SIG_OPENPGP_KEY_PATH=${BROOT}/usr/share/openpgp-keys/tcpdump.asc
inherit verify-sig
SRC_URI="https://www.tcpdump.org/release/${P}.tar.gz"
SRC_URI+=" verify-sig? ( https://www.tcpdump.org/release/${P}.tar.gz.sig )"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
fi
LICENSE="BSD"
SLOT="0"
IUSE="+drop-root +smi +ssl +samba suid test"
REQUIRED_USE="test? ( samba )"
# Assorted failures: bug #768498
RESTRICT="test"
RDEPEND="
>=net-libs/libpcap-1.10.1
drop-root? (
acct-group/pcap
acct-user/pcap
sys-libs/libcap-ng
)
smi? ( net-libs/libsmi )
ssl? (
>=dev-libs/openssl-0.9.6m:0=
)
suid? (
acct-group/pcap
acct-user/pcap
)
"
DEPEND="
${RDEPEND}
test? (
dev-lang/perl
)
"
BDEPEND="drop-root? ( virtual/pkgconfig )"
if [[ ${PV} != *9999* ]] ; then
BDEPEND+=" verify-sig? ( sec-keys/openpgp-keys-tcpdump )"
fi
PATCHES=(
"${FILESDIR}"/${PN}-9999-libdir.patch
)
src_prepare() {
default
eautoreconf
}
src_configure() {
econf \
$(use_enable samba smb) \
$(use_with drop-root cap-ng) \
$(use_with drop-root chroot '') \
$(use_with smi) \
$(use_with ssl crypto "${ESYSROOT}/usr") \
$(usex drop-root "--with-user=pcap" "")
}
src_test() {
if [[ ${EUID} -ne 0 ]] || ! use drop-root ; then
emake check
else
ewarn "If you want to run the test suite, make sure you either"
ewarn "set FEATURES=userpriv or set USE=-drop-root"
fi
}
src_install() {
dosbin tcpdump
doman tcpdump.1
dodoc *.awk
dodoc CHANGES CREDITS README.md
if use suid ; then
fowners root:pcap /usr/sbin/tcpdump
fperms 4110 /usr/sbin/tcpdump
fi
}
pkg_postinst() {
use suid && elog "To let normal users run tcpdump, add them to the pcap group."
}

View File

@@ -1,2 +1 @@
DIST tcpreplay-4.4.2.tar.xz 750592 BLAKE2B c1f0bad69eca7e086aeb7100c4a35e2984a81412f81eaf981d969d24510736788e4657b511308b38ffbf88021c23272c51b9265eb2fb08318352d3eb8bed0a2a SHA512 78e5482c0cd70a55aa80167c602b33811fa01203860fab4b2d504da71a95e218356ea0cc85254e12be7cb13b611487a150f13df94f9da274661f71e921bd6045
DIST tcpreplay-4.4.3.tar.xz 750072 BLAKE2B 218fe1c5faab0fdd75a031afce8f468c85886a4cf21a4d9bd34089bd106756ee0e65e0df605efecb3260ccff266553a44d8ee10249b35524a044c6c5db86fcc7 SHA512 d8186a5faf3fbe5505da34cfc466c0375c4f298c997fe85505ea898c8c1241c16f98269596b682983a3e5cbd8493882334c925ff750d95995f3b13c5b83357cf

View File

@@ -1,60 +0,0 @@
https://github.com/appneta/tcpreplay/pull/757
From 096197e584ebb7d646eef75e5a8654f7192a0af2 Mon Sep 17 00:00:00 2001
From: Florian Weimer <fweimer@redhat.com>
Date: Thu, 24 Nov 2022 07:30:28 +0100
Subject: [PATCH] configure.ac: Avoid implicit int, implicit function
declarations
Do not call exit without declaring it. Add #include <unistd.h>
for fork. Add missing int type to the definition of main.
Implicit ints and implicit function declarations were removed from
C in 1999 and will not be supported by future compilers.
--- a/configure.ac
+++ b/configure.ac
@@ -1681,8 +1681,8 @@ int
main (int argc, char *argv[])
{
if (strncmp(PCAPNAV_VERSION, PCAPNAV_TEST, 3) >= 0)
- exit(0);
- exit(1);
+ return 0;
+ return 1;
} ]])],[libpcapnav_ver=yes
AC_MSG_RESULT(>= 0.4)],[libpcapnav_ver=no
AC_MSG_RESULT(< 0.4)],[libpcapnav_ver=no
@@ -1726,26 +1726,27 @@ case "$host_os" in
#include <sys/types.h>
#include <sys/wait.h>
#include <stdio.h>
+ #include <unistd.h>
unsigned char a[[5]] = { 1, 2, 3, 4, 5 };
- main() {
+ int main() {
unsigned int i;
pid_t pid;
int status;
/* avoid "core dumped" message */
pid = fork();
if (pid < 0)
- exit(2);
+ return 2;
if (pid > 0) {
/* parent */
pid = waitpid(pid, &status, 0);
if (pid < 0)
- exit(3);
- exit(!WIFEXITED(status));
+ return 3;
+ return !WIFEXITED(status);
}
/* child */
i = *(unsigned int *)&a[[1]];
printf("%d\n", i);
- exit(0);
+ return 0;
}
EOF
${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS \

View File

@@ -1,87 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools flag-o-matic
DESCRIPTION="Utilities for editing and replaying previously captured network traffic"
HOMEPAGE="http://tcpreplay.appneta.com/ https://github.com/appneta/tcpreplay"
if [[ ${PV} == *9999* ]] ; then
EGIT_REPO_URI="https://github.com/appneta/tcpreplay"
inherit git-r3
else
SRC_URI="https://github.com/appneta/${PN}/releases/download/v${PV}/${P}.tar.xz"
KEYWORDS="amd64 ~arm ~sparc x86"
fi
S="${WORKDIR}"/${P/_/-}
LICENSE="BSD GPL-3"
SLOT="0"
IUSE="debug pcapnav +tcpdump"
# libpcapnav for pcapnav-config
BDEPEND="
net-libs/libpcapnav
>=sys-devel/autogen-5.18.4[libopts]
"
DEPEND="
dev-libs/libdnet
>=net-libs/libpcap-0.9
elibc_musl? ( sys-libs/fts-standalone )
pcapnav? ( net-libs/libpcapnav )
tcpdump? ( net-analyzer/tcpdump )
"
RDEPEND="${DEPEND}"
DOCS=( docs/{CHANGELOG,CREDIT,HACKING,TODO} )
PATCHES=(
"${FILESDIR}"/${PN}-4.3.0-enable-pcap_findalldevs.patch
"${FILESDIR}"/${PN}-4.4.2-configure-clang16.patch
)
src_prepare() {
default
sed -i \
-e 's|#include <dnet.h>|#include <dnet/eth.h>|g' \
src/common/sendpacket.c || die
sed -i \
-e 's|@\([A-Z_]*\)@|$(\1)|g' \
-e '/tcpliveplay_CFLAGS/s|$| $(LDNETINC)|g' \
-e '/tcpliveplay_LDADD/s|$| $(LDNETLIB)|g' \
src/Makefile.am || die
eautoreconf
}
src_configure() {
use elibc_musl && append-flags "-lfts"
# By default it uses static linking. Avoid that, bug #252940
econf \
$(use_enable debug) \
$(use_with pcapnav pcapnav-config "${BROOT}"/usr/bin/pcapnav-config) \
$(use_with tcpdump tcpdump "${ESYSROOT}"/usr/sbin/tcpdump) \
--enable-dynamic-link \
--enable-local-libopts \
--enable-shared \
--with-libdnet \
--with-testnic2=lo \
--with-testnic=lo
}
src_test() {
if [[ ! ${EUID} -eq 0 ]] ; then
ewarn "Some tests were disabled due to FEATURES=userpriv"
ewarn "To run all tests issue the following command as root:"
ewarn " # make -C ${S}/test"
emake -j1 -C test tcpprep
else
emake -j1 test || {
ewarn "Note that some tests require eth0 iface to be up."
die "self test failed - see ${S}/test/test.log"
}
fi
}

View File

@@ -1,4 +1,2 @@
DIST tcpslice-1.5.tar.gz 136597 BLAKE2B 04512feb49d905458b06150846ea1ae5439db42567e652afb49ddfca179f60fef425db71c0a1ea0aa8c4863e170385bb0f57599ae50cc2417b2fd16e57bd02da SHA512 b9d8192c6aea60661898633a47679c8890813530c7ef7a331c1e3b711127028ccc90e6748cbf23666d74f1639ce8f71d4d7703aac707821d8abf9b9c73f2402e
DIST tcpslice-1.5.tar.gz.sig 442 BLAKE2B c7fb1b09c9fe2c0dbfd9728ff95d2414a583ed95a21c1e0476e0ed2a7b32eff2c8cf848fdb52414162e7c7df480e722f28063905e9e03093814590a474da86bc SHA512 4b948ac72672066ba679aa58b6e7fdb672d5be36ae24a503fe4093b67185d0f9466c7fe820199fb1043e6c21e015be07cf9ed020414ebf0c801aac30e3b84afe
DIST tcpslice_1.2a3-4.debian.tar.gz 5784 BLAKE2B c85beab03b494984d721ca64fb75ccb29746dee4184e4daecf2703e80f3b3d3e4330b911831960caa17d631a4760a21d17368cd7017e61c05766fd1f50c66e0e SHA512 43a0ad5811c84639be0c6d162ea92101e73240e9689e4b647ee060697382062ec0e22dcb951ca000e05bac829455b7aa37f8dd73c5b1dd87f55e6d61a8a9b59b
DIST tcpslice_1.2a3.orig.tar.gz 76879 BLAKE2B 38b20ef09c2c0fc2c956c421d131ce27748bea684bb459da13f0d29b008a4561b7f61381cfbdb9c1dbdf53478c55b412efa9af689d5425f7fbfc9f0ee32016d5 SHA512 04e12d592807022c78eb4941580ed103995680c69af885bb8f13828a12ec570f7fe93c34c1b20a01d3d99f445d5da17a1fcfbe25b2e3b41abe28304c034654c5

View File

@@ -1,10 +0,0 @@
--- a/util.c
+++ b/util.c
@@ -25,6 +25,7 @@
#endif
#include <sys/types.h>
+#include <stdlib.h> /* exit() */
#include <stdio.h>
#if __STDC__

View File

@@ -1,41 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools
MY_P="${PN}_$(ver_cut 1).$(ver_cut 2-3)$(ver_cut 5)"
DESCRIPTION="Extract and concatenate portions of pcap files"
HOMEPAGE="http://www.tcpdump.org/ https://github.com/the-tcpdump-group/tcpslice"
SRC_URI="
mirror://debian/pool/main/${PN:0:1}/${PN}/${MY_P}.orig.tar.gz
mirror://debian/pool/main/${PN:0:1}/${PN}/${MY_P}-$(ver_cut 7).debian.tar.gz
"
S="${WORKDIR}"/${MY_P/_/-}
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~ppc x86"
RDEPEND="net-libs/libpcap"
DEPEND="${RDEPEND}"
src_prepare() {
eapply "${WORKDIR}"/debian/patches/[0-]*
eapply "${FILESDIR}"/${PN}-1.2a_p3-exit.patch
default
sed -i -e 's|ifndef lint|if 0|g' *.c || die
mv configure.{in,ac} || die
eautoreconf
}
src_install() {
dosbin tcpslice
doman tcpslice.1
dodoc README
}

View File

@@ -1,2 +1 @@
DIST traceroute-2.1.0.tar.gz 71460 BLAKE2B 4c2126fa98625d525d0a1b0075d16a6ff37836e18d2ce8319f58c89bfa22a6a5e3bbe2ded22fa98d5128c7bb58578327db08120a5b78c1c4ff5673dcc0dea7e6 SHA512 3578007c734091ea0c906637c03fd133a8b0154fbf2e6b5c0c881184947918196bc03aeaf872d3bd53777b9b771cba5cf97f73fb5916bb53b75037f429b40ed3
DIST traceroute-2.1.1.tar.gz 73063 BLAKE2B 89a828f7a0fec30ece599ee7fdd13fd93db0668f6c9f930f1d6d7d94140bcfdf0c75d2d8c5cc52d699e5c4377239f1a4123ad73a98b619968955d029d0842d9f SHA512 f3358e57ffb4a8dc40650e941da879c60407414e44f9887ae65820d1089491dbfac579bd06c1df296738af89a6c61c1e7944ae4495464f8c9ae21afb19b8f296

View File

@@ -1,31 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic toolchain-funcs
DESCRIPTION="Utility to trace the route of IP packets"
HOMEPAGE="http://traceroute.sourceforge.net/"
SRC_URI="mirror://sourceforge/traceroute/${P}.tar.gz"
LICENSE="GPL-2 LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
IUSE="static"
RDEPEND="!net-misc/iputils[traceroute6(-)]"
src_compile() {
use static && append-ldflags -static
append-ldflags -L../libsupp #432116
tc-export AR CC RANLIB
emake env=yes
}
src_install() {
emake DESTDIR="${D}" prefix="${EPREFIX}/usr" install
dodoc ChangeLog CREDITS README TODO
dosym traceroute /usr/bin/traceroute6
dosym traceroute.8 /usr/share/man/man8/traceroute6.8
}

View File

@@ -1,2 +1 @@
DIST pppconfig_2.3.21.tar.gz 397243 BLAKE2B 5816d9b1e832bd0e694718960ea45c0996fa7a459f3a38e03b0021d20549b81e5a74111c03f7f485bd4dbd408b2859864a69c55858cb0a4f70283971a64192bb SHA512 e6297a6834eb806d591aee44343c6e64536e260ea8e637f3a4d4b5a752e26ae90d467ca12dd83022e071f7c2c4f111660418a6b953c4a02f5618fc54a89c2893
DIST pppconfig_2.3.25.tar.gz 392316 BLAKE2B 7c30db92cff0c9e80e04e4e7a83ccc22e2c1380831fcbc1ebd36bc4d30044c0b32669546907318be3c43061d1ea9f44b0a471f56847e75b0470f18f1aa10bf7a SHA512 6874b93ae34edb2a0ba06a669d930f5023a3eae38b6d10a78179eb69990a8280d41ebc2049461b54b03bd19904d13d2ebb57997599ed650660d0b34c958ad977

View File

@@ -1,55 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit strip-linguas
DESCRIPTION="A text menu based utility for configuring ppp"
HOMEPAGE="https://packages.qa.debian.org/p/pppconfig.html"
SRC_URI="mirror://debian/pool/main/p/${PN}/${P/-/_}.tar.gz"
SLOT="0"
LICENSE="GPL-2"
KEYWORDS="amd64 ppc x86"
IUSE="nls"
RDEPEND="
net-dialup/ppp
dev-util/dialog
dev-lang/perl"
BDEPEND="nls? ( sys-devel/gettext )"
src_prepare() {
default
use nls && strip-linguas -i po/
}
src_compile() {
default
if use nls; then
local lang
for lang in ${LINGUAS}; do
msgfmt -o po/${lang}.{m,p}o || die
done
fi
}
src_install() {
dodir /etc/chatscripts /etc/ppp/resolv
dosbin 0dns-down 0dns-up dns-clean
newsbin pppconfig pppconfig.real
dosbin "${FILESDIR}/pppconfig"
doman man/pppconfig.8
dodoc debian/{copyright,changelog}
if use nls; then
local lang
for lang in ${LINGUAS}; do
insinto /usr/share/locale/${lang}/LC_MESSAGES
newins po/${lang}.mo pppconfig.mo
done
fi
}

View File

@@ -1,214 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
PYTHON_COMPAT=( python3_{9..10} )
PYTHON_REQ_USE="gdbm"
inherit autotools flag-o-matic multilib-minimal mono-env python-single-r1 systemd
DESCRIPTION="System which facilitates service discovery on a local network"
HOMEPAGE="https://avahi.org/"
SRC_URI="https://github.com/lathiat/avahi/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="autoipd bookmarks +dbus doc gdbm gtk howl-compat +introspection ipv6 mdnsresponder-compat mono nls python qt5 selinux systemd test"
REQUIRED_USE="
python? ( dbus gdbm ${PYTHON_REQUIRED_USE} )
bookmarks? ( python )
mono? ( dbus )
howl-compat? ( dbus )
mdnsresponder-compat? ( dbus )
systemd? ( dbus )
"
RESTRICT="!test? ( test )"
DEPEND="
dev-libs/libdaemon
dev-libs/libevent:=[${MULTILIB_USEDEP}]
dev-libs/expat
dev-libs/glib:2[${MULTILIB_USEDEP}]
gdbm? ( sys-libs/gdbm:=[${MULTILIB_USEDEP}] )
qt5? ( dev-qt/qtcore:5 )
gtk? ( x11-libs/gtk+:3[${MULTILIB_USEDEP}] )
dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
kernel_linux? ( sys-libs/libcap )
introspection? ( dev-libs/gobject-introspection:= )
mono? ( dev-lang/mono )
python? (
${PYTHON_DEPS}
$(python_gen_cond_dep '
bookmarks? ( >=dev-python/twisted-16.0.0[${PYTHON_USEDEP}] )
dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
introspection? ( dev-python/pygobject:3[${PYTHON_USEDEP}] )
')
)
"
RDEPEND="
acct-user/avahi
acct-group/avahi
acct-group/netdev
autoipd? (
acct-user/avahi-autoipd
acct-group/avahi-autoipd
)
${DEPEND}
selinux? ( sec-policy/selinux-avahi )
"
BDEPEND="
dev-util/glib-utils
doc? ( app-doc/doxygen )
app-doc/xmltoman
sys-devel/gettext
virtual/pkgconfig
"
MULTILIB_WRAPPED_HEADERS=( /usr/include/avahi-qt5/qt-watch.h )
PATCHES=(
"${FILESDIR}/${P}-disable-avahi-ui-sharp.patch" # bug 769062
# These patches do not apply cleanly but may need to be re-instated.
# I'll leave them commented out for now.
# "${FILESDIR}/${PN}-0.7-qt5.patch"
# "${FILESDIR}/${PN}-0.7-CVE-2017-6519.patch"
# "${FILESDIR}/${PN}-0.7-remove-empty-avahi_discover.patch"
# "${FILESDIR}/${PN}-0.7-python3.patch"
# "${FILESDIR}/${PN}-0.7-python3-unittest.patch"
# "${FILESDIR}/${PN}-0.7-python3-gdbm.patch"
)
pkg_setup() {
use mono && mono-env_pkg_setup
use python && python-single-r1_pkg_setup
}
src_prepare() {
default
if ! use ipv6; then
sed -i \
-e "s/use-ipv6=yes/use-ipv6=no/" \
avahi-daemon/avahi-daemon.conf || die
fi
sed -i \
-e "s:\\.\\./\\.\\./\\.\\./doc/avahi-docs/html/:../../../doc/${PF}/html/:" \
doxygen_to_devhelp.xsl || die
eautoreconf
# bundled manpages
multilib_copy_sources
}
multilib_src_configure() {
local myconf=(
--disable-gtk
--disable-monodoc
--disable-python-dbus
--disable-qt3
--disable-qt4
--disable-static
--enable-manpages
--enable-glib
--enable-gobject
--enable-xmltoman
--localstatedir="${EPREFIX}/var"
--with-distro=gentoo
--with-systemdsystemunitdir="$(systemd_get_systemunitdir)"
$(use_enable dbus)
$(use_enable gdbm)
$(use_enable gtk gtk3)
$(use_enable howl-compat compat-howl)
$(use_enable mdnsresponder-compat compat-libdns_sd)
$(use_enable nls)
$(multilib_native_use_enable autoipd)
$(multilib_native_use_enable doc doxygen-doc)
$(multilib_native_use_enable introspection)
$(multilib_native_use_enable mono)
$(multilib_native_use_enable python)
$(multilib_native_use_enable test tests)
)
if use python; then
myconf+=(
$(multilib_native_use_enable dbus python-dbus)
$(multilib_native_use_enable introspection pygobject)
)
fi
if use mono; then
myconf+=( $(multilib_native_use_enable doc monodoc) )
fi
if ! multilib_is_native_abi; then
myconf+=(
# used by daemons only
--disable-libdaemon
--with-xml=none
)
fi
myconf+=( $(multilib_native_use_enable qt5) )
econf "${myconf[@]}"
}
multilib_src_compile() {
emake
multilib_is_native_abi && use doc && emake avahi.devhelp
}
multilib_src_install() {
emake install DESTDIR="${D}"
if ! use bookmarks || ! use python || ! use dbus; then
rm -f "${ED}"/usr/bin/avahi-bookmarks || die
fi
# https://github.com/lathiat/avahi/issues/28
use howl-compat && dosym avahi-compat-howl.pc /usr/$(get_libdir)/pkgconfig/howl.pc
use mdnsresponder-compat && dosym avahi-compat-libdns_sd/dns_sd.h /usr/include/dns_sd.h
if multilib_is_native_abi && use doc; then
docinto html
dodoc -r doxygen/html/.
insinto /usr/share/devhelp/books/avahi
doins avahi.devhelp
fi
# The build system creates an empty "/run" directory, so we clean it up here
rmdir "${ED}"/run || die
}
multilib_src_install_all() {
use python && python_optimize
if use autoipd; then
insinto /lib/rcscripts/net
doins "${FILESDIR}"/autoipd.sh
insinto /lib/netifrc/net
newins "${FILESDIR}"/autoipd-openrc.sh autoipd.sh
fi
dodoc docs/{AUTHORS,NEWS,README,TODO}
find "${ED}" -name '*.la' -type f -delete || die
}
pkg_postinst() {
if use autoipd; then
elog
elog "To use avahi-autoipd to configure your interfaces with IPv4LL (RFC3927)"
elog "addresses, just set config_<interface>=( autoipd ) in /etc/conf.d/net!"
elog
fi
systemd_reenable avahi-daemon.service
}

View File

@@ -1,4 +1,2 @@
DIST bind-9.16.33.tar.xz 5092516 BLAKE2B 4246b61ce91af3d494ace4b8065b4c0043b2cfaf28c6de326691a969837e7d1cfbc0dac6b1e1a5182fc32af68048abcfa1202d00022951f3caa13afb03ebeb69 SHA512 43fd2cea52dfd1115a4cca83830ab5b93208be401cdbbdff2bbf204b8f0d99fb434ad3156d3a21649488cc904ae09f145feba97b9b6918b0cf063ff5e2b10af5
DIST bind-9.16.36.tar.xz 5105696 BLAKE2B 3f506198b038ee96d9c6d5b20d629bc8cf44eadc1d86a0a0cf7126f615a929fa95fa27a63db3a5bcbff2af6aebc74a734ed5abcdfd38c9488ca89ebeb536875a SHA512 521a021456b6daf260fead75efc298dd964ff00947fd95fadb3c13d52f4c07fb61b74861601d22722e8d546dca284524fd4d770cc5cf347d9659b6df9654ed95
DIST bind-9.16.37.tar.xz 5109440 BLAKE2B 3b18f7c780ce04e296498e30c09628ad8eb89f38afdb032700455f193a3f8556029cd2e3d3c42861965d5fc776f56f761b8d21a74a0f95d82338e65fb519acfb SHA512 2c4b01f6cc598849688b5b2710caf48db47e1e860df785783ef2b140a25507b48357a9becf7911ba0feda285c4bca87764e21128fac5cf17efa47fd5134dc59f
DIST bind-9.16.39.tar.xz 5120164 BLAKE2B d9fb51435dce11c8854084cc21de79df3ae6529baead76dcf27711bcff33469d1fd6fbd3366b61bc921f92850620c9b7464d4dbe08dd0c7e2f3e5e1c1100cb79 SHA512 6e2e30815222a289e94f6857fdb6b142558ca56ecf5f8291f843f8476da8e4011042f1dd2bed031e5d9924370ae0705ce5b3ea2ce10ae830f8980b669eb26328

View File

@@ -1,160 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools flag-o-matic multiprocessing toolchain-funcs
MY_PN=${PN//-tools}
MY_PV=${PV/_p/-P}
MY_PV=${MY_PV/_rc/rc}
MY_P="${MY_PN}-${MY_PV}"
DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen"
HOMEPAGE="https://www.isc.org/software/bind https://gitlab.isc.org/isc-projects/bind9"
SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+caps doc gssapi idn libedit readline test xml"
# no PKCS11 currently as it requires OpenSSL to be patched, also see bug #409687
RESTRICT="!test? ( test )"
# libuv lower bound should be the highest value seen at
# https://gitlab.isc.org/isc-projects/bind9/-/blob/v9_16/lib/isc/netmgr/netmgr.c#L244
# to avoid issues with matching stable/testing, etc
COMMON_DEPEND="
>=dev-libs/libuv-1.42.0:=
dev-libs/openssl:=
caps? ( sys-libs/libcap )
xml? ( dev-libs/libxml2 )
idn? ( net-dns/libidn2:= )
gssapi? ( virtual/krb5 )
libedit? ( dev-libs/libedit )
!libedit? (
readline? ( sys-libs/readline:= )
)
"
DEPEND="${COMMON_DEPEND}"
RDEPEND="${COMMON_DEPEND}"
# sphinx required for man-page and html creation
BDEPEND="
virtual/pkgconfig
doc? ( dev-python/sphinx )
test? (
dev-util/cmocka
dev-util/kyua
)
"
S="${WORKDIR}/${MY_P}"
src_prepare() {
default
append-ldflags "-L${ESYSROOT}/usr/$(get_libdir)"
# Do not disable thread local storage on Solaris, it works with our
# toolchain, and it breaks further configure checks
sed -i -e '/LDFLAGS=/s/-zrelax=transtls//' configure.ac configure || die
# bug #220361
rm aclocal.m4 || die
rm -rf libtool.m4/ || die
eautoreconf
}
src_configure() {
local myeconfargs=(
--localstatedir="${EPREFIX}"/var
--without-python
--without-libjson
--without-zlib
--without-lmdb
--without-maxminddb
--disable-geoip
--with-openssl="${ESYSROOT}"/usr
$(use_with idn libidn2 "${ESYSROOT}"/usr)
$(use_with xml libxml2)
$(use_with gssapi)
$(use_with readline)
$(use_enable caps linux-caps)
AR="$(type -P $(tc-getAR))"
)
# bug 607400
if use libedit ; then
myeconfargs+=( --with-readline=-ledit )
elif use readline ; then
myeconfargs+=( --with-readline=-lreadline )
else
myeconfargs+=( --without-readline )
fi
# bug #344029
append-cflags "-DDIG_SIGCHASE"
# to expose CMSG_* macros from sys/sockets.h
[[ ${CHOST} == *-solaris* ]] && append-cflags "-D_XOPEN_SOURCE=600"
# localstatedir for nsupdate -l, bug #395785
tc-export BUILD_CC
econf "${myeconfargs[@]}"
# bug #151839
echo '#undef SO_BSDCOMPAT' >> config.h || die
}
src_compile() {
local AR="$(tc-getAR)"
emake AR="${AR}" -C lib/
emake AR="${AR}" -C bin/delv/
emake AR="${AR}" -C bin/dig/
emake AR="${AR}" -C bin/nsupdate/
emake AR="${AR}" -C bin/dnssec/
emake -C doc/man/ man $(usev doc)
}
src_test() {
# system tests ('emake test') require network configuration for IPs etc
# so we run the unit tests instead.
TEST_PARALLEL_JOBS="$(makeopts_jobs)" emake unit
}
src_install() {
local man_dir="${S}/doc/man"
local html_dir="${man_dir}/_build/html"
dodoc README CHANGES
cd "${S}"/bin/delv || die
dobin delv
doman ${man_dir}/delv.1
cd "${S}"/bin/dig || die
dobin dig host nslookup
doman ${man_dir}/{dig,host,nslookup}.1
cd "${S}"/bin/nsupdate || die
dobin nsupdate
doman ${man_dir}/nsupdate.1
if use doc; then
docinto html
dodoc ${html_dir}/nsupdate.html
fi
cd "${S}"/bin/dnssec || die
for tool in dsfromkey importkey keyfromlabel keygen \
revoke settime signzone verify; do
dobin dnssec-"${tool}"
doman ${man_dir}/dnssec-"${tool}".8
if use doc; then
docinto html
dodoc ${html_dir}/dnssec-"${tool}".html
fi
done
}

View File

@@ -1,160 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools flag-o-matic multiprocessing toolchain-funcs
MY_PN=${PN//-tools}
MY_PV=${PV/_p/-P}
MY_PV=${MY_PV/_rc/rc}
MY_P="${MY_PN}-${MY_PV}"
DESCRIPTION="bind tools: dig, nslookup, host, nsupdate, dnssec-keygen"
HOMEPAGE="https://www.isc.org/software/bind https://gitlab.isc.org/isc-projects/bind9"
SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${MY_P}.tar.xz"
LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="+caps doc gssapi idn libedit readline test xml"
# no PKCS11 currently as it requires OpenSSL to be patched, also see bug #409687
RESTRICT="!test? ( test )"
# libuv lower bound should be the highest value seen at
# https://gitlab.isc.org/isc-projects/bind9/-/blob/v9_16/lib/isc/netmgr/netmgr.c#L244
# to avoid issues with matching stable/testing, etc
COMMON_DEPEND="
>=dev-libs/libuv-1.42.0:=
dev-libs/openssl:=
caps? ( sys-libs/libcap )
xml? ( dev-libs/libxml2 )
idn? ( net-dns/libidn2:= )
gssapi? ( virtual/krb5 )
libedit? ( dev-libs/libedit )
!libedit? (
readline? ( sys-libs/readline:= )
)
"
DEPEND="${COMMON_DEPEND}"
RDEPEND="${COMMON_DEPEND}"
# sphinx required for man-page and html creation
BDEPEND="
virtual/pkgconfig
doc? ( dev-python/sphinx )
test? (
dev-util/cmocka
dev-util/kyua
)
"
S="${WORKDIR}/${MY_P}"
src_prepare() {
default
append-ldflags "-L${ESYSROOT}/usr/$(get_libdir)"
# Do not disable thread local storage on Solaris, it works with our
# toolchain, and it breaks further configure checks
sed -i -e '/LDFLAGS=/s/-zrelax=transtls//' configure.ac configure || die
# bug #220361
rm aclocal.m4 || die
rm -rf libtool.m4/ || die
eautoreconf
}
src_configure() {
local myeconfargs=(
--localstatedir="${EPREFIX}"/var
--without-python
--without-libjson
--without-zlib
--without-lmdb
--without-maxminddb
--disable-geoip
--with-openssl="${ESYSROOT}"/usr
$(use_with idn libidn2 "${ESYSROOT}"/usr)
$(use_with xml libxml2)
$(use_with gssapi)
$(use_with readline)
$(use_enable caps linux-caps)
AR="$(type -P $(tc-getAR))"
)
# bug 607400
if use libedit ; then
myeconfargs+=( --with-readline=-ledit )
elif use readline ; then
myeconfargs+=( --with-readline=-lreadline )
else
myeconfargs+=( --without-readline )
fi
# bug #344029
append-cflags "-DDIG_SIGCHASE"
# to expose CMSG_* macros from sys/sockets.h
[[ ${CHOST} == *-solaris* ]] && append-cflags "-D_XOPEN_SOURCE=600"
# localstatedir for nsupdate -l, bug #395785
tc-export BUILD_CC
econf "${myeconfargs[@]}"
# bug #151839
echo '#undef SO_BSDCOMPAT' >> config.h || die
}
src_compile() {
local AR="$(tc-getAR)"
emake AR="${AR}" -C lib/
emake AR="${AR}" -C bin/delv/
emake AR="${AR}" -C bin/dig/
emake AR="${AR}" -C bin/nsupdate/
emake AR="${AR}" -C bin/dnssec/
emake -C doc/man/ man $(usev doc)
}
src_test() {
# system tests ('emake test') require network configuration for IPs etc
# so we run the unit tests instead.
TEST_PARALLEL_JOBS="$(makeopts_jobs)" emake unit
}
src_install() {
local man_dir="${S}/doc/man"
local html_dir="${man_dir}/_build/html"
dodoc README CHANGES
cd "${S}"/bin/delv || die
dobin delv
doman ${man_dir}/delv.1
cd "${S}"/bin/dig || die
dobin dig host nslookup
doman ${man_dir}/{dig,host,nslookup}.1
cd "${S}"/bin/nsupdate || die
dobin nsupdate
doman ${man_dir}/nsupdate.1
if use doc; then
docinto html
dodoc ${html_dir}/nsupdate.html
fi
cd "${S}"/bin/dnssec || die
for tool in dsfromkey importkey keyfromlabel keygen \
revoke settime signzone verify; do
dobin dnssec-"${tool}"
doman ${man_dir}/dnssec-"${tool}".8
if use doc; then
docinto html
dodoc ${html_dir}/dnssec-"${tool}".html
fi
done
}

View File

@@ -1,5 +1,3 @@
DIST bind-9.16.33.tar.xz 5092516 BLAKE2B 4246b61ce91af3d494ace4b8065b4c0043b2cfaf28c6de326691a969837e7d1cfbc0dac6b1e1a5182fc32af68048abcfa1202d00022951f3caa13afb03ebeb69 SHA512 43fd2cea52dfd1115a4cca83830ab5b93208be401cdbbdff2bbf204b8f0d99fb434ad3156d3a21649488cc904ae09f145feba97b9b6918b0cf063ff5e2b10af5
DIST bind-9.16.36.tar.xz 5105696 BLAKE2B 3f506198b038ee96d9c6d5b20d629bc8cf44eadc1d86a0a0cf7126f615a929fa95fa27a63db3a5bcbff2af6aebc74a734ed5abcdfd38c9488ca89ebeb536875a SHA512 521a021456b6daf260fead75efc298dd964ff00947fd95fadb3c13d52f4c07fb61b74861601d22722e8d546dca284524fd4d770cc5cf347d9659b6df9654ed95
DIST bind-9.16.37.tar.xz 5109440 BLAKE2B 3b18f7c780ce04e296498e30c09628ad8eb89f38afdb032700455f193a3f8556029cd2e3d3c42861965d5fc776f56f761b8d21a74a0f95d82338e65fb519acfb SHA512 2c4b01f6cc598849688b5b2710caf48db47e1e860df785783ef2b140a25507b48357a9becf7911ba0feda285c4bca87764e21128fac5cf17efa47fd5134dc59f
DIST bind-9.16.39.tar.xz 5120164 BLAKE2B d9fb51435dce11c8854084cc21de79df3ae6529baead76dcf27711bcff33469d1fd6fbd3366b61bc921f92850620c9b7464d4dbe08dd0c7e2f3e5e1c1100cb79 SHA512 6e2e30815222a289e94f6857fdb6b142558ca56ecf5f8291f843f8476da8e4011042f1dd2bed031e5d9924370ae0705ce5b3ea2ce10ae830f8980b669eb26328
DIST dyndns-samples.tbz2 22866 BLAKE2B 409890653c6536cb9c0e3ba809d2bfde0e0ae73a2a101b4f229b46c01568466bc022bbbc37712171adbd08c572733e93630feab95a0fcd1ac50a7d37da1d1108 SHA512 83b0bf99f8e9ff709e8e9336d8c5231b98a4b5f0c60c10792f34931e32cc638d261967dfa5a83151ec3740977d94ddd6e21e9ce91267b3e279b88affdbc18cac

View File

@@ -1,382 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Re dlz/mysql and threads, needs to be verified..
# MySQL uses thread local storage in its C api. Thus MySQL
# requires that each thread of an application execute a MySQL
# thread initialization to setup the thread local storage.
# This is impossible to do safely while staying within the DLZ
# driver API. This is a limitation caused by MySQL, and not the DLZ API.
# Because of this BIND MUST only run with a single thread when
# using the MySQL driver.
EAPI=8
PYTHON_COMPAT=( python3_{9..10} )
inherit python-r1 autotools multiprocessing toolchain-funcs flag-o-matic db-use systemd tmpfiles
MY_PV="${PV/_p/-P}"
MY_PV="${MY_PV/_rc/rc}"
MY_P="${PN}-${MY_PV}"
SDB_LDAP_VER="1.1.0-fc14"
RRL_PV="${MY_PV}"
# SDB-LDAP: http://bind9-ldap.bayour.com/
DESCRIPTION="Berkeley Internet Name Domain - Name Server"
HOMEPAGE="https://www.isc.org/software/bind https://gitlab.isc.org/isc-projects/bind9"
SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${P}.tar.xz
doc? ( mirror://gentoo/dyndns-samples.tbz2 )"
LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
# -berkdb by default re bug #602682
IUSE="berkdb +caps +dlz dnstap doc dnsrps fixed-rrset geoip geoip2 gssapi
json ldap lmdb mysql odbc postgres python selinux static-libs test xml +zlib"
# sdb-ldap - patch broken
# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687
RESTRICT="!test? ( test )"
# Upstream dropped the old geoip library, but the BIND configuration for using
# GeoIP remained the same.
REQUIRED_USE="
postgres? ( dlz )
berkdb? ( dlz )
mysql? ( dlz )
odbc? ( dlz )
ldap? ( dlz )
dnsrps? ( dlz )
python? ( ${PYTHON_REQUIRED_USE} )
"
DEPEND="
acct-group/named
acct-user/named
berkdb? ( sys-libs/db:= )
dev-libs/openssl:=[-bindist(-)]
mysql? ( dev-db/mysql-connector-c:0= )
odbc? ( >=dev-db/unixODBC-2.2.6 )
ldap? ( net-nds/openldap:= )
postgres? ( dev-db/postgresql:= )
caps? ( >=sys-libs/libcap-2.1.0 )
xml? ( dev-libs/libxml2 )
geoip? ( dev-libs/libmaxminddb:= )
geoip2? ( dev-libs/libmaxminddb:= )
gssapi? ( virtual/krb5 )
json? ( dev-libs/json-c:= )
lmdb? ( dev-db/lmdb:= )
zlib? ( sys-libs/zlib )
dnstap? ( dev-libs/fstrm dev-libs/protobuf-c:= )
python? (
${PYTHON_DEPS}
dev-python/ply[${PYTHON_USEDEP}]
)
dev-libs/libuv:=
"
RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-bind )
sys-process/psmisc"
BDEPEND="
test? (
dev-util/cmocka
dev-util/kyua
)
"
S="${WORKDIR}/${MY_P}"
PATCHES=(
"${FILESDIR}/ldap-library-path-on-multilib-machines.patch"
)
src_prepare() {
default
# Should be installed by bind-tools
sed -i -r -e "s:(nsupdate|dig|delv) ::g" bin/Makefile.in || die
# bug #220361
rm aclocal.m4 || die
rm -rf libtool.m4/ || die
eautoreconf
use python && python_copy_sources
}
src_configure() {
bind_configure --without-python
use python && python_foreach_impl python_configure
}
bind_configure() {
local myeconfargs=(
AR="$(type -P $(tc-getAR))"
--prefix="${EPREFIX}"/usr
--sysconfdir=/etc/bind
--localstatedir=/var
--with-libtool
--enable-full-report
--without-readline
--with-openssl="${ESYSROOT}"/usr
$(use_with test cmocka)
# Removed in 9.17, drags in libunwind dependency too
--disable-backtrace
$(use_enable caps linux-caps)
$(use_enable dnsrps)
$(use_enable dnstap)
$(use_enable fixed-rrset)
$(use_with berkdb dlz-bdb "${ESYSROOT}"/usr)
$(use_with dlz dlopen)
$(use_with dlz dlz-filesystem)
$(use_with dlz dlz-stub)
$(use_with gssapi)
$(use_with json json-c)
$(use_with ldap dlz-ldap)
$(use_with mysql dlz-mysql)
$(use_with odbc dlz-odbc)
$(use_with postgres dlz-postgres)
$(use_with lmdb)
$(use_with xml libxml2)
$(use_with zlib)
"${@}"
)
# This is for users to start to migrate back to USE=geoip, rather than
# USE=geoip2
if use geoip ; then
myeconfargs+=( $(use_with geoip maxminddb) --enable-geoip )
elif use geoip2 ; then
# Added 2020/09/30
# Remove USE=geoip2 support after 2020/03/01
ewarn "USE=geoip2 is deprecated; update your USE flags!"
myeconfargs+=( $(use_with geoip2 maxminddb) --enable-geoip )
else
myeconfargs+=( --without-maxminddb --disable-geoip )
fi
# bug #158664
#gcc-specs-ssp && replace-flags -O[23s] -O
# To include db.h from proper path
use berkdb && append-flags "-I$(db_includedir)"
export BUILD_CC=$(tc-getBUILD_CC)
econf "${myeconfargs[@]}"
# bug #151839
echo '#undef SO_BSDCOMPAT' >> config.h || die
}
python_configure() {
pushd "${BUILD_DIR}" >/dev/null || die
bind_configure --with-python
popd >/dev/null || die
}
src_compile() {
default
use python && python_foreach_impl python_compile
}
python_compile() {
pushd "${BUILD_DIR}"/bin/python >/dev/null || die
emake
popd >/dev/null || die
}
src_test() {
# system tests ('emake test') require network configuration for IPs etc
# so we run the unit tests instead.
TEST_PARALLEL_JOBS="$(makeopts_jobs)" emake unit
}
src_install() {
default
dodoc CHANGES README
if use doc; then
docinto misc
dodoc -r doc/misc/
# might a 'html' useflag make sense?
docinto html
dodoc -r doc/arm/
docinto contrib
dodoc contrib/scripts/{nanny.pl,named-bootconf.sh}
# some handy-dandy dynamic dns examples
pushd "${ED}"/usr/share/doc/${PF} 1>/dev/null || die
tar xf "${DISTDIR}"/dyndns-samples.tbz2 || die
popd 1>/dev/null || die
fi
insinto /etc/bind
newins "${FILESDIR}"/named.conf-r8 named.conf
# ftp://ftp.rs.internic.net/domain/named.cache:
insinto /var/bind
newins "${FILESDIR}"/named.cache-r3 named.cache
insinto /var/bind/pri
newins "${FILESDIR}"/localhost.zone-r3 localhost.zone
newinitd "${FILESDIR}"/named.init-r14 named
newconfd "${FILESDIR}"/named.confd-r7 named
newenvd "${FILESDIR}"/10bind.env 10bind
# Let's get rid of those tools and their manpages since they're provided by bind-tools
rm -f "${ED}"/usr/share/man/man1/{dig,host,nslookup,delv,nsupdate}.1* || die
rm -f "${ED}"/usr/share/man/man8/nsupdate.8* || die
rm -f "${ED}"/usr/bin/{dig,host,nslookup,nsupdate} || die
rm -f "${ED}"/usr/sbin/{dig,host,nslookup,nsupdate} || die
for tool in dsfromkey importkey keyfromlabel keygen \
revoke settime signzone verify; do
rm -f "${ED}"/usr/{,s}bin/dnssec-"${tool}" || die
rm -f "${ED}"/usr/share/man/man8/dnssec-"${tool}".8* || die
done
# bug 405251, library archives aren't properly handled by --enable/disable-static
if ! use static-libs; then
find "${ED}" -type f -name '*.a' -delete || die
fi
# bug 405251
find "${ED}" -type f -name '*.la' -delete || die
use python && python_foreach_impl python_install
# bug 450406
dosym named.cache /var/bind/root.cache
dosym ../../var/bind/pri /etc/bind/pri
dosym ../../var/bind/sec /etc/bind/sec
dosym ../../var/bind/dyn /etc/bind/dyn
keepdir /var/bind/{pri,sec,dyn} /var/log/named
fowners root:named /{etc,var}/bind /var/log/named /var/bind/{sec,pri,dyn}
fowners root:named /var/bind/named.cache /var/bind/pri/localhost.zone /etc/bind/{bind.keys,named.conf}
fperms 0640 /var/bind/named.cache /var/bind/pri/localhost.zone /etc/bind/{bind.keys,named.conf}
fperms 0750 /etc/bind /var/bind/pri
fperms 0770 /var/log/named /var/bind/{,sec,dyn}
systemd_newunit "${FILESDIR}/named.service-r1" named.service
dotmpfiles "${FILESDIR}"/named.conf
exeinto /usr/libexec
doexe "${FILESDIR}/generate-rndc-key.sh"
}
python_install() {
pushd "${BUILD_DIR}"/bin/python >/dev/null || die
emake DESTDIR="${D}" install
python_scriptinto /usr/sbin
python_doscript dnssec-{checkds,coverage}
python_optimize
popd >/dev/null || die
}
pkg_postinst() {
tmpfiles_process named.conf
if [[ ! -f '/etc/bind/rndc.key' && ! -f '/etc/bind/rndc.conf' ]]; then
einfo "Using /dev/urandom for generating rndc.key"
/usr/sbin/rndc-confgen -a
chown root:named /etc/bind/rndc.key || die
chmod 0640 /etc/bind/rndc.key || die
fi
einfo
einfo "You can edit /etc/conf.d/named to customize named settings"
einfo
use mysql || use postgres || use ldap && {
elog "If your named depends on MySQL/PostgreSQL or LDAP,"
elog "uncomment the specified rc_named_* lines in your"
elog "/etc/conf.d/named config to ensure they'll start before bind"
einfo
}
einfo "If you'd like to run bind in a chroot AND this is a new"
einfo "install OR your bind doesn't already run in a chroot:"
einfo "1) Uncomment and set the CHROOT variable in /etc/conf.d/named."
einfo "2) Run \`emerge --config '=${CATEGORY}/${PF}'\`"
einfo
CHROOT=$(source /etc/conf.d/named 2>/dev/null; echo ${CHROOT})
if [[ -n ${CHROOT} ]]; then
elog "NOTE: As of net-dns/bind-9.4.3_p5-r1 the chroot part of the init-script got some major changes!"
elog "To enable the old behaviour (without using mount) uncomment the"
elog "CHROOT_NOMOUNT option in your /etc/conf.d/named config."
elog "If you decide to use the new/default method, ensure to make backup"
elog "first and merge your existing configs/zones to /etc/bind and"
elog "/var/bind because bind will now mount the needed directories into"
elog "the chroot dir."
fi
}
pkg_config() {
CHROOT=$(source /etc/conf.d/named; echo ${CHROOT})
CHROOT_NOMOUNT=$(source /etc/conf.d/named; echo ${CHROOT_NOMOUNT})
CHROOT_GEOIP=$(source /etc/conf.d/named; echo ${CHROOT_GEOIP})
if [[ -z "${CHROOT}" ]]; then
eerror "This config script is designed to automate setting up"
eerror "a chrooted bind/named. To do so, please first uncomment"
eerror "and set the CHROOT variable in '/etc/conf.d/named'."
die "Unset CHROOT"
fi
if [[ -d "${CHROOT}" ]]; then
ewarn "NOTE: As of net-dns/bind-9.4.3_p5-r1 the chroot part of the init-script got some major changes!"
ewarn "To enable the old behaviour (without using mount) uncomment the"
ewarn "CHROOT_NOMOUNT option in your /etc/conf.d/named config."
ewarn
ewarn "${CHROOT} already exists... some things might become overridden"
ewarn "press CTRL+C if you don't want to continue"
sleep 10
fi
echo; einfo "Setting up the chroot directory..."
mkdir -m 0750 -p ${CHROOT} || die
mkdir -m 0755 -p ${CHROOT}/{dev,etc,var/log,run} || die
mkdir -m 0750 -p ${CHROOT}/etc/bind || die
mkdir -m 0770 -p ${CHROOT}/var/{bind,log/named} ${CHROOT}/run/named/ || die
chown root:named \
${CHROOT} \
${CHROOT}/var/{bind,log/named} \
${CHROOT}/run/named/ \
${CHROOT}/etc/bind \
|| die
mknod ${CHROOT}/dev/null c 1 3 || die
chmod 0666 ${CHROOT}/dev/null || die
mknod ${CHROOT}/dev/zero c 1 5 || die
chmod 0666 ${CHROOT}/dev/zero || die
mknod ${CHROOT}/dev/urandom c 1 9 || die
chmod 0666 ${CHROOT}/dev/urandom || die
if [ "${CHROOT_NOMOUNT:-0}" -ne 0 ]; then
cp -a /etc/bind ${CHROOT}/etc/ || die
cp -a /var/bind ${CHROOT}/var/ || die
fi
if [ "${CHROOT_GEOIP:-0}" -eq 1 ]; then
if use geoip; then
mkdir -m 0755 -p ${CHROOT}/usr/share/GeoIP || die
elif use geoip2; then
mkdir -m 0755 -p ${CHROOT}/usr/share/GeoIP2 || die
fi
fi
elog "You may need to add the following line to your syslog-ng.conf:"
elog "source jail { unix-stream(\"${CHROOT}/dev/log\"); };"
}

View File

@@ -1,382 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Re dlz/mysql and threads, needs to be verified..
# MySQL uses thread local storage in its C api. Thus MySQL
# requires that each thread of an application execute a MySQL
# thread initialization to setup the thread local storage.
# This is impossible to do safely while staying within the DLZ
# driver API. This is a limitation caused by MySQL, and not the DLZ API.
# Because of this BIND MUST only run with a single thread when
# using the MySQL driver.
EAPI=8
PYTHON_COMPAT=( python3_{9..10} )
inherit python-r1 autotools multiprocessing toolchain-funcs flag-o-matic db-use systemd tmpfiles
MY_PV="${PV/_p/-P}"
MY_PV="${MY_PV/_rc/rc}"
MY_P="${PN}-${MY_PV}"
SDB_LDAP_VER="1.1.0-fc14"
RRL_PV="${MY_PV}"
# SDB-LDAP: http://bind9-ldap.bayour.com/
DESCRIPTION="Berkeley Internet Name Domain - Name Server"
HOMEPAGE="https://www.isc.org/software/bind https://gitlab.isc.org/isc-projects/bind9"
SRC_URI="https://downloads.isc.org/isc/bind9/${PV}/${P}.tar.xz
doc? ( mirror://gentoo/dyndns-samples.tbz2 )"
LICENSE="Apache-2.0 BSD BSD-2 GPL-2 HPND ISC MPL-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ~ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
# -berkdb by default re bug #602682
IUSE="berkdb +caps +dlz dnstap doc dnsrps fixed-rrset geoip geoip2 gssapi
json ldap lmdb mysql odbc postgres python selinux static-libs test xml +zlib"
# sdb-ldap - patch broken
# no PKCS11 currently as it requires OpenSSL to be patched, also see bug 409687
RESTRICT="!test? ( test )"
# Upstream dropped the old geoip library, but the BIND configuration for using
# GeoIP remained the same.
REQUIRED_USE="
postgres? ( dlz )
berkdb? ( dlz )
mysql? ( dlz )
odbc? ( dlz )
ldap? ( dlz )
dnsrps? ( dlz )
python? ( ${PYTHON_REQUIRED_USE} )
"
DEPEND="
acct-group/named
acct-user/named
berkdb? ( sys-libs/db:= )
dev-libs/openssl:=[-bindist(-)]
mysql? ( dev-db/mysql-connector-c:0= )
odbc? ( >=dev-db/unixODBC-2.2.6 )
ldap? ( net-nds/openldap:= )
postgres? ( dev-db/postgresql:= )
caps? ( >=sys-libs/libcap-2.1.0 )
xml? ( dev-libs/libxml2 )
geoip? ( dev-libs/libmaxminddb:= )
geoip2? ( dev-libs/libmaxminddb:= )
gssapi? ( virtual/krb5 )
json? ( dev-libs/json-c:= )
lmdb? ( dev-db/lmdb:= )
zlib? ( sys-libs/zlib )
dnstap? ( dev-libs/fstrm dev-libs/protobuf-c:= )
python? (
${PYTHON_DEPS}
dev-python/ply[${PYTHON_USEDEP}]
)
dev-libs/libuv:=
"
RDEPEND="${DEPEND}
selinux? ( sec-policy/selinux-bind )
sys-process/psmisc"
BDEPEND="
test? (
dev-util/cmocka
dev-util/kyua
)
"
S="${WORKDIR}/${MY_P}"
PATCHES=(
"${FILESDIR}/ldap-library-path-on-multilib-machines.patch"
)
src_prepare() {
default
# Should be installed by bind-tools
sed -i -r -e "s:(nsupdate|dig|delv) ::g" bin/Makefile.in || die
# bug #220361
rm aclocal.m4 || die
rm -rf libtool.m4/ || die
eautoreconf
use python && python_copy_sources
}
src_configure() {
bind_configure --without-python
use python && python_foreach_impl python_configure
}
bind_configure() {
local myeconfargs=(
AR="$(type -P $(tc-getAR))"
--prefix="${EPREFIX}"/usr
--sysconfdir=/etc/bind
--localstatedir=/var
--with-libtool
--enable-full-report
--without-readline
--with-openssl="${ESYSROOT}"/usr
$(use_with test cmocka)
# Removed in 9.17, drags in libunwind dependency too
--disable-backtrace
$(use_enable caps linux-caps)
$(use_enable dnsrps)
$(use_enable dnstap)
$(use_enable fixed-rrset)
$(use_with berkdb dlz-bdb "${ESYSROOT}"/usr)
$(use_with dlz dlopen)
$(use_with dlz dlz-filesystem)
$(use_with dlz dlz-stub)
$(use_with gssapi)
$(use_with json json-c)
$(use_with ldap dlz-ldap)
$(use_with mysql dlz-mysql)
$(use_with odbc dlz-odbc)
$(use_with postgres dlz-postgres)
$(use_with lmdb)
$(use_with xml libxml2)
$(use_with zlib)
"${@}"
)
# This is for users to start to migrate back to USE=geoip, rather than
# USE=geoip2
if use geoip ; then
myeconfargs+=( $(use_with geoip maxminddb) --enable-geoip )
elif use geoip2 ; then
# Added 2020/09/30
# Remove USE=geoip2 support after 2020/03/01
ewarn "USE=geoip2 is deprecated; update your USE flags!"
myeconfargs+=( $(use_with geoip2 maxminddb) --enable-geoip )
else
myeconfargs+=( --without-maxminddb --disable-geoip )
fi
# bug #158664
#gcc-specs-ssp && replace-flags -O[23s] -O
# To include db.h from proper path
use berkdb && append-flags "-I$(db_includedir)"
export BUILD_CC=$(tc-getBUILD_CC)
econf "${myeconfargs[@]}"
# bug #151839
echo '#undef SO_BSDCOMPAT' >> config.h || die
}
python_configure() {
pushd "${BUILD_DIR}" >/dev/null || die
bind_configure --with-python
popd >/dev/null || die
}
src_compile() {
default
use python && python_foreach_impl python_compile
}
python_compile() {
pushd "${BUILD_DIR}"/bin/python >/dev/null || die
emake
popd >/dev/null || die
}
src_test() {
# system tests ('emake test') require network configuration for IPs etc
# so we run the unit tests instead.
TEST_PARALLEL_JOBS="$(makeopts_jobs)" emake unit
}
src_install() {
default
dodoc CHANGES README
if use doc; then
docinto misc
dodoc -r doc/misc/
# might a 'html' useflag make sense?
docinto html
dodoc -r doc/arm/
docinto contrib
dodoc contrib/scripts/{nanny.pl,named-bootconf.sh}
# some handy-dandy dynamic dns examples
pushd "${ED}"/usr/share/doc/${PF} 1>/dev/null || die
tar xf "${DISTDIR}"/dyndns-samples.tbz2 || die
popd 1>/dev/null || die
fi
insinto /etc/bind
newins "${FILESDIR}"/named.conf-r8 named.conf
# ftp://ftp.rs.internic.net/domain/named.cache:
insinto /var/bind
newins "${FILESDIR}"/named.cache-r3 named.cache
insinto /var/bind/pri
newins "${FILESDIR}"/localhost.zone-r3 localhost.zone
newinitd "${FILESDIR}"/named.init-r14 named
newconfd "${FILESDIR}"/named.confd-r7 named
newenvd "${FILESDIR}"/10bind.env 10bind
# Let's get rid of those tools and their manpages since they're provided by bind-tools
rm -f "${ED}"/usr/share/man/man1/{dig,host,nslookup,delv,nsupdate}.1* || die
rm -f "${ED}"/usr/share/man/man8/nsupdate.8* || die
rm -f "${ED}"/usr/bin/{dig,host,nslookup,nsupdate} || die
rm -f "${ED}"/usr/sbin/{dig,host,nslookup,nsupdate} || die
for tool in dsfromkey importkey keyfromlabel keygen \
revoke settime signzone verify; do
rm -f "${ED}"/usr/{,s}bin/dnssec-"${tool}" || die
rm -f "${ED}"/usr/share/man/man8/dnssec-"${tool}".8* || die
done
# bug 405251, library archives aren't properly handled by --enable/disable-static
if ! use static-libs; then
find "${ED}" -type f -name '*.a' -delete || die
fi
# bug 405251
find "${ED}" -type f -name '*.la' -delete || die
use python && python_foreach_impl python_install
# bug 450406
dosym named.cache /var/bind/root.cache
dosym ../../var/bind/pri /etc/bind/pri
dosym ../../var/bind/sec /etc/bind/sec
dosym ../../var/bind/dyn /etc/bind/dyn
keepdir /var/bind/{pri,sec,dyn} /var/log/named
fowners root:named /{etc,var}/bind /var/log/named /var/bind/{sec,pri,dyn}
fowners root:named /var/bind/named.cache /var/bind/pri/localhost.zone /etc/bind/{bind.keys,named.conf}
fperms 0640 /var/bind/named.cache /var/bind/pri/localhost.zone /etc/bind/{bind.keys,named.conf}
fperms 0750 /etc/bind /var/bind/pri
fperms 0770 /var/log/named /var/bind/{,sec,dyn}
systemd_newunit "${FILESDIR}/named.service-r1" named.service
dotmpfiles "${FILESDIR}"/named.conf
exeinto /usr/libexec
doexe "${FILESDIR}/generate-rndc-key.sh"
}
python_install() {
pushd "${BUILD_DIR}"/bin/python >/dev/null || die
emake DESTDIR="${D}" install
python_scriptinto /usr/sbin
python_doscript dnssec-{checkds,coverage}
python_optimize
popd >/dev/null || die
}
pkg_postinst() {
tmpfiles_process named.conf
if [[ ! -f '/etc/bind/rndc.key' && ! -f '/etc/bind/rndc.conf' ]]; then
einfo "Using /dev/urandom for generating rndc.key"
/usr/sbin/rndc-confgen -a
chown root:named /etc/bind/rndc.key || die
chmod 0640 /etc/bind/rndc.key || die
fi
einfo
einfo "You can edit /etc/conf.d/named to customize named settings"
einfo
use mysql || use postgres || use ldap && {
elog "If your named depends on MySQL/PostgreSQL or LDAP,"
elog "uncomment the specified rc_named_* lines in your"
elog "/etc/conf.d/named config to ensure they'll start before bind"
einfo
}
einfo "If you'd like to run bind in a chroot AND this is a new"
einfo "install OR your bind doesn't already run in a chroot:"
einfo "1) Uncomment and set the CHROOT variable in /etc/conf.d/named."
einfo "2) Run \`emerge --config '=${CATEGORY}/${PF}'\`"
einfo
CHROOT=$(source /etc/conf.d/named 2>/dev/null; echo ${CHROOT})
if [[ -n ${CHROOT} ]]; then
elog "NOTE: As of net-dns/bind-9.4.3_p5-r1 the chroot part of the init-script got some major changes!"
elog "To enable the old behaviour (without using mount) uncomment the"
elog "CHROOT_NOMOUNT option in your /etc/conf.d/named config."
elog "If you decide to use the new/default method, ensure to make backup"
elog "first and merge your existing configs/zones to /etc/bind and"
elog "/var/bind because bind will now mount the needed directories into"
elog "the chroot dir."
fi
}
pkg_config() {
CHROOT=$(source /etc/conf.d/named; echo ${CHROOT})
CHROOT_NOMOUNT=$(source /etc/conf.d/named; echo ${CHROOT_NOMOUNT})
CHROOT_GEOIP=$(source /etc/conf.d/named; echo ${CHROOT_GEOIP})
if [[ -z "${CHROOT}" ]]; then
eerror "This config script is designed to automate setting up"
eerror "a chrooted bind/named. To do so, please first uncomment"
eerror "and set the CHROOT variable in '/etc/conf.d/named'."
die "Unset CHROOT"
fi
if [[ -d "${CHROOT}" ]]; then
ewarn "NOTE: As of net-dns/bind-9.4.3_p5-r1 the chroot part of the init-script got some major changes!"
ewarn "To enable the old behaviour (without using mount) uncomment the"
ewarn "CHROOT_NOMOUNT option in your /etc/conf.d/named config."
ewarn
ewarn "${CHROOT} already exists... some things might become overridden"
ewarn "press CTRL+C if you don't want to continue"
sleep 10
fi
echo; einfo "Setting up the chroot directory..."
mkdir -m 0750 -p ${CHROOT} || die
mkdir -m 0755 -p ${CHROOT}/{dev,etc,var/log,run} || die
mkdir -m 0750 -p ${CHROOT}/etc/bind || die
mkdir -m 0770 -p ${CHROOT}/var/{bind,log/named} ${CHROOT}/run/named/ || die
chown root:named \
${CHROOT} \
${CHROOT}/var/{bind,log/named} \
${CHROOT}/run/named/ \
${CHROOT}/etc/bind \
|| die
mknod ${CHROOT}/dev/null c 1 3 || die
chmod 0666 ${CHROOT}/dev/null || die
mknod ${CHROOT}/dev/zero c 1 5 || die
chmod 0666 ${CHROOT}/dev/zero || die
mknod ${CHROOT}/dev/urandom c 1 9 || die
chmod 0666 ${CHROOT}/dev/urandom || die
if [ "${CHROOT_NOMOUNT:-0}" -ne 0 ]; then
cp -a /etc/bind ${CHROOT}/etc/ || die
cp -a /var/bind ${CHROOT}/var/ || die
fi
if [ "${CHROOT_GEOIP:-0}" -eq 1 ]; then
if use geoip; then
mkdir -m 0755 -p ${CHROOT}/usr/share/GeoIP || die
elif use geoip2; then
mkdir -m 0755 -p ${CHROOT}/usr/share/GeoIP2 || die
fi
fi
elog "You may need to add the following line to your syslog-ng.conf:"
elog "source jail { unix-stream(\"${CHROOT}/dev/log\"); };"
}

View File

@@ -1,3 +1,2 @@
DIST c-ares-1.18.1.tar.gz 1560165 BLAKE2B c03a572726c6bbb24a3e4773673d0c87f4833bb9582aed57a424eea8c965beb6e232f502b61922b124d37403d91ebfefe0db7373673fc22e0d752c4e5036eb07 SHA512 1276ec0799916019f8c0af6b55a139701bd15e0ca4a00811d07963893978bc96c107b980f0fd49f81aa70bc8b3b8cd671195ba357c390772d4c2c5643c50c5a5
DIST c-ares-1.19.0.tar.gz 1572210 BLAKE2B d77be535dfa852bf3d91258ddf06b3c63a40123883adb83a4e5652d4b1b16801ddefefad70d83a7d6d9aa81c9c81956fef42bc778d7380d6b398ccfc9f8b82dc SHA512 a7f5988bef393afec08a225be92f6eee54a3e67170fb26cbe00dcc5c5a457b27037bbcfeccc39fb855ed72f100196958d6cbbe251bf1ccfbdd353be18f098359
DIST c-ares-1.19.0.tar.gz.asc 488 BLAKE2B 1b8dc3ad7b916cb5ea1c95ffd12315d303f78880416836d11d2fa7d8ca93fa1ca30898e6a865af79a35e5dc4d0f4fccfcc9eae6f028d456d38ede9fe8b7edd71 SHA512 814aad5dbe2bb987035b53d977e03a73a90356200f671f36949a77e978cf8311ccc8375e63ade6fe2e1380f1f9c3b34c1ba7d48365fd5689cf5c24425ab8a129

View File

@@ -1,62 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit multilib-minimal
DESCRIPTION="C library that resolves names asynchronously"
HOMEPAGE="https://c-ares.haxx.se/"
SRC_URI="https://${PN}.haxx.se/download/${P}.tar.gz"
# Subslot = SONAME of libcares.so.2
SLOT="0/2"
LICENSE="MIT"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="static-libs test"
RESTRICT="!test? ( test )"
DOCS=( AUTHORS CHANGES NEWS README.md RELEASE-NOTES TODO )
MULTILIB_WRAPPED_HEADERS=(
/usr/include/ares_build.h
)
multilib_src_configure() {
# Needed for running unit tests only
# Violates sandbox and tests pass fine without
ax_cv_uts_namespace=no \
ax_cv_user_namespace=no \
ECONF_SOURCE="${S}" \
econf \
--enable-nonblocking \
--enable-symbol-hiding \
$(use_enable static-libs static) \
$(use_enable test tests)
}
multilib_src_test() {
cd "${BUILD_DIR}"/test || die
# We're skipping the "real" network tests with the filter
# see https://github.com/c-ares/c-ares/tree/main/test
local network_tests=(
# Most live tests have Live in the name
*Live*
# These don't but are still in ares-test-live.cc => live
*GetTCPSock*
*TimeoutValue*
*GetSock*
*GetSock_virtualized*
)
# The format for disabling test1, test2, and test3 looks like:
# -test1:test2:test3
./arestest --gtest_filter=-$(echo $(IFS=:; echo "${network_tests[*]}")) || die "arestest failed!"
}
multilib_src_install_all() {
einstalldocs
find "${ED}" -name "*.la" -delete || die
}

View File

@@ -1,6 +1,2 @@
DIST coredns-1.10.0-deps.tar.xz 216362488 BLAKE2B e94075f547b604cdb770bf5b5f116dd99710d3011e48e9c7da0f2f8cb51c9128c60a4873f5152180ccac90008d50979b993f67b00fa836bea55f67cb32101156 SHA512 8ba7d76d4840abcd6cdedb3c7754e2dc94610c7996f3dbd7d7e81f3b624c8fee0a903679ef63c91ca86c799c744582ac9fe4a6766939abe3fee8d7c45a0a787d
DIST coredns-1.10.0.tar.gz 656927 BLAKE2B 25803e0e62e75122d951123d0e04c60a9bee14756decbff9d1c8b27bd996e97d863be83961f03decd118eddc9c06c80709aa881a902dbf42f4c408ee2c4647c6 SHA512 ddec7ee0139105f417249756133d0384d28cd7f6960183644dfb26d6dfba43a80d461da65040f160a8a7e38785bfdc9f458b2bab2fe8ce82635e8dd0dd42a467
DIST coredns-1.10.1-deps.tar.xz 230970760 BLAKE2B 79e9199256ddcb5c6728aa1cab62608177099d278a44bc5393148ed49139fa97ebc82fd0e749847bb04f34b409165c44082cbec502e807e0e44c58b4f1df5f6f SHA512 2c1a5d6ba3392444a25ca0488c8c0ebae4090b601276a17fdc01c64b70c22fa45b297c8784dbb7214865ceafe4b93bb166d3e84b170a5e1b21ff3811b59ab885
DIST coredns-1.10.1.tar.gz 632459 BLAKE2B ade57e2f7028cf4c3b69e08396a7cd41cde79c6f0b9b1edeb4c9e73204e9eab295d9b44dce437f337900ca6a622832c6f784f7088b2eed7ac6759e6959e587bd SHA512 6906ecf64b6274f4d3957faec6930ec3ed4de0bddd9e2d72ea2794f43186689ede1f440d7626c5ea66956fdec41e354242f99fa489f1f992b86fede5f580a328
DIST coredns-1.9.3-deps.tar.xz 205913904 BLAKE2B d5a630d7afa14577e1d5b9aba48a43808b990bc6e550408d141b509253c611266e3d5b5acc33222582693d7542630c0efdad973535564a37434a50dc67289099 SHA512 d954e73c3f6c3d1c37d959420c92cd59aa61bb5b2f69fdbcf017cbba173a0b8e9e0d73ef85e9b7fa8657c9916afd4843df0886058815c7df854ec3ddc67eae1d
DIST coredns-1.9.3.tar.gz 624914 BLAKE2B a27e73da8c67ff38d33757bf8fdae5938574b1b0f4db4a469e67e6063c1643b0dc60227646998b87bbd79d48bdf8c792be432ae253b54fca0d6afdec1138bad7 SHA512 d0c24c5d9f27883519e0d6edf917c6e0051b80627a320a20f6d5ee3e154f65790d1f66b5e0255aeed66874ff5826b2ab3d1237d6fd53452e7dfaf3b34b17fdfb

View File

@@ -1,89 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
# Don't forget to update when bumping. Used in --version output
EGIT_COMMIT="596a9f9e67dd9b01e15bc04a999460422fe65166"
inherit fcaps go-module systemd tmpfiles
ARCHIVE_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI="${ARCHIVE_URI} https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
KEYWORDS="~amd64"
DESCRIPTION="A DNS server that chains middleware"
HOMEPAGE="https://github.com/coredns/coredns"
LICENSE="Apache-2.0 MIT BSD ISC MPL-2.0 BSD-2"
SLOT="0"
RDEPEND="acct-user/coredns
acct-group/coredns"
# TODO: debug test failure with deps tarball
RESTRICT+=" test"
FILECAPS=(
-m 755 'cap_net_bind_service=+ep' usr/bin/${PN}
)
src_compile() {
go build -v -ldflags="-X github.com/coredns/coredns/coremain.GitCommit=${EGIT_COMMIT}" ||
die "go build failed"
}
src_install() {
dobin "${PN}"
einstalldocs
doman man/*
newinitd "${FILESDIR}"/coredns.initd coredns
newconfd "${FILESDIR}"/coredns.confd coredns
insinto /etc/coredns/
newins "${FILESDIR}"/Corefile.example Corefile
insinto /etc/logrotate.d
newins "${FILESDIR}"/coredns.logrotated coredns
systemd_dounit "${FILESDIR}"/coredns.service
newtmpfiles "${FILESDIR}"/coredns.tmpfiles "${PN}.conf"
}
src_test() {
# eclass default '-x' makes tests output unreadable
export GOFLAGS="-v -mod=readonly"
local known_fail=(
"TestZoneExternalCNAMELookupWithProxy"
"TestMetricsSeveralBlocs"
"TestMetricsAvailable"
"TestMetricsAvailableAfterReload"
"TestMetricsAvailableAfterReloadAndFailedReload"
)
# concat as '|^Test1$|^Test2$|^Test3...$':
local known_fail_re="$(printf '|^%s$' "${known_fail[@]}")"
# drop '|' in the begining:
known_fail_re="${known_fail_re:1}"
local working_tests_re="$(
# get list of all test:
{ GOFLAGS="-mod=readonly" go test -list . ./... ||
die "Can't get list of tests"; } |
# skip "no tests" messages as well as know failures:
grep -v -E " |${known_fail_re}" |
# format a regexp:
sed -z 's/\n/$|^/g'
)"
# drop '|^' in the end:
working_tests_re="^${working_tests_re::-2}"
go test -race -run "${working_tests_re}" ./... || die "Tests failed"
go test -race -run "${known_fail_re}" ./... || ewarn "Known test failure"
}
pkg_postinst() {
fcaps_pkg_postinst
tmpfiles_process ${PN}.conf
}

View File

@@ -1,89 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
# Don't forget to update when bumping. Used in --version output
EGIT_COMMIT="45b0a11294c59bfd806a57807aaa2a185f761cd5"
inherit fcaps go-module systemd tmpfiles
ARCHIVE_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
SRC_URI="${ARCHIVE_URI} https://dev.gentoo.org/~zmedico/dist/${P}-deps.tar.xz"
KEYWORDS="~amd64"
DESCRIPTION="A DNS server that chains middleware"
HOMEPAGE="https://github.com/coredns/coredns"
LICENSE="Apache-2.0 MIT BSD ISC MPL-2.0 BSD-2"
SLOT="0"
RDEPEND="acct-user/coredns
acct-group/coredns"
# TODO: debug test failure with deps tarball
RESTRICT+=" test"
FILECAPS=(
-m 755 'cap_net_bind_service=+ep' usr/bin/${PN}
)
src_compile() {
go build -v -ldflags="-X github.com/coredns/coredns/coremain.GitCommit=${EGIT_COMMIT}" ||
die "go build failed"
}
src_install() {
dobin "${PN}"
einstalldocs
doman man/*
newinitd "${FILESDIR}"/coredns.initd coredns
newconfd "${FILESDIR}"/coredns.confd coredns
insinto /etc/coredns/
newins "${FILESDIR}"/Corefile.example Corefile
insinto /etc/logrotate.d
newins "${FILESDIR}"/coredns.logrotated coredns
systemd_dounit "${FILESDIR}"/coredns.service
newtmpfiles "${FILESDIR}"/coredns.tmpfiles "${PN}.conf"
}
src_test() {
# eclass default '-x' makes tests output unreadable
export GOFLAGS="-v -mod=readonly"
local known_fail=(
"TestZoneExternalCNAMELookupWithProxy"
"TestMetricsSeveralBlocs"
"TestMetricsAvailable"
"TestMetricsAvailableAfterReload"
"TestMetricsAvailableAfterReloadAndFailedReload"
)
# concat as '|^Test1$|^Test2$|^Test3...$':
local known_fail_re="$(printf '|^%s$' "${known_fail[@]}")"
# drop '|' in the begining:
known_fail_re="${known_fail_re:1}"
local working_tests_re="$(
# get list of all test:
{ GOFLAGS="-mod=readonly" go test -list . ./... ||
die "Can't get list of tests"; } |
# skip "no tests" messages as well as know failures:
grep -v -E " |${known_fail_re}" |
# format a regexp:
sed -z 's/\n/$|^/g'
)"
# drop '|^' in the end:
working_tests_re="^${working_tests_re::-2}"
go test -race -run "${working_tests_re}" ./... || die "Tests failed"
go test -race -run "${known_fail_re}" ./... || ewarn "Known test failure"
}
pkg_postinst() {
fcaps_pkg_postinst
tmpfiles_process ${PN}.conf
}

View File

@@ -1,3 +1 @@
DIST dnscrypt-proxy-2.1.2.tar.gz 6792121 BLAKE2B f6e69e9b7bba5bcaf49f710c78fc1b9607a8e791ad222da7af2a129de4807ecf87ddb7289aa79132a0d5ada588d2557beff618a79a341d168674bda7c8ba58ee SHA512 1b3598d60abc70141127aaaab5bf8bfaa76239d33e4220664dadd47f09544553e06eba6d82e5daf2c44c6da9c3c21c53683c2ff33db63257b782ad48c534bd54
DIST dnscrypt-proxy-2.1.3.tar.gz 6891950 BLAKE2B e23bb64a4c9153ac19420b68f4a698e63b393ab66aa2801e87328093444156f24605d3c0ff1aa80ea21be6f255b71cd3d5b0af087d8080fdf55026b3b473003d SHA512 72a63f57f643950a010f7659e705cb1ac8ce9c27386c42112bd9396be61426d1d23419c40e551f12a7e861a022235db710e6cd345c2052dbf9555d2b7dbd362f
DIST dnscrypt-proxy-2.1.4.tar.gz 6897787 BLAKE2B 655011c98e335e0f605c093e5b12156afc9be88f0e14882e11cfdca1affa6de29830344e7c3aa7a5013f90a322f824d54e2db4d37a69395d344e90b0160e442b SHA512 4540d11432c4f35244b79f66b8926f8a1025e09010d8d313f0cd0d62e3fafcbd12bd24e9956ddf9cd8c1ec8aae997b031ab08dae4ee220bf31f33227ec6c07ca

View File

@@ -1,103 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit fcaps go-module systemd
DESCRIPTION="A flexible DNS proxy, with support for encrypted DNS protocols"
HOMEPAGE="https://github.com/DNSCrypt/dnscrypt-proxy"
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/DNSCrypt/dnscrypt-proxy.git"
inherit git-r3
else
SRC_URI="https://github.com/DNSCrypt/dnscrypt-proxy/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 arm arm64 ppc64 x86"
fi
LICENSE="Apache-2.0 BSD ISC MIT MPL-2.0"
SLOT="0"
IUSE="+pie"
RDEPEND="
acct-group/dnscrypt-proxy
acct-user/dnscrypt-proxy
"
BDEPEND="<dev-lang/go-1.20"
FILECAPS=( cap_net_bind_service+ep usr/bin/dnscrypt-proxy )
PATCHES=(
"${FILESDIR}"/${PN}-2.1.2-config-full-paths.patch
)
src_compile() {
pushd "${PN}" >/dev/null || die
go build -v -x -mod=readonly -mod=vendor -buildmode="$(usex pie pie default)" || die
popd >/dev/null || die
}
src_test() {
cd "${PN}" || die
go test -mod=vendor -buildmode="$(usex pie pie default)" || die "Failed to run tests"
}
src_install() {
pushd "${PN}" >/dev/null || die
dobin dnscrypt-proxy
insinto /etc/dnscrypt-proxy
newins example-dnscrypt-proxy.toml dnscrypt-proxy.toml
doins example-{allowed,blocked}-{ips.txt,names.txt}
doins example-{cloaking-rules.txt,forwarding-rules.txt}
popd >/dev/null || die
insinto /usr/share/dnscrypt-proxy
doins -r "utils/generate-domains-blocklist/."
newinitd "${FILESDIR}"/dnscrypt-proxy.initd dnscrypt-proxy
newconfd "${FILESDIR}"/dnscrypt-proxy.confd dnscrypt-proxy
systemd_newunit "${FILESDIR}"/dnscrypt-proxy.service dnscrypt-proxy.service
systemd_newunit "${FILESDIR}"/dnscrypt-proxy.socket dnscrypt-proxy.socket
insinto /etc/logrotate.d
newins "${FILESDIR}"/dnscrypt-proxy.logrotate dnscrypt-proxy
einstalldocs
}
pkg_postinst() {
fcaps_pkg_postinst
if ! use filecaps; then
ewarn "'filecaps' USE flag is disabled"
ewarn "${PN} will fail to listen on port 53"
ewarn "please do one the following:"
ewarn "1) re-enable 'filecaps'"
ewarn "2) change port to > 1024"
ewarn "3) configure to run ${PN} as root (not recommended)"
ewarn
fi
if systemd_is_booted || has_version sys-apps/systemd; then
elog "Using systemd socket activation may cause issues with speed"
elog "latency and reliability of ${PN} and is discouraged by upstream"
elog "Existing installations advised to disable 'dnscrypt-proxy.socket'"
elog "It is disabled by default for new installations"
elog "check "$(systemd_get_systemunitdir)/${PN}.service" for details"
elog
fi
elog "After starting the service you will need to update your"
elog "${EROOT}/etc/resolv.conf and replace your current set of resolvers"
elog "with:"
elog
elog "nameserver 127.0.0.1"
elog
elog "Also see https://github.com/DNSCrypt/${PN}/wiki"
}

View File

@@ -1,102 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit fcaps go-module systemd
DESCRIPTION="A flexible DNS proxy, with support for encrypted DNS protocols"
HOMEPAGE="https://github.com/DNSCrypt/dnscrypt-proxy"
if [[ ${PV} == 9999 ]]; then
EGIT_REPO_URI="https://github.com/DNSCrypt/dnscrypt-proxy.git"
inherit git-r3
else
SRC_URI="https://github.com/DNSCrypt/dnscrypt-proxy/archive/${PV}.tar.gz -> ${P}.tar.gz"
KEYWORDS="amd64 arm arm64 ppc64 x86"
fi
LICENSE="Apache-2.0 BSD ISC MIT MPL-2.0"
SLOT="0"
IUSE="+pie"
RDEPEND="
acct-group/dnscrypt-proxy
acct-user/dnscrypt-proxy
"
FILECAPS=( cap_net_bind_service+ep usr/bin/dnscrypt-proxy )
PATCHES=(
"${FILESDIR}"/${PN}-2.1.2-config-full-paths.patch
)
src_compile() {
pushd "${PN}" >/dev/null || die
go build -v -x -mod=readonly -mod=vendor -buildmode="$(usex pie pie default)" || die
popd >/dev/null || die
}
src_test() {
cd "${PN}" || die
go test -mod=vendor -buildmode="$(usex pie pie default)" || die "Failed to run tests"
}
src_install() {
pushd "${PN}" >/dev/null || die
dobin dnscrypt-proxy
insinto /etc/dnscrypt-proxy
newins example-dnscrypt-proxy.toml dnscrypt-proxy.toml
doins example-{allowed,blocked}-{ips.txt,names.txt}
doins example-{cloaking-rules.txt,forwarding-rules.txt}
popd >/dev/null || die
insinto /usr/share/dnscrypt-proxy
doins -r "utils/generate-domains-blocklist/."
newinitd "${FILESDIR}"/dnscrypt-proxy.initd dnscrypt-proxy
newconfd "${FILESDIR}"/dnscrypt-proxy.confd dnscrypt-proxy
systemd_newunit "${FILESDIR}"/dnscrypt-proxy.service dnscrypt-proxy.service
systemd_newunit "${FILESDIR}"/dnscrypt-proxy.socket dnscrypt-proxy.socket
insinto /etc/logrotate.d
newins "${FILESDIR}"/dnscrypt-proxy.logrotate dnscrypt-proxy
einstalldocs
}
pkg_postinst() {
fcaps_pkg_postinst
if ! use filecaps; then
ewarn "'filecaps' USE flag is disabled"
ewarn "${PN} will fail to listen on port 53"
ewarn "please do one the following:"
ewarn "1) re-enable 'filecaps'"
ewarn "2) change port to > 1024"
ewarn "3) configure to run ${PN} as root (not recommended)"
ewarn
fi
if systemd_is_booted || has_version sys-apps/systemd; then
elog "Using systemd socket activation may cause issues with speed"
elog "latency and reliability of ${PN} and is discouraged by upstream"
elog "Existing installations advised to disable 'dnscrypt-proxy.socket'"
elog "It is disabled by default for new installations"
elog "check "$(systemd_get_systemunitdir)/${PN}.service" for details"
elog
fi
elog "After starting the service you will need to update your"
elog "${EROOT}/etc/resolv.conf and replace your current set of resolvers"
elog "with:"
elog
elog "nameserver 127.0.0.1"
elog
elog "Also see https://github.com/DNSCrypt/${PN}/wiki"
}

View File

@@ -1,5 +1 @@
DIST dnsmasq-2.85.tar.xz 518316 BLAKE2B b7c081132c65d67b65f797bdbc603930c1509717bc1b5209b12f72fa3f01b4bae2f26a5387f95ef20317cd3d60e097c0b8bef5e019a35013f3ed2acce9fe9e89 SHA512 8beefe76b46f7d561f40d0900ba68b260a199cb62ab5b653746e3a1104c04fb8899b9e7a160a1be4fe8782bfb1607b556e9ffb9c25c4e99653e4bc74fcc03b09
DIST dnsmasq-2.86.tar.xz 531404 BLAKE2B 27307c70cc90d6e27dbf8e87589b8c72622e93f402c3a431e06facc58a62af46a478d1fdbfb9808a91ff3d2f5da88a8d12de9755009b558d685903e4d2a34de3 SHA512 487eae0afbc8bb3d5282a729ffb0cb2c9bdc7d8e46e2e8aa114cd7c5d82e0fd66f49926e7fa4028577548d6f57e8a865aca17f33963a589874584d608ab2deaf
DIST dnsmasq-2.87.tar.xz 540528 BLAKE2B 9d348f1746f819ea5da90ac341bd82254ec83acd8193732f99312d5c56073c8f3f374bf89cecec4fe58632c9e9f84e312a5474c561420dfd8537e221ecf68e2f SHA512 965071ff35aed558a661e7f57ff82de170f4ad7fcdd6a4070ce7915c9f5e41450d8d86b2a0c2c30bf52ddc3aaeb22af18bb6da71a1cccb3c409429ef0ef308f3
DIST dnsmasq-2.88.tar.xz 560640 BLAKE2B e7e11a77b6ecbdcfba08677f41767f1c8330bc762dd308637923f198f4bde255660a78dfe181014ce08268d7eb9c8554e0409a3b691fee67e5b20e2344bd8d8e SHA512 109ee4513cb25fb0c9ff6f81d696c195a24ffa013847fdc3a507757137fff098248e2b907a87695075405039c4dc0eda40803395a52306ce673ca593cc4f4e00
DIST dnsmasq-2.89.tar.xz 562700 BLAKE2B d8be39697ce7d4e7beacf6d94a9ba1842fe0099f7ed7ebb243a7e6e5af8c83195e4723e60841705aee70a43510279be8484a9474191ddcf17eac1ff4edc5389f SHA512 4384ed5b673e10eaf6532e6eaeb5c0a6b817581433cc28c632bdcbadbfc050a0ab73bc5b73c98d708cd39515bb3f72168714b0aa5f16436cebdd18020648d428

View File

@@ -1,217 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
LUA_COMPAT=( lua5-{1..4} luajit )
inherit toolchain-funcs flag-o-matic lua-single systemd
DESCRIPTION="Small forwarding DNS server"
HOMEPAGE="https://thekelleys.org.uk/dnsmasq/doc.html"
SRC_URI="https://thekelleys.org.uk/dnsmasq/${P}.tar.xz"
LICENSE="|| ( GPL-2 GPL-3 )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="auth-dns conntrack dbus +dhcp dhcp-tools dnssec +dumpfile id idn libidn2"
IUSE+=" +inotify ipv6 lua nettlehash nls script selinux static tftp"
DM_LINGUAS=(de es fi fr id it no pl pt_BR ro)
BDEPEND="
app-arch/xz-utils
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
COMMON_DEPEND="
acct-group/dnsmasq
acct-user/dnsmasq
dbus? ( sys-apps/dbus:= )
idn? (
!libidn2? ( net-dns/libidn:0= )
libidn2? ( >=net-dns/libidn2-2.0:= )
)
lua? ( ${LUA_DEPS} )
conntrack? ( net-libs/libnetfilter_conntrack:= )
nls? ( sys-devel/gettext )
"
DEPEND="${COMMON_DEPEND}
dnssec? (
dev-libs/nettle:=[gmp]
static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
)
"
RDEPEND="${COMMON_DEPEND}
dnssec? (
!static? ( >=dev-libs/nettle-3.4:=[gmp] )
)
selinux? ( sec-policy/selinux-dnsmasq )
"
REQUIRED_USE="
dhcp-tools? ( dhcp )
dnssec? ( !nettlehash )
lua? (
script
${LUA_REQUIRED_USE}
)
libidn2? ( idn )
"
use_have() {
local no_only
if [[ ${1} == '-n' ]]; then
no_only=1
shift
fi
local useflag="${1}"
shift
local uword="${1:-${useflag}}"
shift
while [[ ${uword} ]]; do
uword="${uword^^}"
if ! use "${useflag}"; then
printf -- " -DNO_%s" "${uword}"
elif [[ -z "${no_only}" ]]; then
printf -- " -DHAVE_%s" "${uword}"
fi
uword="${1}"
shift
done
}
pkg_setup() {
use lua && lua-single_pkg_setup
}
pkg_pretend() {
if use static; then
einfo "Only sys-libs/gmp and dev-libs/nettle are statically linked."
use dnssec || einfo "Thus, ${P}[!dnssec,static] makes no sense;" \
"in this case the static USE flag does nothing."
fi
}
src_prepare() {
default
sed -i -r 's:lua5.[0-9]+:lua:' Makefile || die
sed -i "s:%%PREFIX%%:${EPREFIX}/usr:" \
dnsmasq.conf.example || die
}
src_configure() {
COPTS=(
$(use_have -n auth-dns auth)
$(use_have conntrack)
$(use_have dbus)
$(use libidn2 || use_have idn)
$(use_have libidn2)
$(use_have -n inotify)
$(use_have -n dhcp dhcp dhcp6)
$(use_have -n ipv6 ipv6 dhcp6)
$(use_have -n id id)
$(use_have lua luascript)
$(use_have -n script)
$(use_have -n tftp)
$(use_have dnssec)
$(use_have nettlehash)
$(use_have static dnssec_static)
$(use_have -n dumpfile)
)
}
src_compile() {
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
COPTS="${COPTS[*]}" \
CONFFILE="/etc/${PN}.conf" \
all$(use nls && printf -- "-i18n\n")
use dhcp-tools && emake -C contrib/lease-tools \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
all
}
src_install() {
local lingua puid
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
COPTS="${COPTS[*]}" \
DESTDIR="${ED}" \
install$(use nls && printf -- "-i18n\n")
for lingua in "${DM_LINGUAS[@]}"; do
has ${lingua} ${LINGUAS-${lingua}} \
|| rm -rf "${ED}"/usr/share/locale/${lingua}
done
[[ -d "${D}"/usr/share/locale/ ]] && \
rmdir --ignore-fail-on-non-empty "${ED}"/usr/share/locale/
dodoc CHANGELOG CHANGELOG.archive FAQ dnsmasq.conf.example
dodoc -r logo
docinto html/
dodoc *.html
newinitd "${FILESDIR}"/dnsmasq-init-r4 ${PN}
newconfd "${FILESDIR}"/dnsmasq.confd-r1 ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}"/dnsmasq.logrotate ${PN}
insinto /etc
newins dnsmasq.conf.example dnsmasq.conf
insinto /usr/share/dnsmasq
doins trust-anchors.conf
if use dhcp; then
keepdir /var/lib/misc
newinitd "${FILESDIR}"/dnsmasq-init-dhcp-r3 ${PN}
fi
if use dbus; then
insinto /etc/dbus-1/system.d
doins dbus/dnsmasq.conf
fi
if use dhcp-tools; then
dosbin contrib/lease-tools/{dhcp_release,dhcp_lease_time}
doman contrib/lease-tools/{dhcp_release,dhcp_lease_time}.1
if use ipv6; then
dosbin contrib/lease-tools/dhcp_release6
doman contrib/lease-tools/dhcp_release6.1
fi
fi
systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
}
pkg_preinst() {
[[ -f /var/lib/misc/dnsmasq.leases ]] && \
cp /var/lib/misc/dnsmasq.leases "${T}"
}
pkg_postinst() {
[[ -f "${T}"/dnsmasq.leases ]] && \
cp "${T}"/dnsmasq.leases /var/lib/misc/dnsmasq.leases
}

View File

@@ -1,224 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LUA_COMPAT=( lua5-{1..4} luajit )
inherit toolchain-funcs lua-single systemd
DESCRIPTION="Small forwarding DNS server"
HOMEPAGE="https://thekelleys.org.uk/dnsmasq/doc.html"
SRC_URI="https://thekelleys.org.uk/dnsmasq/${P}.tar.xz"
LICENSE="|| ( GPL-2 GPL-3 )"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="auth-dns conntrack dbus +dhcp dhcp-tools dnssec +dumpfile id idn libidn2"
IUSE+=" +loop +inotify ipv6 lua nettlehash nls script selinux static tftp"
DM_LINGUAS=(de es fi fr id it no pl pt_BR ro)
BDEPEND="
app-arch/xz-utils
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
COMMON_DEPEND="
acct-group/dnsmasq
acct-user/dnsmasq
dbus? ( sys-apps/dbus:= )
idn? (
!libidn2? ( net-dns/libidn:0= )
libidn2? ( >=net-dns/libidn2-2.0:= )
)
lua? ( ${LUA_DEPS} )
conntrack? ( net-libs/libnetfilter_conntrack:= )
nls? ( sys-devel/gettext )
"
DEPEND="${COMMON_DEPEND}
dnssec? (
dev-libs/nettle:=[gmp]
static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
)
nettlehash? (
static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
)
"
RDEPEND="${COMMON_DEPEND}
dnssec? (
!static? ( >=dev-libs/nettle-3.4:=[gmp] )
)
nettlehash? (
!static? ( dev-libs/nettle:=[gmp] )
)
selinux? ( sec-policy/selinux-dnsmasq )
"
REQUIRED_USE="
dhcp-tools? ( dhcp )
dnssec? ( !nettlehash )
lua? (
script
${LUA_REQUIRED_USE}
)
libidn2? ( idn )
"
use_have() {
local no_only
if [[ ${1} == '-n' ]]; then
no_only=1
shift
fi
local useflag="${1}"
shift
local uword="${1:-${useflag}}"
shift
while [[ ${uword} ]]; do
uword="${uword^^}"
if ! use "${useflag}"; then
printf -- " -DNO_%s" "${uword}"
elif [[ -z "${no_only}" ]]; then
printf -- " -DHAVE_%s" "${uword}"
fi
uword="${1}"
shift
done
}
pkg_setup() {
use lua && lua-single_pkg_setup
}
pkg_pretend() {
if use static; then
einfo "Only sys-libs/gmp and dev-libs/nettle are statically linked."
use dnssec || einfo "Thus, ${P}[!dnssec,static] makes no sense;" \
"in this case the static USE flag does nothing."
fi
}
src_prepare() {
default
sed -i -r 's:lua5.[0-9]+:lua:' Makefile || die
sed -i "s:%%PREFIX%%:${EPREFIX}/usr:" \
dnsmasq.conf.example || die
}
src_configure() {
COPTS=(
$(use_have -n auth-dns auth)
$(use_have conntrack)
$(use_have dbus)
$(use libidn2 || use_have idn)
$(use_have libidn2)
$(use_have -n inotify)
$(use_have -n dhcp dhcp dhcp6)
$(use_have -n ipv6 ipv6 dhcp6)
$(use_have -n id id)
$(use_have -n loop)
$(use_have lua luascript)
$(use_have -n script)
$(use_have -n tftp)
$(use_have dnssec)
$(use_have nettlehash)
$(use_have static dnssec_static)
$(use_have -n dumpfile)
)
}
src_compile() {
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
COPTS="${COPTS[*]}" \
CONFFILE="/etc/${PN}.conf" \
all$(use nls && printf -- "-i18n\n")
use dhcp-tools && emake -C contrib/lease-tools \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
all
}
src_install() {
local lingua puid
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
COPTS="${COPTS[*]}" \
DESTDIR="${ED}" \
install$(use nls && printf -- "-i18n\n")
for lingua in "${DM_LINGUAS[@]}"; do
has ${lingua} ${LINGUAS-${lingua}} \
|| rm -rf "${ED}"/usr/share/locale/${lingua}
done
[[ -d "${D}"/usr/share/locale/ ]] && \
rmdir --ignore-fail-on-non-empty "${ED}"/usr/share/locale/
dodoc CHANGELOG CHANGELOG.archive FAQ dnsmasq.conf.example
dodoc -r logo
docinto html/
dodoc *.html
newinitd "${FILESDIR}"/dnsmasq-init-r4 ${PN}
newconfd "${FILESDIR}"/dnsmasq.confd-r1 ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}"/dnsmasq.logrotate ${PN}
insinto /etc
newins dnsmasq.conf.example dnsmasq.conf
insinto /usr/share/dnsmasq
doins trust-anchors.conf
if use dhcp; then
keepdir /var/lib/misc
newinitd "${FILESDIR}"/dnsmasq-init-dhcp-r3 ${PN}
fi
if use dbus; then
insinto /etc/dbus-1/system.d
doins dbus/dnsmasq.conf
fi
if use dhcp-tools; then
dosbin contrib/lease-tools/{dhcp_release,dhcp_lease_time}
doman contrib/lease-tools/{dhcp_release,dhcp_lease_time}.1
if use ipv6; then
dosbin contrib/lease-tools/dhcp_release6
doman contrib/lease-tools/dhcp_release6.1
fi
fi
systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
}
pkg_preinst() {
[[ -f /var/lib/misc/dnsmasq.leases ]] && \
cp /var/lib/misc/dnsmasq.leases "${T}"
}
pkg_postinst() {
[[ -f "${T}"/dnsmasq.leases ]] && \
cp "${T}"/dnsmasq.leases /var/lib/misc/dnsmasq.leases
}

View File

@@ -1,224 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LUA_COMPAT=( lua5-{1..4} luajit )
inherit toolchain-funcs lua-single systemd
DESCRIPTION="Small forwarding DNS server"
HOMEPAGE="https://thekelleys.org.uk/dnsmasq/doc.html"
SRC_URI="https://thekelleys.org.uk/dnsmasq/${P}.tar.xz"
LICENSE="|| ( GPL-2 GPL-3 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="auth-dns conntrack dbus +dhcp dhcp-tools dnssec +dumpfile id idn libidn2"
IUSE+=" +loop +inotify ipv6 lua nettlehash nls script selinux static tftp"
DM_LINGUAS=(de es fi fr id it no pl pt_BR ro)
BDEPEND="
app-arch/xz-utils
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
COMMON_DEPEND="
acct-group/dnsmasq
acct-user/dnsmasq
dbus? ( sys-apps/dbus:= )
idn? (
!libidn2? ( net-dns/libidn:0= )
libidn2? ( >=net-dns/libidn2-2.0:= )
)
lua? ( ${LUA_DEPS} )
conntrack? ( net-libs/libnetfilter_conntrack:= )
nls? ( sys-devel/gettext )
"
DEPEND="${COMMON_DEPEND}
dnssec? (
dev-libs/nettle:=[gmp]
static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
)
nettlehash? (
static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
)
"
RDEPEND="${COMMON_DEPEND}
dnssec? (
!static? ( >=dev-libs/nettle-3.4:=[gmp] )
)
nettlehash? (
!static? ( dev-libs/nettle:=[gmp] )
)
selinux? ( sec-policy/selinux-dnsmasq )
"
REQUIRED_USE="
dhcp-tools? ( dhcp )
dnssec? ( !nettlehash )
lua? (
script
${LUA_REQUIRED_USE}
)
libidn2? ( idn )
"
use_have() {
local no_only
if [[ ${1} == '-n' ]]; then
no_only=1
shift
fi
local useflag="${1}"
shift
local uword="${1:-${useflag}}"
shift
while [[ ${uword} ]]; do
uword="${uword^^}"
if ! use "${useflag}"; then
printf -- " -DNO_%s" "${uword}"
elif [[ -z "${no_only}" ]]; then
printf -- " -DHAVE_%s" "${uword}"
fi
uword="${1}"
shift
done
}
pkg_setup() {
use lua && lua-single_pkg_setup
}
pkg_pretend() {
if use static; then
einfo "Only sys-libs/gmp and dev-libs/nettle are statically linked."
use dnssec || einfo "Thus, ${P}[!dnssec,static] makes no sense;" \
"in this case the static USE flag does nothing."
fi
}
src_prepare() {
default
sed -i -r 's:lua5.[0-9]+:lua:' Makefile || die
sed -i "s:%%PREFIX%%:${EPREFIX}/usr:" \
dnsmasq.conf.example || die
}
src_configure() {
COPTS=(
$(use_have -n auth-dns auth)
$(use_have conntrack)
$(use_have dbus)
$(use libidn2 || use_have idn)
$(use_have libidn2)
$(use_have -n inotify)
$(use_have -n dhcp dhcp dhcp6)
$(use_have -n ipv6 ipv6 dhcp6)
$(use_have -n id id)
$(use_have -n loop)
$(use_have lua luascript)
$(use_have -n script)
$(use_have -n tftp)
$(use_have dnssec)
$(use_have nettlehash)
$(use_have static dnssec_static)
$(use_have -n dumpfile)
)
}
src_compile() {
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
COPTS="${COPTS[*]}" \
CONFFILE="/etc/${PN}.conf" \
all$(use nls && printf -- "-i18n\n")
use dhcp-tools && emake -C contrib/lease-tools \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
all
}
src_install() {
local lingua puid
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
COPTS="${COPTS[*]}" \
DESTDIR="${ED}" \
install$(use nls && printf -- "-i18n\n")
for lingua in "${DM_LINGUAS[@]}"; do
has ${lingua} ${LINGUAS-${lingua}} \
|| rm -rf "${ED}"/usr/share/locale/${lingua}
done
[[ -d "${D}"/usr/share/locale/ ]] && \
rmdir --ignore-fail-on-non-empty "${ED}"/usr/share/locale/
dodoc CHANGELOG CHANGELOG.archive FAQ dnsmasq.conf.example
dodoc -r logo
docinto html/
dodoc *.html
newinitd "${FILESDIR}"/dnsmasq-init-r4 ${PN}
newconfd "${FILESDIR}"/dnsmasq.confd-r1 ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}"/dnsmasq.logrotate ${PN}
insinto /etc
newins dnsmasq.conf.example dnsmasq.conf
insinto /usr/share/dnsmasq
doins trust-anchors.conf
if use dhcp; then
keepdir /var/lib/misc
newinitd "${FILESDIR}"/dnsmasq-init-dhcp-r3 ${PN}
fi
if use dbus; then
insinto /etc/dbus-1/system.d
doins dbus/dnsmasq.conf
fi
if use dhcp-tools; then
dosbin contrib/lease-tools/{dhcp_release,dhcp_lease_time}
doman contrib/lease-tools/{dhcp_release,dhcp_lease_time}.1
if use ipv6; then
dosbin contrib/lease-tools/dhcp_release6
doman contrib/lease-tools/dhcp_release6.1
fi
fi
systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
}
pkg_preinst() {
[[ -f /var/lib/misc/dnsmasq.leases ]] && \
cp /var/lib/misc/dnsmasq.leases "${T}"
}
pkg_postinst() {
[[ -f "${T}"/dnsmasq.leases ]] && \
cp "${T}"/dnsmasq.leases /var/lib/misc/dnsmasq.leases
}

View File

@@ -1,224 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LUA_COMPAT=( lua5-{1..4} luajit )
inherit toolchain-funcs lua-single systemd
DESCRIPTION="Small forwarding DNS server"
HOMEPAGE="https://thekelleys.org.uk/dnsmasq/doc.html"
SRC_URI="https://thekelleys.org.uk/dnsmasq/${P}.tar.xz"
LICENSE="|| ( GPL-2 GPL-3 )"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="auth-dns conntrack dbus +dhcp dhcp-tools dnssec +dumpfile id idn libidn2"
IUSE+=" +loop +inotify ipv6 lua nettlehash nls script selinux static tftp"
DM_LINGUAS=(de es fi fr id it no pl pt_BR ro)
BDEPEND="
app-arch/xz-utils
virtual/pkgconfig
nls? ( sys-devel/gettext )
"
COMMON_DEPEND="
acct-group/dnsmasq
acct-user/dnsmasq
dbus? ( sys-apps/dbus:= )
idn? (
!libidn2? ( net-dns/libidn:0= )
libidn2? ( >=net-dns/libidn2-2.0:= )
)
lua? ( ${LUA_DEPS} )
conntrack? ( net-libs/libnetfilter_conntrack:= )
nls? ( sys-devel/gettext )
"
DEPEND="${COMMON_DEPEND}
dnssec? (
dev-libs/nettle:=[gmp]
static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
)
nettlehash? (
static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
)
"
RDEPEND="${COMMON_DEPEND}
dnssec? (
!static? ( >=dev-libs/nettle-3.4:=[gmp] )
)
nettlehash? (
!static? ( dev-libs/nettle:=[gmp] )
)
selinux? ( sec-policy/selinux-dnsmasq )
"
REQUIRED_USE="
dhcp-tools? ( dhcp )
dnssec? ( !nettlehash )
lua? (
script
${LUA_REQUIRED_USE}
)
libidn2? ( idn )
"
use_have() {
local no_only
if [[ ${1} == '-n' ]]; then
no_only=1
shift
fi
local useflag="${1}"
shift
local uword="${1:-${useflag}}"
shift
while [[ ${uword} ]]; do
uword="${uword^^}"
if ! use "${useflag}"; then
printf -- " -DNO_%s" "${uword}"
elif [[ -z "${no_only}" ]]; then
printf -- " -DHAVE_%s" "${uword}"
fi
uword="${1}"
shift
done
}
pkg_setup() {
use lua && lua-single_pkg_setup
}
pkg_pretend() {
if use static; then
einfo "Only sys-libs/gmp and dev-libs/nettle are statically linked."
use dnssec || einfo "Thus, ${P}[!dnssec,static] makes no sense;" \
"in this case the static USE flag does nothing."
fi
}
src_prepare() {
default
sed -i -r 's:lua5.[0-9]+:lua:' Makefile || die
sed -i "s:%%PREFIX%%:${EPREFIX}/usr:" \
dnsmasq.conf.example || die
}
src_configure() {
COPTS=(
$(use_have -n auth-dns auth)
$(use_have conntrack)
$(use_have dbus)
$(use libidn2 || use_have idn)
$(use_have libidn2)
$(use_have -n inotify)
$(use_have -n dhcp dhcp dhcp6)
$(use_have -n ipv6 ipv6 dhcp6)
$(use_have -n id id)
$(use_have -n loop)
$(use_have lua luascript)
$(use_have -n script)
$(use_have -n tftp)
$(use_have dnssec)
$(use_have nettlehash)
$(use_have static dnssec_static)
$(use_have -n dumpfile)
)
}
src_compile() {
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
COPTS="${COPTS[*]}" \
CONFFILE="/etc/${PN}.conf" \
all$(use nls && printf -- "-i18n\n")
use dhcp-tools && emake -C contrib/lease-tools \
PREFIX=/usr \
MANDIR=/usr/share/man \
CC="$(tc-getCC)" \
PKG_CONFIG="$(tc-getPKG_CONFIG)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}" \
all
}
src_install() {
local lingua puid
emake \
PREFIX=/usr \
MANDIR=/usr/share/man \
COPTS="${COPTS[*]}" \
DESTDIR="${ED}" \
install$(use nls && printf -- "-i18n\n")
for lingua in "${DM_LINGUAS[@]}"; do
has ${lingua} ${LINGUAS-${lingua}} \
|| rm -rf "${ED}"/usr/share/locale/${lingua}
done
[[ -d "${D}"/usr/share/locale/ ]] && \
rmdir --ignore-fail-on-non-empty "${ED}"/usr/share/locale/
dodoc CHANGELOG CHANGELOG.archive FAQ dnsmasq.conf.example
dodoc -r logo
docinto html/
dodoc *.html
newinitd "${FILESDIR}"/dnsmasq-init-r4 ${PN}
newconfd "${FILESDIR}"/dnsmasq.confd-r1 ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}"/dnsmasq.logrotate ${PN}
insinto /etc
newins dnsmasq.conf.example dnsmasq.conf
insinto /usr/share/dnsmasq
doins trust-anchors.conf
if use dhcp; then
keepdir /var/lib/misc
newinitd "${FILESDIR}"/dnsmasq-init-dhcp-r3 ${PN}
fi
if use dbus; then
insinto /etc/dbus-1/system.d
doins dbus/dnsmasq.conf
fi
if use dhcp-tools; then
dosbin contrib/lease-tools/{dhcp_release,dhcp_lease_time}
doman contrib/lease-tools/{dhcp_release,dhcp_lease_time}.1
if use ipv6; then
dosbin contrib/lease-tools/dhcp_release6
doman contrib/lease-tools/dhcp_release6.1
fi
fi
systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
}
pkg_preinst() {
[[ -f /var/lib/misc/dnsmasq.leases ]] && \
cp /var/lib/misc/dnsmasq.leases "${T}"
}
pkg_postinst() {
[[ -f "${T}"/dnsmasq.leases ]] && \
cp "${T}"/dnsmasq.leases /var/lib/misc/dnsmasq.leases
}

View File

@@ -1,4 +1,3 @@
DIST knot-3.1.5.tar.xz 1414500 BLAKE2B c05fcd9e99d4c7dba03ad9fd9a1131ca4c2556d4911640ef929e68d4caea26ae69ddc61fa19f8c3c4f29efcd0c4c2e47593e86a0ac1826cc96c25f2fe4145bab SHA512 3a8cf04a2d65e04343a70009d43796ae00bf09e34348119b55ba70dac7deb7ff42906d88ef0e413d33dec28a952396a51781dee96727c0c2047b4c5ade54e6fa
DIST knot-3.1.9.tar.xz 1441408 BLAKE2B 383829107bef6b35cbef3c531bc91050e7742ca930bf6645c25cab04203ee360837808c3b5342089ce9ba9ee704290ab95b2f76172577d251c6a9c18796245a0 SHA512 e4ba1c006edcde2dc820e74c39df7a8b8983dfb2d8b8845ac759c6c67dfaabc5aae38282995ed92879a683665c0c179502858631c89ad53c2738f79df951eef7
DIST knot-3.2.1.tar.xz 1626796 BLAKE2B f530438bc0e970abe5a6ed148dfb88e1a384ff54c91694af98d261aa3efc73201e60dc9e5f29c1a96b6d406a34fb4ea6cbde0c28dfdc772aa53836fb47e3f2f7 SHA512 2f12750dc0db06fd915c1b322626780c1d66e10c0b8170dea57559e514f66ee105ed8dbbc0a5f8084fcf772e82c242a8b09ae449631960abf4d60af4a13a1ea0
DIST knot-3.2.2.tar.xz 1632748 BLAKE2B 185567dc883f946570fe60cd7d01d96162c5f13ac84330e5551c293b5011c162401fd25ddbdb43bf9242e13c3cdc8225be107dc579619fe54c05335601cd27ae SHA512 29fadb96c1ea525c6183f9e7552f4ad370579b67d74aec1910a92d561cc2c5656fd7876015f29161d279a07c23643f6584308bf9fa0e74d351b17af54e5e9a7f

View File

@@ -1,118 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic systemd
# subslot: libknot major.libdnssec major.libzscanner major
KNOT_SUBSLOT="13.9.4"
DESCRIPTION="High-performance authoritative-only DNS server"
HOMEPAGE="https://www.knot-dns.cz/ https://gitlab.nic.cz/knot/knot-dns"
SRC_URI="https://secure.nic.cz/files/knot-dns/${P/_/-}.tar.xz"
LICENSE="GPL-3+"
SLOT="0/${KNOT_SUBSLOT}"
KEYWORDS="~amd64 ~riscv ~x86"
KNOT_MODULES=(
"+cookies"
"+dnsproxy"
"dnstap"
"geoip"
"+noudp"
"+onlinesign"
"+queryacl"
"+rrl"
"+stats"
"+synthrecord"
"+whoami"
)
IUSE="doc caps doh +fastparser idn +libidn2 systemd +utils xdp ${KNOT_MODULES[@]}"
RDEPEND="
acct-group/knot
acct-user/knot
dev-db/lmdb:=
dev-libs/libedit
dev-libs/userspace-rcu:=
dev-python/lmdb:=
net-libs/gnutls:=
caps? ( sys-libs/libcap-ng )
dnstap? (
dev-libs/fstrm
dev-libs/protobuf-c:=
)
doh? ( net-libs/nghttp2:= )
geoip? ( dev-libs/libmaxminddb:= )
idn? (
!libidn2? ( net-dns/libidn:0= !net-dns/libidn2 )
libidn2? ( net-dns/libidn2:= )
)
systemd? ( sys-apps/systemd:= )
xdp? (
dev-libs/libbpf:=
net-libs/libmnl:=
)
"
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
doc? ( dev-python/sphinx )
"
S="${WORKDIR}/${P/_/-}"
src_configure() {
local u
local my_conf=(
--with-storage="${EPREFIX}/var/lib/${PN}"
--with-rundir="${EPREFIX}/var/run/${PN}"
$(use_enable fastparser)
$(use_enable dnstap)
$(use_enable doc documentation)
$(use_enable utils utilities)
$(use_enable xdp)
--enable-systemd=$(usex systemd)
$(use_with idn libidn)
$(use_with doh libnghttp2)
)
for u in "${KNOT_MODULES[@]#+}"; do
my_conf+=("$(use_with ${u} module-${u})")
done
if use riscv; then
append-libs -latomic
fi
econf "${my_conf[@]}"
}
src_compile() {
default
use doc && emake -C doc html
}
src_test() {
emake check
}
src_install() {
use doc && local HTML_DOCS=( doc/_build/html/{*.html,*.js,_sources,_static} )
default
rmdir "${D}/var/run/${PN}" "${D}/var/run/" || die
newinitd "${FILESDIR}/knot.init" knot
if use systemd; then
systemd_newunit "${FILESDIR}/knot-1.service" knot.service
fi
find "${D}" -name '*.la' -delete || die
keepdir /var/lib/knot
}

View File

@@ -1,105 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/netfilter.org.asc
inherit linux-info systemd verify-sig
DESCRIPTION="Connection tracking userspace tools"
HOMEPAGE="https://conntrack-tools.netfilter.org"
SRC_URI="https://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.bz2
verify-sig? ( https://www.netfilter.org/projects/conntrack-tools/files/${P}.tar.bz2.sig )"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 ~arm64 ~hppa ppc ppc64 ~riscv x86"
IUSE="doc +cthelper +cttimeout systemd"
RDEPEND="
>=net-libs/libmnl-1.0.3
>=net-libs/libnetfilter_conntrack-1.0.9
>=net-libs/libnetfilter_queue-1.0.2
>=net-libs/libnfnetlink-1.0.1
net-libs/libtirpc
cthelper? (
>=net-libs/libnetfilter_cthelper-1.0.0
)
cttimeout? (
>=net-libs/libnetfilter_cttimeout-1.0.0
)
systemd? (
>=sys-apps/systemd-227
)
"
DEPEND="${RDEPEND}"
BDEPEND="
sys-devel/bison
sys-devel/flex
virtual/pkgconfig
doc? (
app-text/docbook-xml-dtd:4.1.2
app-text/xmlto
)
verify-sig? ( sec-keys/openpgp-keys-netfilter )
"
pkg_setup() {
linux-info_pkg_setup
if kernel_is lt 2 6 18 ; then
die "${PN} requires at least 2.6.18 kernel version"
fi
# netfilter core team has changed some option names with kernel 2.6.20
if kernel_is lt 2 6 20 ; then
CONFIG_CHECK="~IP_NF_CONNTRACK_NETLINK"
else
CONFIG_CHECK="~NF_CT_NETLINK"
fi
CONFIG_CHECK="${CONFIG_CHECK} ~NF_CONNTRACK
~NETFILTER_NETLINK ~NF_CONNTRACK_EVENTS"
check_extra_config
linux_config_exists || \
linux_chkconfig_present "NF_CONNTRACK_IPV4" || \
linux_chkconfig_present "NF_CONNTRACK_IPV6" || \
ewarn "CONFIG_NF_CONNTRACK_IPV4 or CONFIG_NF_CONNTRACK_IPV6 " \
"are not set when one at least should be."
}
src_prepare() {
default
# bug #474858
sed -i -e 's:/var/lock:/run/lock:' doc/stats/conntrackd.conf || die
}
src_configure() {
econf \
$(use_enable cthelper) \
$(use_enable cttimeout) \
$(use_enable systemd)
}
src_compile() {
default
use doc && emake -C doc/manual
}
src_install() {
default
newinitd "${FILESDIR}"/conntrackd.initd-r3 conntrackd
newconfd "${FILESDIR}"/conntrackd.confd-r2 conntrackd
insinto /etc/conntrackd
doins doc/stats/conntrackd.conf
systemd_dounit "${FILESDIR}"/conntrackd.service
dodoc -r doc/sync doc/stats AUTHORS TODO
use doc && dodoc doc/manual/${PN}.html
}

View File

@@ -1,3 +1 @@
DIST firewalld-1.3.0.tar.gz 2146120 BLAKE2B ea023278099e095ab46ea46f78f2e75c33ebadfc253cbc74beb56cf6176b98a3104f3d048c4b5379ce1ee0cca05010f9a90d019602233d869b563dd92de0cf7c SHA512 e20605c8f12c12a2a692eaa38d7833b0c258092a6742c1adc359928fb4fb1872667e3a3bf0bad0b139dfc132a5507a8745789745fd9408324f7d171ad2cd5d68
DIST firewalld-1.3.1.tar.bz2 1229285 BLAKE2B cd3c42f90700ab9076b2bcf51f4a863adf6909072bd3c6a0439e1a37af4cfca7b4bcf323e0609ec22bb98f5669145636d70b394e37bf8e4641590f431d0167eb SHA512 98fb8a3fed2fa02aef2fe4940e044839693daa7a040d38e6ad5ff636e6cb60647917b80340858b28a9f3e3a4a736d7e4e6fdfe00356c072308d0c22277015574
DIST firewalld-1.3.2.tar.bz2 1225416 BLAKE2B 108302dab4a1a156bc12df4ec82a2f6fc7ad3e17ca56f68ac9cbd4f85db4cd06abc1a39275ec6d11fc41e820d9fc01f3cd59a73f44332cd3b9662d50d2eeb22a SHA512 06658d279c5ec8eadfb14f9f7053882fc2872a4e27055e9c3aac81cf93167773d592fc29bd749cb6447116419c663fac79d6df725422394409b9a2e1c4708695

View File

@@ -1,216 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit bash-completion-r1 gnome2-utils linux-info optfeature plocale python-single-r1 systemd xdg-utils
DESCRIPTION="A firewall daemon with D-Bus interface providing a dynamic firewall"
HOMEPAGE="https://firewalld.org/"
SRC_URI="https://github.com/firewalld/firewalld/releases/download/v${PV}/${P}.tar.gz"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
IUSE="gui +nftables +iptables test"
# Tests are too unreliable in sandbox environment
RESTRICT="!test? ( test ) test"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="${PYTHON_DEPS}
iptables? (
net-firewall/iptables[ipv6(+)]
net-firewall/ebtables
net-firewall/ipset
nftables? ( net-firewall/nftables[xtables(+)] )
)
|| ( >=sys-apps/openrc-0.11.5 sys-apps/systemd )
$(python_gen_cond_dep '
dev-python/dbus-python[${PYTHON_USEDEP}]
dev-python/pygobject:3[${PYTHON_USEDEP}]
gui? (
x11-libs/gtk+:3
dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
)
nftables? ( >=net-firewall/nftables-0.9.4[python,json] )
')"
DEPEND="${RDEPEND}
dev-libs/glib:2"
BDEPEND="app-text/docbook-xml-dtd
>=dev-util/intltool-0.35
sys-devel/gettext"
# Testsuite's Makefile.am calls missing(!)
# ... but this seems to be consistent with the autoconf docs?
# Needs more investigation: https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/autom4te-Invocation.html
QA_AM_MAINTAINER_MODE=".*--run autom4te --language=autotest.*"
PLOCALES="ar as ast bg bn_IN ca cs da de el en_GB en_US es et eu fa fi fr gl gu hi hr hu ia id it ja ka kn ko lt ml mr nl or pa pl pt pt_BR ru si sk sq sr sr@latin sv ta te tr uk zh_CN zh_TW"
pkg_setup() {
# See bug #830132 for the huge list
# We can probably narrow it down a bit but it's rather fragile
local CONFIG_CHECK="~NF_CONNTRACK ~NETFILTER_XT_MATCH_CONNTRACK
~NETFILTER
~NETFILTER_ADVANCED
~NETFILTER_INGRESS
~NF_NAT_MASQUERADE
~NF_NAT_REDIRECT
~NF_TABLES_INET
~NF_TABLES_IPV4
~NF_TABLES_IPV6
~NF_CONNTRACK
~NF_CONNTRACK_BROADCAST
~NF_CONNTRACK_NETBIOS_NS
~NF_CONNTRACK_TFTP
~NF_CT_NETLINK
~NF_CT_NETLINK_HELPER
~NF_DEFRAG_IPV4
~NF_DEFRAG_IPV6
~NF_NAT
~NF_NAT_TFTP
~NF_REJECT_IPV4
~NF_REJECT_IPV6
~NF_SOCKET_IPV4
~NF_SOCKET_IPV6
~NF_TABLES
~NF_TPROXY_IPV4
~NF_TPROXY_IPV6
~IP_NF_FILTER
~IP_NF_IPTABLES
~IP_NF_MANGLE
~IP_NF_NAT
~IP_NF_RAW
~IP_NF_SECURITY
~IP_NF_TARGET_MASQUERADE
~IP_NF_TARGET_REJECT
~IP6_NF_FILTER
~IP6_NF_IPTABLES
~IP6_NF_MANGLE
~IP6_NF_NAT
~IP6_NF_RAW
~IP6_NF_SECURITY
~IP6_NF_TARGET_MASQUERADE
~IP6_NF_TARGET_REJECT
~IP_SET
~NETFILTER_CONNCOUNT
~NETFILTER_NETLINK
~NETFILTER_NETLINK_OSF
~NETFILTER_NETLINK_QUEUE
~NETFILTER_SYNPROXY
~NETFILTER_XTABLES
~NETFILTER_XT_CONNMARK
~NETFILTER_XT_MATCH_CONNTRACK
~NETFILTER_XT_MATCH_MULTIPORT
~NETFILTER_XT_MATCH_STATE
~NETFILTER_XT_NAT
~NETFILTER_XT_TARGET_MASQUERADE
~NFT_COMPAT
~NFT_CT
~NFT_FIB
~NFT_FIB_INET
~NFT_FIB_IPV4
~NFT_FIB_IPV6
~NFT_HASH
~NFT_LIMIT
~NFT_LOG
~NFT_MASQ
~NFT_NAT
~NFT_OBJREF
~NFT_QUEUE
~NFT_QUOTA
~NFT_REDIR
~NFT_REJECT
~NFT_REJECT_INET
~NFT_REJECT_IPV4
~NFT_REJECT_IPV6
~NFT_SOCKET
~NFT_SYNPROXY
~NFT_TPROXY
~NFT_TUNNEL
~NFT_XFRM"
# kernel >= 4.19 has unified a NF_CONNTRACK module, bug #692944
if kernel_is -lt 4 19; then
CONFIG_CHECK+=" ~NF_CONNTRACK_IPV4 ~NF_CONNTRACK_IPV6"
fi
# bug #831259
if kernel_is -le 5 4 ; then
CONFIG_CHECK+=" ~NF_TABLES_SET"
fi
# bug #853055
if kernel_is -lt 5 18 ; then
CONFIG_CHECK+=" ~NFT_COUNTER"
fi
linux-info_pkg_setup
}
src_prepare() {
default
plocale_find_changes "po" "" ".po" || die
plocale_get_locales | sed -e 's/ /\n/g' > po/LINGUAS
}
src_configure() {
python_setup
local myeconfargs=(
--enable-systemd
$(use_with iptables iptables "${EPREFIX}/sbin/iptables")
$(use_with iptables iptables_restore "${EPREFIX}/sbin/iptables-restore")
$(use_with iptables ip6tables "${EPREFIX}/sbin/ip6tables")
$(use_with iptables ip6tables_restore "${EPREFIX}/sbin/ip6tables-restore")
$(use_with iptables ebtables "${EPREFIX}/sbin/ebtables")
$(use_with iptables ebtables_restore "${EPREFIX}/sbin/ebtables-restore")
$(use_with iptables ipset "${EPREFIX}/usr/sbin/ipset")
--with-systemd-unitdir="$(systemd_get_systemunitdir)"
--with-bashcompletiondir="$(get_bashcompdir)"
)
econf "${myeconfargs[@]}"
}
src_install() {
default
python_optimize
# Get rid of junk
rm -rf "${D}/etc/sysconfig/" || die
# For non-gui installs we need to remove GUI bits
if ! use gui; then
rm -rf "${D}/etc/xdg/autostart" || die
rm -f "${D}/usr/bin/firewall-applet" || die
rm -f "${D}/usr/bin/firewall-config" || die
rm -rf "${D}/usr/share/applications" || die
rm -rf "${D}/usr/share/icons" || die
fi
newinitd "${FILESDIR}"/firewalld.init firewalld
# Our version drops the/an obsolete 'conflicts' line with old iptables services
# bug #833506
systemd_dounit "${FILESDIR}"/firewalld.service
}
pkg_preinst() {
gnome2_schemas_savelist
}
pkg_postinst() {
xdg_icon_cache_update
gnome2_schemas_update
# bug #833569
optfeature "changing zones with NetworkManager" gnome-extra/nm-applet
}
pkg_postrm() {
xdg_icon_cache_update
gnome2_schemas_update
}

View File

@@ -1,216 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit bash-completion-r1 gnome2-utils linux-info optfeature plocale python-single-r1 systemd xdg-utils
DESCRIPTION="A firewall daemon with D-Bus interface providing a dynamic firewall"
HOMEPAGE="https://firewalld.org/"
SRC_URI="https://github.com/firewalld/firewalld/releases/download/v${PV}/${P}.tar.bz2"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
IUSE="gui +nftables +iptables test"
# Tests are too unreliable in sandbox environment
RESTRICT="!test? ( test ) test"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
RDEPEND="${PYTHON_DEPS}
iptables? (
net-firewall/iptables[ipv6(+)]
net-firewall/ebtables
net-firewall/ipset
nftables? ( net-firewall/nftables[xtables(+)] )
)
|| ( >=sys-apps/openrc-0.11.5 sys-apps/systemd )
$(python_gen_cond_dep '
dev-python/dbus-python[${PYTHON_USEDEP}]
dev-python/pygobject:3[${PYTHON_USEDEP}]
gui? (
x11-libs/gtk+:3
dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
)
nftables? ( >=net-firewall/nftables-0.9.4[python,json] )
')"
DEPEND="${RDEPEND}
dev-libs/glib:2"
BDEPEND="app-text/docbook-xml-dtd
>=dev-util/intltool-0.35
sys-devel/gettext"
# Testsuite's Makefile.am calls missing(!)
# ... but this seems to be consistent with the autoconf docs?
# Needs more investigation: https://www.gnu.org/software/autoconf/manual/autoconf-2.67/html_node/autom4te-Invocation.html
QA_AM_MAINTAINER_MODE=".*--run autom4te --language=autotest.*"
PLOCALES="ar as ast bg bn_IN ca cs da de el en_GB en_US es et eu fa fi fr gl gu hi hr hu ia id it ja ka kn ko lt ml mr nl or pa pl pt pt_BR ru si sk sq sr sr@latin sv ta te tr uk zh_CN zh_TW"
pkg_setup() {
# See bug #830132 for the huge list
# We can probably narrow it down a bit but it's rather fragile
local CONFIG_CHECK="~NF_CONNTRACK ~NETFILTER_XT_MATCH_CONNTRACK
~NETFILTER
~NETFILTER_ADVANCED
~NETFILTER_INGRESS
~NF_NAT_MASQUERADE
~NF_NAT_REDIRECT
~NF_TABLES_INET
~NF_TABLES_IPV4
~NF_TABLES_IPV6
~NF_CONNTRACK
~NF_CONNTRACK_BROADCAST
~NF_CONNTRACK_NETBIOS_NS
~NF_CONNTRACK_TFTP
~NF_CT_NETLINK
~NF_CT_NETLINK_HELPER
~NF_DEFRAG_IPV4
~NF_DEFRAG_IPV6
~NF_NAT
~NF_NAT_TFTP
~NF_REJECT_IPV4
~NF_REJECT_IPV6
~NF_SOCKET_IPV4
~NF_SOCKET_IPV6
~NF_TABLES
~NF_TPROXY_IPV4
~NF_TPROXY_IPV6
~IP_NF_FILTER
~IP_NF_IPTABLES
~IP_NF_MANGLE
~IP_NF_NAT
~IP_NF_RAW
~IP_NF_SECURITY
~IP_NF_TARGET_MASQUERADE
~IP_NF_TARGET_REJECT
~IP6_NF_FILTER
~IP6_NF_IPTABLES
~IP6_NF_MANGLE
~IP6_NF_NAT
~IP6_NF_RAW
~IP6_NF_SECURITY
~IP6_NF_TARGET_MASQUERADE
~IP6_NF_TARGET_REJECT
~IP_SET
~NETFILTER_CONNCOUNT
~NETFILTER_NETLINK
~NETFILTER_NETLINK_OSF
~NETFILTER_NETLINK_QUEUE
~NETFILTER_SYNPROXY
~NETFILTER_XTABLES
~NETFILTER_XT_CONNMARK
~NETFILTER_XT_MATCH_CONNTRACK
~NETFILTER_XT_MATCH_MULTIPORT
~NETFILTER_XT_MATCH_STATE
~NETFILTER_XT_NAT
~NETFILTER_XT_TARGET_MASQUERADE
~NFT_COMPAT
~NFT_CT
~NFT_FIB
~NFT_FIB_INET
~NFT_FIB_IPV4
~NFT_FIB_IPV6
~NFT_HASH
~NFT_LIMIT
~NFT_LOG
~NFT_MASQ
~NFT_NAT
~NFT_OBJREF
~NFT_QUEUE
~NFT_QUOTA
~NFT_REDIR
~NFT_REJECT
~NFT_REJECT_INET
~NFT_REJECT_IPV4
~NFT_REJECT_IPV6
~NFT_SOCKET
~NFT_SYNPROXY
~NFT_TPROXY
~NFT_TUNNEL
~NFT_XFRM"
# kernel >= 4.19 has unified a NF_CONNTRACK module, bug #692944
if kernel_is -lt 4 19; then
CONFIG_CHECK+=" ~NF_CONNTRACK_IPV4 ~NF_CONNTRACK_IPV6"
fi
# bug #831259
if kernel_is -le 5 4 ; then
CONFIG_CHECK+=" ~NF_TABLES_SET"
fi
# bug #853055
if kernel_is -lt 5 18 ; then
CONFIG_CHECK+=" ~NFT_COUNTER"
fi
linux-info_pkg_setup
}
src_prepare() {
default
plocale_find_changes "po" "" ".po" || die
plocale_get_locales | sed -e 's/ /\n/g' > po/LINGUAS
}
src_configure() {
python_setup
local myeconfargs=(
--enable-systemd
$(use_with iptables iptables "${EPREFIX}/sbin/iptables")
$(use_with iptables iptables_restore "${EPREFIX}/sbin/iptables-restore")
$(use_with iptables ip6tables "${EPREFIX}/sbin/ip6tables")
$(use_with iptables ip6tables_restore "${EPREFIX}/sbin/ip6tables-restore")
$(use_with iptables ebtables "${EPREFIX}/sbin/ebtables")
$(use_with iptables ebtables_restore "${EPREFIX}/sbin/ebtables-restore")
$(use_with iptables ipset "${EPREFIX}/usr/sbin/ipset")
--with-systemd-unitdir="$(systemd_get_systemunitdir)"
--with-bashcompletiondir="$(get_bashcompdir)"
)
econf "${myeconfargs[@]}"
}
src_install() {
default
python_optimize
# Get rid of junk
rm -rf "${D}/etc/sysconfig/" || die
# For non-gui installs we need to remove GUI bits
if ! use gui; then
rm -rf "${D}/etc/xdg/autostart" || die
rm -f "${D}/usr/bin/firewall-applet" || die
rm -f "${D}/usr/bin/firewall-config" || die
rm -rf "${D}/usr/share/applications" || die
rm -rf "${D}/usr/share/icons" || die
fi
newinitd "${FILESDIR}"/firewalld.init firewalld
# Our version drops the/an obsolete 'conflicts' line with old iptables services
# bug #833506
systemd_dounit "${FILESDIR}"/firewalld.service
}
pkg_preinst() {
gnome2_schemas_savelist
}
pkg_postinst() {
xdg_icon_cache_update
gnome2_schemas_update
# bug #833569
optfeature "changing zones with NetworkManager" gnome-extra/nm-applet
}
pkg_postrm() {
xdg_icon_cache_update
gnome2_schemas_update
}

View File

@@ -1,3 +1 @@
DIST ipset-7.15.tar.bz2 680383 BLAKE2B 10acff9741370ad80a2845605be1be4f691e987b271f4dcf1fab3abfe158c63c7d39e6b3453ba7cd361dee3df92f85419cfb70806a71b6806555f6571c70b1ed SHA512 0fc936d971c30a0925c585d506c8840e782fdaeec09bc8fd249e874fe838fa55a4dbb697f6e1423a6769abf07a1ce2195abc37cb641e8e4ad70f1b4c7130916a
DIST ipset-7.16.tar.bz2 684512 BLAKE2B c2c58bd6250bab41c3c5cb2ed6a39b1cd5e47a60eca5ed19373dad6c611f5263c61cf12915b5d658700e8e78f4f445788900a2b89cdcdbef3407375b4131fb04 SHA512 e69ddee956f0922c8e08e7e5d358d6b5b24178a9f08151b20957cc3465baaba9ecd6aa938ae157f2cd286ccd7f0b7a279cfd89cec2393a00b43e4d945c275307
DIST ipset-7.17.tar.bz2 684983 BLAKE2B 43b74ab7caf5a963787184aa75b6c071388c8d28997681444b72118aba68b843e961b50418c3fa70b451b4cb090ec62940b770abac2156910442115edbf90d41 SHA512 e308a0d7707ccf7d0cb06a32cf9a822f97862e007abdbab8a91a5a0d5bfbd9f2fb9a3f5e8f36b250ec0d565438c8648a31e8e5b45d8205a76558e90f46e6e597

View File

@@ -1,11 +0,0 @@
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -46,7 +46,7 @@ EXTRA_libipset_la_SOURCES = \
EXTRA_DIST = $(IPSET_SETTYPE_LIST) libipset.map
-pkgconfigdir = $(libdir)/pkgconfig
+pkgconfigdir = $(prefix)/$(libdir)/pkgconfig
pkgconfig_DATA = libipset.pc
dist_man_MANS = libipset.3

View File

@@ -1,114 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
MODULES_OPTIONAL_USE=modules
inherit autotools linux-info linux-mod systemd
DESCRIPTION="IPset tool for iptables, successor to ippool"
HOMEPAGE="https://ipset.netfilter.org/"
SRC_URI="https://ipset.netfilter.org/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv x86"
BDEPEND="virtual/pkgconfig"
RDEPEND=">=net-firewall/iptables-1.4.7
net-libs/libmnl:="
DEPEND="${RDEPEND}"
DOCS=( ChangeLog INSTALL README UPGRADE )
PATCHES=( "${FILESDIR}"/${PN}-7.4-fix-pkgconfig-dir.patch )
# configurable from outside, e.g. /etc/portage/make.conf
IP_NF_SET_MAX=${IP_NF_SET_MAX:-256}
BUILD_TARGETS="modules"
MODULE_NAMES_ARG="kernel/net/netfilter/ipset/:${S}/kernel/net/netfilter/ipset"
MODULE_NAMES="xt_set(kernel/net/netfilter/ipset/:${S}/kernel/net/netfilter/)"
MODULE_NAMES+=" em_ipset(kernel/net/sched/:${S}/kernel/net/sched/)"
for i in ip_set{,_bitmap_{ip{,mac},port},_hash_{ip{,mac,mark,port{,ip,net}},mac,net{,port{,net},iface,net}},_list_set}; do
MODULE_NAMES+=" ${i}(${MODULE_NAMES_ARG})"
done
pkg_setup() {
get_version
CONFIG_CHECK="NETFILTER"
ERROR_NETFILTER="ipset requires NETFILTER support in your kernel."
CONFIG_CHECK+=" NETFILTER_NETLINK"
ERROR_NETFILTER_NETLINK="ipset requires NETFILTER_NETLINK support in your kernel."
# It does still build without NET_NS, but it may be needed in future.
#CONFIG_CHECK="${CONFIG_CHECK} NET_NS"
#ERROR_NET_NS="ipset requires NET_NS (network namespace) support in your kernel."
CONFIG_CHECK+=" !PAX_CONSTIFY_PLUGIN"
ERROR_PAX_CONSTIFY_PLUGIN="ipset contains constified variables (#614896)"
build_modules=0
if use modules; then
if linux_config_src_exists && linux_chkconfig_builtin "MODULES" ; then
if linux_chkconfig_present "IP_NF_SET" || \
linux_chkconfig_present "IP_SET"; then #274577
eerror "There is IP{,_NF}_SET or NETFILTER_XT_SET support in your kernel."
eerror "Please either build ipset with modules USE flag disabled"
eerror "or rebuild kernel without IP_SET support and make sure"
eerror "there is NO kernel ip_set* modules in /lib/modules/<your_kernel>/... ."
die "USE=modules and in-kernel ipset support detected."
else
einfo "Modular kernel detected. Gonna build kernel modules..."
build_modules=1
fi
else
eerror "Nonmodular kernel detected, but USE=modules. Either build"
eerror "modular kernel (without IP_SET) or disable USE=modules"
die "Nonmodular kernel detected, will not build kernel modules"
fi
fi
[[ ${build_modules} -eq 1 ]] && linux-mod_pkg_setup
}
src_prepare() {
default
eautoreconf
}
src_configure() {
econf \
$(use_with modules kmod) \
--disable-static \
--with-maxsets=${IP_NF_SET_MAX} \
--libdir="${EPREFIX}/$(get_libdir)" \
--with-ksource="${KV_DIR}" \
--with-kbuild="${KV_OUT_DIR}"
}
src_compile() {
einfo "Building userspace"
emake
if [[ ${build_modules} -eq 1 ]]; then
einfo "Building kernel modules"
set_arch_to_kernel
emake modules
fi
}
src_install() {
einfo "Installing userspace"
default
find "${ED}" -name '*.la' -delete || die
newinitd "${FILESDIR}"/ipset.initd-r4 ${PN}
newconfd "${FILESDIR}"/ipset.confd ${PN}
systemd_newunit "${FILESDIR}"/ipset.systemd ${PN}.service
keepdir /var/lib/ipset
if [[ ${build_modules} -eq 1 ]]; then
einfo "Installing kernel modules"
linux-mod_src_install
fi
}

View File

@@ -1,119 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MODULES_OPTIONAL_USE=modules
inherit autotools bash-completion-r1 linux-info linux-mod systemd
DESCRIPTION="IPset tool for iptables, successor to ippool"
HOMEPAGE="https://ipset.netfilter.org/"
SRC_URI="https://ipset.netfilter.org/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
RDEPEND="
>=net-firewall/iptables-1.4.7
net-libs/libmnl:=
"
DEPEND="${RDEPEND}"
BDEPEND="virtual/pkgconfig"
DOCS=( ChangeLog INSTALL README UPGRADE )
PATCHES=(
"${FILESDIR}"/${PN}-7.16-bashism.patch
)
# configurable from outside, e.g. /etc/portage/make.conf
IP_NF_SET_MAX=${IP_NF_SET_MAX:-256}
BUILD_TARGETS="modules"
MODULE_NAMES_ARG="kernel/net/netfilter/ipset/:${S}/kernel/net/netfilter/ipset"
MODULE_NAMES="xt_set(kernel/net/netfilter/ipset/:${S}/kernel/net/netfilter/)"
MODULE_NAMES+=" em_ipset(kernel/net/sched/:${S}/kernel/net/sched/)"
for i in ip_set{,_bitmap_{ip{,mac},port},_hash_{ip{,mac,mark,port{,ip,net}},mac,net{,port{,net},iface,net}},_list_set}; do
MODULE_NAMES+=" ${i}(${MODULE_NAMES_ARG})"
done
pkg_setup() {
get_version
CONFIG_CHECK="NETFILTER"
ERROR_NETFILTER="ipset requires NETFILTER support in your kernel."
CONFIG_CHECK+=" NETFILTER_NETLINK"
ERROR_NETFILTER_NETLINK="ipset requires NETFILTER_NETLINK support in your kernel."
# It does still build without NET_NS, but it may be needed in future.
#CONFIG_CHECK="${CONFIG_CHECK} NET_NS"
#ERROR_NET_NS="ipset requires NET_NS (network namespace) support in your kernel."
CONFIG_CHECK+=" !PAX_CONSTIFY_PLUGIN"
ERROR_PAX_CONSTIFY_PLUGIN="ipset contains constified variables (#614896)"
build_modules=0
if use modules; then
if linux_config_src_exists && linux_chkconfig_builtin "MODULES" ; then
if linux_chkconfig_present "IP_NF_SET" || \
linux_chkconfig_present "IP_SET"; then #274577
eerror "There is IP{,_NF}_SET or NETFILTER_XT_SET support in your kernel."
eerror "Please either build ipset with modules USE flag disabled"
eerror "or rebuild kernel without IP_SET support and make sure"
eerror "there is NO kernel ip_set* modules in /lib/modules/<your_kernel>/... ."
die "USE=modules and in-kernel ipset support detected."
else
einfo "Modular kernel detected. Gonna build kernel modules..."
build_modules=1
fi
else
eerror "Nonmodular kernel detected, but USE=modules. Either build"
eerror "modular kernel (without IP_SET) or disable USE=modules"
die "Nonmodular kernel detected, will not build kernel modules"
fi
fi
[[ ${build_modules} -eq 1 ]] && linux-mod_pkg_setup
}
src_prepare() {
default
eautoreconf
}
src_configure() {
export bashcompdir="$(get_bashcompdir)"
econf \
--enable-bashcompl \
$(use_with modules kmod) \
--with-maxsets=${IP_NF_SET_MAX} \
--with-ksource="${KV_DIR}" \
--with-kbuild="${KV_OUT_DIR}"
}
src_compile() {
einfo "Building userspace"
emake
if [[ ${build_modules} -eq 1 ]]; then
einfo "Building kernel modules"
set_arch_to_kernel
emake modules
fi
}
src_install() {
einfo "Installing userspace"
default
find "${ED}" -name '*.la' -delete || die
newinitd "${FILESDIR}"/ipset.initd-r4 ${PN}
newconfd "${FILESDIR}"/ipset.confd ${PN}
systemd_newunit "${FILESDIR}"/ipset.systemd ${PN}.service
keepdir /var/lib/ipset
if [[ ${build_modules} -eq 1 ]]; then
einfo "Installing kernel modules"
linux-mod_src_install
fi
}

View File

@@ -1,6 +1,2 @@
DIST nftables-1.0.5.tar.bz2 982538 BLAKE2B 5d58170b8fc6feccc1581653cd0815d37b59b43b7f4f9bff9f7fb46928c6c7eee5a6f07150c404f7cf42f5a1d2e980860a4dd2589b99773179e019a093c42cfa SHA512 51cbf10579db7eed58f4358044840f2ce1bffe84533c5fb03e0ebcc702970856455576ac793169c94d38a9f8148e33631ad91444e54a8be189d93af7c27feb9a
DIST nftables-1.0.5.tar.bz2.sig 566 BLAKE2B 7744a84c213999b35c3094fa5d9f974acec6fedac3d310422834285823825bcb14fb55b463d88b91fa41d79e33ce34498769992d912b7178fa1f70bd7a1e0977 SHA512 fbff6b5b28d81e964d4523729c7866d0b52d764d090cae70a43d850bc579b17308ec41a3d7fe6707877850028e99ad09c33b5e87fa16ac5199dfeba193a61511
DIST nftables-1.0.6.tar.xz 834584 BLAKE2B 7c14db883f0ee9394b603870c93dcc92ce472bf0349a59d0e377f1d44efc870df3449d6f2dc9a198f2e396e5d73b19532dac498e832083ca8cf65cc78db9ccd4 SHA512 afe08381acd27d39cc94743190b07c579f8c49c4182c9b8753d5b3a0b7d1fe89ed664fdbc19cef1547c3ca4a0c1e32ca4303dba9ec626272fa08c77e88c11119
DIST nftables-1.0.6.tar.xz.sig 566 BLAKE2B 3f90c48f521a1c433be9d0bee3b2beb080ac51f07c213f598af217b2d1b2e883e432f014c1a378c18eac4b8620e323fbdebb654aa53b345210a3f62ccfe93507 SHA512 83657d213e675c8ffa377112efc7fb0f5b756287f06aa9ccd3716eb76b87a14dab01a3ee82929511f26f7e9ce407d8b7ac0dd706c8211ad007fdfcf11d679a93
DIST nftables-1.0.7.tar.xz 857140 BLAKE2B 972adbb958f36b300618ce03fbbfc1fdb6fd55a3512227e4bc1fd71365be5cc8d3ee105424e8cc513588100bf00d5e69486310435efb2b0d3f5d464ed6999859 SHA512 063f3a42327fd4dca9214314c7e7bcc7310f2ccbbce4c36f86a291d61d443f94b0f91435ecd04eb757596df8be91a802daeef394ba422c3623a81b2917e01116
DIST nftables-1.0.7.tar.xz.sig 566 BLAKE2B 53abe2598e9b362912d3e2e94ea6e04352d0484b9d1d645c8f18b6133be53d63a8d71d500e57528a57aededb84dedaf61010236afda560b16e7642db45e2f45c SHA512 b5821aa6939dc5b4d16065d9d7083e4ff40b9f99417354efbcbc95a8ccde43108b99a5b8a75a24086cd3df2291a049cad3adb7b06e2c098f0eb7861f85c5c768

View File

@@ -1,231 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_OPTIONAL=1
PYTHON_COMPAT=( python3_{9..11} )
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/netfilter.org.asc
inherit edo linux-info distutils-r1 systemd verify-sig
DESCRIPTION="Linux kernel (3.13+) firewall, NAT and packet mangling tools"
HOMEPAGE="https://netfilter.org/projects/nftables/"
if [[ ${PV} =~ ^[9]{4,}$ ]]; then
inherit autotools git-r3
EGIT_REPO_URI="https://git.netfilter.org/${PN}"
BDEPEND="sys-devel/bison"
else
SRC_URI="https://netfilter.org/projects/nftables/files/${P}.tar.bz2
verify-sig? ( https://netfilter.org/projects/nftables/files/${P}.tar.bz2.sig )"
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-netfilter )"
fi
LICENSE="GPL-2"
SLOT="0/1"
IUSE="debug doc +gmp json libedit +modern-kernel python +readline static-libs test xtables"
RESTRICT="!test? ( test )"
RDEPEND="
>=net-libs/libmnl-1.0.4:0=
>=net-libs/libnftnl-1.2.3:0=
gmp? ( dev-libs/gmp:= )
json? ( dev-libs/jansson:= )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:= )
xtables? ( >=net-firewall/iptables-1.6.1:= )
"
DEPEND="${RDEPEND}"
BDEPEND+="
sys-devel/flex
virtual/pkgconfig
doc? (
app-text/asciidoc
>=app-text/docbook2X-0.8.8-r4
)
python? ( ${PYTHON_DEPS} )
"
REQUIRED_USE="
python? ( ${PYTHON_REQUIRED_USE} )
libedit? ( !readline )
"
pkg_setup() {
if kernel_is ge 3 13; then
if use modern-kernel && kernel_is lt 3 18; then
eerror "The modern-kernel USE flag requires kernel version 3.18 or newer to work properly."
fi
CONFIG_CHECK="~NF_TABLES"
linux-info_pkg_setup
else
eerror "This package requires kernel version 3.13 or newer to work properly."
fi
}
src_prepare() {
default
if [[ ${PV} =~ ^[9]{4,}$ ]] ; then
eautoreconf
fi
if use python; then
pushd py >/dev/null || die
distutils-r1_src_prepare
popd >/dev/null || die
fi
}
src_configure() {
local myeconfargs=(
# We handle python separately
--disable-python
--disable-static
--sbindir="${EPREFIX}"/sbin
$(use_enable debug)
$(use_enable doc man-doc)
$(use_with !gmp mini_gmp)
$(use_with json)
$(use_with libedit cli editline)
$(use_with readline cli readline)
$(use_enable static-libs static)
$(use_with xtables)
)
econf "${myeconfargs[@]}"
if use python; then
pushd py >/dev/null || die
distutils-r1_src_configure
popd >/dev/null || die
fi
}
src_compile() {
default
if use python; then
pushd py >/dev/null || die
distutils-r1_src_compile
popd >/dev/null || die
fi
}
src_test() {
emake check
if [[ ${EUID} == 0 ]]; then
edo tests/shell/run-tests.sh -v
else
ewarn "Skipping shell tests (requires root)"
fi
# Need to rig up Python eclass if using this, but it doesn't seem to work
# for me anyway.
#cd tests/py || die
#"${EPYTHON}" nft-test.py || die
}
src_install() {
default
if ! use doc && [[ ! ${PV} =~ ^[9]{4,}$ ]]; then
pushd doc >/dev/null || die
doman *.?
popd >/dev/null || die
fi
# Do it here instead of in src_prepare to avoid eautoreconf
# rmdir lets us catch if more files end up installed in /etc/nftables
dodir /usr/share/doc/${PF}/skels/
mv "${ED}"/etc/nftables/osf "${ED}"/usr/share/doc/${PF}/skels/osf || die
rmdir "${ED}"/etc/nftables || die
local mksuffix="$(usex modern-kernel '-mk' '')"
exeinto /usr/libexec/${PN}
newexe "${FILESDIR}"/libexec/${PN}${mksuffix}.sh ${PN}.sh
newconfd "${FILESDIR}"/${PN}${mksuffix}.confd ${PN}
newinitd "${FILESDIR}"/${PN}${mksuffix}.init-r1 ${PN}
keepdir /var/lib/nftables
systemd_dounit "${FILESDIR}"/systemd/${PN}-restore.service
if use python ; then
pushd py >/dev/null || die
distutils-r1_src_install
popd >/dev/null || die
fi
find "${ED}" -type f -name "*.la" -delete || die
}
pkg_preinst() {
local stderr
# There's a history of regressions with nftables upgrades. Perform a
# safety check to help us spot them earlier. For the check to pass, the
# currently loaded ruleset, if any, must be successfully evaluated by
# the newly built instance of nft(8).
if [[ -n ${ROOT} ]] || [[ ! -d /sys/module/nftables ]] || [[ ! -x /sbin/nft ]]; then
# Either nftables isn't yet in use or nft(8) cannot be executed.
return
elif ! stderr=$(umask 177; /sbin/nft -t list ruleset 2>&1 >"${T}"/ruleset.nft); then
# Report errors induced by trying to list the ruleset but don't
# treat them as being fatal.
printf '%s\n' "${stderr}" >&2
elif [[ ${stderr} == *"is managed by iptables-nft"* ]]; then
# Rulesets generated by iptables-nft are special in nature and
# will not always be printed in a way that constitutes a valid
# syntax for ntf(8). Ignore them.
return
elif set -- "${ED}"/usr/lib*/libnftables.so; ! LD_LIBRARY_PATH=${1%/*} "${ED}"/sbin/nft -c -f -- "${T}"/ruleset.nft; then
eerror "Your currently loaded ruleset cannot be parsed by the newly built instance of"
eerror "nft. This probably means that there is a regression introduced by v${PV}."
eerror "(To make the ebuild fail instead of warning, set NFTABLES_ABORT_ON_RELOAD_FAILURE=1.)"
if [[ -n ${NFTABLES_ABORT_ON_RELOAD_FAILURE} ]] ; then
die "Aborting because of failed nft reload!"
fi
fi
}
pkg_postinst() {
local save_file
save_file="${EROOT}"/var/lib/nftables/rules-save
# In order for the nftables-restore systemd service to start
# the save_file must exist.
if [[ ! -f "${save_file}" ]]; then
( umask 177; touch "${save_file}" )
elif [[ $(( "$( stat --printf '%05a' "${save_file}" )" & 07177 )) -ne 0 ]]; then
ewarn "Your system has dangerous permissions for ${save_file}"
ewarn "It is probably affected by bug #691326."
ewarn "You may need to fix the permissions of the file. To do so,"
ewarn "you can run the command in the line below as root."
ewarn " 'chmod 600 \"${save_file}\"'"
fi
if has_version 'sys-apps/systemd'; then
elog "If you wish to enable the firewall rules on boot (on systemd) you"
elog "will need to enable the nftables-restore service."
elog " 'systemctl enable ${PN}-restore.service'"
elog
elog "If you are creating firewall rules before the next system restart"
elog "the nftables-restore service must be manually started in order to"
elog "save those rules on shutdown."
fi
if has_version 'sys-apps/openrc'; then
elog "If you wish to enable the firewall rules on boot (on openrc) you"
elog "will need to enable the nftables service."
elog " 'rc-update add ${PN} default'"
elog
elog "If you are creating or updating the firewall rules and wish to save"
elog "them to be loaded on the next restart, use the \"save\" functionality"
elog "in the init script."
elog " 'rc-service ${PN} save'"
fi
}

View File

@@ -1,231 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_OPTIONAL=1
PYTHON_COMPAT=( python3_{9..11} )
VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/netfilter.org.asc
inherit edo linux-info distutils-r1 systemd verify-sig
DESCRIPTION="Linux kernel (3.13+) firewall, NAT and packet mangling tools"
HOMEPAGE="https://netfilter.org/projects/nftables/"
if [[ ${PV} =~ ^[9]{4,}$ ]]; then
inherit autotools git-r3
EGIT_REPO_URI="https://git.netfilter.org/${PN}"
BDEPEND="sys-devel/bison"
else
SRC_URI="https://netfilter.org/projects/nftables/files/${P}.tar.xz
verify-sig? ( https://netfilter.org/projects/nftables/files/${P}.tar.xz.sig )"
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv sparc x86"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-netfilter )"
fi
LICENSE="GPL-2"
SLOT="0/1"
IUSE="debug doc +gmp json libedit +modern-kernel python +readline static-libs test xtables"
RESTRICT="!test? ( test )"
RDEPEND="
>=net-libs/libmnl-1.0.4:=
>=net-libs/libnftnl-1.2.4:=
gmp? ( dev-libs/gmp:= )
json? ( dev-libs/jansson:= )
python? ( ${PYTHON_DEPS} )
readline? ( sys-libs/readline:= )
xtables? ( >=net-firewall/iptables-1.6.1:= )
"
DEPEND="${RDEPEND}"
BDEPEND+="
sys-devel/flex
virtual/pkgconfig
doc? (
app-text/asciidoc
>=app-text/docbook2X-0.8.8-r4
)
python? ( ${PYTHON_DEPS} )
"
REQUIRED_USE="
python? ( ${PYTHON_REQUIRED_USE} )
libedit? ( !readline )
"
pkg_setup() {
if kernel_is ge 3 13; then
if use modern-kernel && kernel_is lt 3 18; then
eerror "The modern-kernel USE flag requires kernel version 3.18 or newer to work properly."
fi
CONFIG_CHECK="~NF_TABLES"
linux-info_pkg_setup
else
eerror "This package requires kernel version 3.13 or newer to work properly."
fi
}
src_prepare() {
default
if [[ ${PV} =~ ^[9]{4,}$ ]] ; then
eautoreconf
fi
if use python; then
pushd py >/dev/null || die
distutils-r1_src_prepare
popd >/dev/null || die
fi
}
src_configure() {
local myeconfargs=(
# We handle python separately
--disable-python
--disable-static
--sbindir="${EPREFIX}"/sbin
$(use_enable debug)
$(use_enable doc man-doc)
$(use_with !gmp mini_gmp)
$(use_with json)
$(use_with libedit cli editline)
$(use_with readline cli readline)
$(use_enable static-libs static)
$(use_with xtables)
)
econf "${myeconfargs[@]}"
if use python; then
pushd py >/dev/null || die
distutils-r1_src_configure
popd >/dev/null || die
fi
}
src_compile() {
default
if use python; then
pushd py >/dev/null || die
distutils-r1_src_compile
popd >/dev/null || die
fi
}
src_test() {
emake check
if [[ ${EUID} == 0 ]]; then
edo tests/shell/run-tests.sh -v
else
ewarn "Skipping shell tests (requires root)"
fi
# Need to rig up Python eclass if using this, but it doesn't seem to work
# for me anyway.
#cd tests/py || die
#"${EPYTHON}" nft-test.py || die
}
src_install() {
default
if ! use doc && [[ ! ${PV} =~ ^[9]{4,}$ ]]; then
pushd doc >/dev/null || die
doman *.?
popd >/dev/null || die
fi
# Do it here instead of in src_prepare to avoid eautoreconf
# rmdir lets us catch if more files end up installed in /etc/nftables
dodir /usr/share/doc/${PF}/skels/
mv "${ED}"/etc/nftables/osf "${ED}"/usr/share/doc/${PF}/skels/osf || die
rmdir "${ED}"/etc/nftables || die
local mksuffix="$(usex modern-kernel '-mk' '')"
exeinto /usr/libexec/${PN}
newexe "${FILESDIR}"/libexec/${PN}${mksuffix}.sh ${PN}.sh
newconfd "${FILESDIR}"/${PN}${mksuffix}.confd ${PN}
newinitd "${FILESDIR}"/${PN}${mksuffix}.init-r1 ${PN}
keepdir /var/lib/nftables
systemd_dounit "${FILESDIR}"/systemd/${PN}-restore.service
if use python ; then
pushd py >/dev/null || die
distutils-r1_src_install
popd >/dev/null || die
fi
find "${ED}" -type f -name "*.la" -delete || die
}
pkg_preinst() {
local stderr
# There's a history of regressions with nftables upgrades. Perform a
# safety check to help us spot them earlier. For the check to pass, the
# currently loaded ruleset, if any, must be successfully evaluated by
# the newly built instance of nft(8).
if [[ -n ${ROOT} ]] || [[ ! -d /sys/module/nftables ]] || [[ ! -x /sbin/nft ]]; then
# Either nftables isn't yet in use or nft(8) cannot be executed.
return
elif ! stderr=$(umask 177; /sbin/nft -t list ruleset 2>&1 >"${T}"/ruleset.nft); then
# Report errors induced by trying to list the ruleset but don't
# treat them as being fatal.
printf '%s\n' "${stderr}" >&2
elif [[ ${stderr} == *"is managed by iptables-nft"* ]]; then
# Rulesets generated by iptables-nft are special in nature and
# will not always be printed in a way that constitutes a valid
# syntax for ntf(8). Ignore them.
return
elif set -- "${ED}"/usr/lib*/libnftables.so; ! LD_LIBRARY_PATH=${1%/*} "${ED}"/sbin/nft -c -f -- "${T}"/ruleset.nft; then
eerror "Your currently loaded ruleset cannot be parsed by the newly built instance of"
eerror "nft. This probably means that there is a regression introduced by v${PV}."
eerror "(To make the ebuild fail instead of warning, set NFTABLES_ABORT_ON_RELOAD_FAILURE=1.)"
if [[ -n ${NFTABLES_ABORT_ON_RELOAD_FAILURE} ]] ; then
die "Aborting because of failed nft reload!"
fi
fi
}
pkg_postinst() {
local save_file
save_file="${EROOT}"/var/lib/nftables/rules-save
# In order for the nftables-restore systemd service to start
# the save_file must exist.
if [[ ! -f "${save_file}" ]]; then
( umask 177; touch "${save_file}" )
elif [[ $(( "$( stat --printf '%05a' "${save_file}" )" & 07177 )) -ne 0 ]]; then
ewarn "Your system has dangerous permissions for ${save_file}"
ewarn "It is probably affected by bug #691326."
ewarn "You may need to fix the permissions of the file. To do so,"
ewarn "you can run the command in the line below as root."
ewarn " 'chmod 600 \"${save_file}\"'"
fi
if has_version 'sys-apps/systemd'; then
elog "If you wish to enable the firewall rules on boot (on systemd) you"
elog "will need to enable the nftables-restore service."
elog " 'systemctl enable ${PN}-restore.service'"
elog
elog "If you are creating firewall rules before the next system restart"
elog "the nftables-restore service must be manually started in order to"
elog "save those rules on shutdown."
fi
if has_version 'sys-apps/openrc'; then
elog "If you wish to enable the firewall rules on boot (on openrc) you"
elog "will need to enable the nftables service."
elog " 'rc-update add ${PN} default'"
elog
elog "If you are creating or updating the firewall rules and wish to save"
elog "them to be loaded on the next restart, use the \"save\" functionality"
elog "in the init script."
elog " 'rc-service ${PN} save'"
fi
}

View File

@@ -1,4 +1,2 @@
DIST xtables-addons-3.20.tar.xz 333232 BLAKE2B bc6df6d6e56bd539dc649d312fe84a5fe9e4743d6b1f72f3b3bb4689cea91cef9051754d30e530fa3140b877a67b2f84490740e669993669a1ee515d0a434b8d SHA512 0a38c12159dd555a31f24dc5a74d012b27723925df827edffe2343f6b8e61e838b5dc4776bafe37587e9622b9da1e9cd4220e4f576d58e78eb21ad18a419fb2e
DIST xtables-addons-3.21.tar.xz 333160 BLAKE2B 5847955ff1e64543d278cfd0572ea10f0395297f87005c1310c7c213a774f4b88b6fd89e41798c549074d93a162e82b5a0c89c493f0f96021546570697860050 SHA512 5ec30a14f7dffcaa87bbeb910b46ef5ba3bafc4b6f0ce1579eb21ca6395106fa9157b300f463b43169ea85ec9ff0d9a5377cb5ebc2bb2f637e2a1fe9ff61728e
DIST xtables-addons-3.23.tar.xz 335776 BLAKE2B 9251a2b9707d93dae294dda24bac4f08b69b44486a5235c248f0f64d0ccac78bd6978c98ad9f83de53da1af75d4788b56ce3285a44c738346560ecfc64f8565b SHA512 f798ad74db6068ee50cae662f3de331cbc8654f0ab2b1d59ce3f7818795213e771702078e495f526a212ce8b9ba7920c04670cd5fb3ff51e693bf0161d2e2486
DIST xtables-addons-3.24.tar.xz 335724 BLAKE2B c086616c0366346bd87813ae0fc561bdb8f892eecea19ef88c65afef5318ac6f75fec658e0c6595de5c620c965b2bd7f10e45ff3ec55ffb9ddf8e85643190e7e SHA512 08c3b87617e0124aef99a3953fc5e03e8d98be50ce70771e352509ec64263d5256f744489f10f39879630d9dc8d28f3c91173b4739c95bbd8d5ad56e33138eb4

View File

@@ -1,189 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MODULES_OPTIONAL_USE=modules
MODULES_OPTIONAL_USE_IUSE_DEFAULT=1
inherit linux-info linux-mod multilib toolchain-funcs
DESCRIPTION="iptables extensions not yet accepted in the main kernel"
HOMEPAGE="https://inai.de/projects/xtables-addons/"
SRC_URI="https://inai.de/files/xtables-addons/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
MODULES="quota2 psd pknock lscan length2 ipv4options ipp2p iface gradm geoip fuzzy condition tarpit sysrq proto logmark ipmark echo dnetmap dhcpmac delude chaos account"
for mod in ${MODULES}; do
IUSE="${IUSE} xtables_addons_${mod}"
done
DEPEND=">=net-firewall/iptables-1.6.0"
RDEPEND="${DEPEND}
xtables_addons_geoip? (
app-arch/unzip
dev-perl/Net-CIDR-Lite
dev-perl/Text-CSV_XS
virtual/perl-Getopt-Long
)
"
DEPEND="${DEPEND}
virtual/linux-sources"
SKIP_MODULES=""
XA_check4internal_module() {
local mod=${1}
local version=${3}
local kconfigname=${3}
if use xtables_addons_${mod} && kernel_is -gt ${version}; then
ewarn "${kconfigname} should be provided by the kernel. Skipping its build..."
if ! linux_chkconfig_present ${kconfigname}; then
ewarn "Please enable ${kconfigname} target in your kernel
configuration or disable checksum module in ${PN}."
fi
# SKIP_MODULES in case we need to disable building of everything
# like having this USE disabled
SKIP_MODULES+=" ${mod}"
fi
}
pkg_setup() {
if use modules; then
get_version
check_modules_supported
CONFIG_CHECK="NF_CONNTRACK NF_CONNTRACK_MARK ~CONNECTOR"
ERROR_CONNECTOR="Please, enable CONFIG_CONNECTOR if you wish to receive userspace notifications from pknock through netlink/connector"
linux-mod_pkg_setup
if ! linux_chkconfig_present IPV6; then
SKIP_IPV6_MODULES="ip6table_rawpost"
ewarn "No IPV6 support in kernel. Disabling: ${SKIP_IPV6_MODULES}"
fi
kernel_is -lt 4 18 && die "${P} requires kernel version >= 4.18"
fi
}
# Helper for maintainer: cheks if all possible MODULES are listed.
XA_qa_check() {
local all_modules
all_modules=$(sed -n '/^build_/{s/build_\(.*\)=.*/\L\1/;G;s/\n/ /;s/ $//;h}; ${x;p}' "${S}/mconfig")
if [[ ${all_modules} != ${MODULES} ]]; then
ewarn "QA: Modules in mconfig differ from \$MODULES in ebuild."
ewarn "Please, update MODULES in ebuild."
ewarn "'${all_modules}'"
fi
}
# Is there any use flag set?
XA_has_something_to_build() {
local mod
for mod in ${MODULES}; do
use xtables_addons_${mod} && return
done
eerror "All modules are disabled. What do you want me to build?"
eerror "Please, set XTABLES_ADDONS to any combination of"
eerror "${MODULES}"
die "All modules are disabled."
}
# Parse Kbuid files and generates list of sources
XA_get_module_name() {
[[ $# != 1 ]] && die "XA_get_sources_for_mod: needs exactly one argument."
local mod objdir build_mod sources_list
mod=${1}
objdir=${S}/extensions
# Take modules name from mconfig
build_mod=$(sed -n "s/\(build_${mod}\)=.*/\1/Ip" "${S}/mconfig")
# strip .o, = and everything before = and print
sources_list=$(sed -n "/^obj-[$][{]${build_mod}[}]/\
{s:obj-[^+]\+ [+]=[[:space:]]*::;s:[.]o::g;p}" \
"${objdir}/Kbuild")
if [[ -d ${S}/extensions/${sources_list} ]]; then
objdir=${S}/extensions/${sources_list}
sources_list=$(sed -n "/^obj-m/\
{s:obj-[^+]\+ [+]=[[:space:]]*::;s:[.]o::g;p}" \
"${objdir}/Kbuild")
fi
for mod_src in ${sources_list}; do
has ${mod_src} ${SKIP_IPV6_MODULES} || \
echo " ${mod_src}(xtables_addons:${S}/extensions:${objdir})"
done
}
# Die on modules known to fail on certain kernel version.
XA_known_failure() {
local module_name=$1
local KV_max=$2
if use xtables_addons_${module_name} && kernel_is ge ${KV_max//./ }; then
eerror
eerror "XTABLES_ADDONS=${module_name} fails to build on linux ${KV_max} or above."
eerror "Either remove XTABLES_ADDONS=${module_name} or use an earlier version of the kernel."
eerror
die
fi
}
src_prepare() {
XA_qa_check
XA_has_something_to_build
# Bug #553630#c2. echo fails on linux-4 and above.
# This appears to be fixed, at least as of linux-4.2
# XA_known_failure "echo" 4
local mod module_name
if use modules; then
MODULE_NAMES="compat_xtables(xtables_addons:${S}/extensions:)"
fi
for mod in ${MODULES}; do
if ! has ${mod} ${SKIP_MODULES} && use xtables_addons_${mod}; then
sed "s/\(build_${mod}=\).*/\1m/I" -i mconfig || die
if use modules; then
for module_name in $(XA_get_module_name ${mod}); do
MODULE_NAMES+=" ${module_name}"
done
fi
else
sed "s/\(build_${mod}=\).*/\1n/I" -i mconfig || die
fi
done
einfo "${MODULE_NAMES}" # for debugging
sed -e 's/depmod -a/true/' -i Makefile.in || die
sed -e '/^all-local:/{s: modules::}' \
-e '/^install-exec-local:/{s: modules_install::}' \
-i extensions/Makefile.in || die
use xtables_addons_geoip || sed -e '/^SUBDIRS/{s/geoip//}' -i Makefile.in
eapply_user
}
src_configure() {
set_arch_to_kernel # .. or it'll look for /arch/amd64/Makefile
econf --prefix="${EPREFIX}/" \
--libexecdir="${EPREFIX}/$(get_libdir)/" \
--with-kbuild="${KV_OUT_DIR}"
}
src_compile() {
emake CFLAGS="${CFLAGS}" CC="$(tc-getCC)" V=1
use modules && BUILD_PARAMS="V=1" BUILD_TARGETS="modules" linux-mod_src_compile
}
src_install() {
emake DESTDIR="${D}" install
use modules && linux-mod_src_install
dodoc -r README doc/*
find "${ED}" -type f -name '*.la' -exec rm -rf '{}' '+'
}

View File

@@ -1,189 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
MODULES_OPTIONAL_USE=modules
MODULES_OPTIONAL_USE_IUSE_DEFAULT=1
inherit linux-info linux-mod multilib toolchain-funcs
DESCRIPTION="iptables extensions not yet accepted in the main kernel"
HOMEPAGE="https://inai.de/projects/xtables-addons/"
SRC_URI="https://inai.de/files/xtables-addons/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
MODULES="quota2 psd pknock lscan length2 ipv4options ipp2p iface gradm geoip fuzzy condition tarpit sysrq proto logmark ipmark echo dnetmap dhcpmac delude chaos account"
for mod in ${MODULES}; do
IUSE="${IUSE} xtables_addons_${mod}"
done
DEPEND=">=net-firewall/iptables-1.6.0"
RDEPEND="${DEPEND}
xtables_addons_geoip? (
app-arch/unzip
dev-perl/Net-CIDR-Lite
dev-perl/Text-CSV_XS
virtual/perl-Getopt-Long
)
"
DEPEND="${DEPEND}
virtual/linux-sources"
SKIP_MODULES=""
XA_check4internal_module() {
local mod=${1}
local version=${3}
local kconfigname=${3}
if use xtables_addons_${mod} && kernel_is -gt ${version}; then
ewarn "${kconfigname} should be provided by the kernel. Skipping its build..."
if ! linux_chkconfig_present ${kconfigname}; then
ewarn "Please enable ${kconfigname} target in your kernel
configuration or disable checksum module in ${PN}."
fi
# SKIP_MODULES in case we need to disable building of everything
# like having this USE disabled
SKIP_MODULES+=" ${mod}"
fi
}
pkg_setup() {
if use modules; then
get_version
check_modules_supported
CONFIG_CHECK="NF_CONNTRACK NF_CONNTRACK_MARK ~CONNECTOR"
ERROR_CONNECTOR="Please, enable CONFIG_CONNECTOR if you wish to receive userspace notifications from pknock through netlink/connector"
linux-mod_pkg_setup
if ! linux_chkconfig_present IPV6; then
SKIP_IPV6_MODULES="ip6table_rawpost"
ewarn "No IPV6 support in kernel. Disabling: ${SKIP_IPV6_MODULES}"
fi
kernel_is -lt 4 18 && die "${P} requires kernel version >= 4.18"
fi
}
# Helper for maintainer: cheks if all possible MODULES are listed.
XA_qa_check() {
local all_modules
all_modules=$(sed -n '/^build_/{s/build_\(.*\)=.*/\L\1/;G;s/\n/ /;s/ $//;h}; ${x;p}' "${S}/mconfig")
if [[ ${all_modules} != ${MODULES} ]]; then
ewarn "QA: Modules in mconfig differ from \$MODULES in ebuild."
ewarn "Please, update MODULES in ebuild."
ewarn "'${all_modules}'"
fi
}
# Is there any use flag set?
XA_has_something_to_build() {
local mod
for mod in ${MODULES}; do
use xtables_addons_${mod} && return
done
eerror "All modules are disabled. What do you want me to build?"
eerror "Please, set XTABLES_ADDONS to any combination of"
eerror "${MODULES}"
die "All modules are disabled."
}
# Parse Kbuid files and generates list of sources
XA_get_module_name() {
[[ $# != 1 ]] && die "XA_get_sources_for_mod: needs exactly one argument."
local mod objdir build_mod sources_list
mod=${1}
objdir=${S}/extensions
# Take modules name from mconfig
build_mod=$(sed -n "s/\(build_${mod}\)=.*/\1/Ip" "${S}/mconfig")
# strip .o, = and everything before = and print
sources_list=$(sed -n "/^obj-[$][{]${build_mod}[}]/\
{s:obj-[^+]\+ [+]=[[:space:]]*::;s:[.]o::g;p}" \
"${objdir}/Kbuild")
if [[ -d ${S}/extensions/${sources_list} ]]; then
objdir=${S}/extensions/${sources_list}
sources_list=$(sed -n "/^obj-m/\
{s:obj-[^+]\+ [+]=[[:space:]]*::;s:[.]o::g;p}" \
"${objdir}/Kbuild")
fi
for mod_src in ${sources_list}; do
has ${mod_src} ${SKIP_IPV6_MODULES} || \
echo " ${mod_src}(xtables_addons:${S}/extensions:${objdir})"
done
}
# Die on modules known to fail on certain kernel version.
XA_known_failure() {
local module_name=$1
local KV_max=$2
if use xtables_addons_${module_name} && kernel_is ge ${KV_max//./ }; then
eerror
eerror "XTABLES_ADDONS=${module_name} fails to build on linux ${KV_max} or above."
eerror "Either remove XTABLES_ADDONS=${module_name} or use an earlier version of the kernel."
eerror
die
fi
}
src_prepare() {
XA_qa_check
XA_has_something_to_build
# Bug #553630#c2. echo fails on linux-4 and above.
# This appears to be fixed, at least as of linux-4.2
# XA_known_failure "echo" 4
local mod module_name
if use modules; then
MODULE_NAMES="compat_xtables(xtables_addons:${S}/extensions:)"
fi
for mod in ${MODULES}; do
if ! has ${mod} ${SKIP_MODULES} && use xtables_addons_${mod}; then
sed "s/\(build_${mod}=\).*/\1m/I" -i mconfig || die
if use modules; then
for module_name in $(XA_get_module_name ${mod}); do
MODULE_NAMES+=" ${module_name}"
done
fi
else
sed "s/\(build_${mod}=\).*/\1n/I" -i mconfig || die
fi
done
einfo "${MODULE_NAMES}" # for debugging
sed -e 's/depmod -a/true/' -i Makefile.in || die
sed -e '/^all-local:/{s: modules::}' \
-e '/^install-exec-local:/{s: modules_install::}' \
-i extensions/Makefile.in || die
use xtables_addons_geoip || sed -e '/^SUBDIRS/{s/geoip//}' -i Makefile.in
eapply_user
}
src_configure() {
set_arch_to_kernel # .. or it'll look for /arch/amd64/Makefile
econf --prefix="${EPREFIX}/" \
--libexecdir="${EPREFIX}/$(get_libdir)/" \
--with-kbuild="${KV_OUT_DIR}"
}
src_compile() {
emake CFLAGS="${CFLAGS}" CC="$(tc-getCC)" V=1
use modules && BUILD_PARAMS="V=1" BUILD_TARGETS="modules" linux-mod_src_compile
}
src_install() {
emake DESTDIR="${D}" install
use modules && linux-mod_src_install
dodoc -r README.rst doc/*
find "${ED}" -type f -name '*.la' -exec rm -rf '{}' '+'
}

View File

@@ -1,3 +1,2 @@
DIST autofs-5.1.6.tar.xz 315316 BLAKE2B 0c5e2351462505c6de0b12e510f0c08a625a0235e1ff8eeaff825946c4530c258449d26aaf6a3794aa82a97e8860711226168f434dd31bfb8a4e70287beb3ca4 SHA512 dc8b2bd86c140905dd1bc461bfc469f92363d9c2687fe422e1e751cc7ad64c0733b011c80bf4840e510e5909176cd1a066968b9a5ba835b62c4cf27537863cf2
DIST autofs-5.1.8-patches-0.tar.xz 3476 BLAKE2B a7fb146542f9cb0a8e93240d9c3f68ff7b569f4dc0e829103ae67ced6d04e110331d320ff429f6e6af03b7265a068ee648738691cd637080cf976f441fe10444 SHA512 73023735bf269e3214e38a4841b6b3a1edff30e5d925a62d3ca9e841726835793c1e242804233e696e946e63720f522ceeb82f78449d3597d3d39b727f4b8d24
DIST autofs-5.1.8.tar.xz 327396 BLAKE2B 22ef626cc867c1ed4f1f859aebe2547c497c35dea712967de70158e85db590f5ffc26165e1479cfc64eb8070a9c43fd06b1570a82bd8bbbac70f2930e1841718 SHA512 6ee6283c0977c82848a654dc24745ee687f6916de441c3688fa91f67ca7295e632ee3808cc2358984a4b9f19841e6e1a91ab48aad6341ac8e63827fe8c32d223

View File

@@ -1,129 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit linux-info systemd toolchain-funcs
DESCRIPTION="Kernel based automounter"
HOMEPAGE="https://web.archive.org/web/*/http://www.linux-consulting.com/Amd_AutoFS/autofs.html"
SRC_URI="https://www.kernel.org/pub/linux/daemons/${PN}/v5/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 sparc x86"
IUSE="dmalloc ldap +libtirpc mount-locking sasl systemd"
# currently, sasl code assumes the presence of kerberosV
RDEPEND="
net-libs/libnsl:=
>=sys-apps/util-linux-2.20
dmalloc? ( dev-libs/dmalloc[threads] )
ldap? (
>=net-nds/openldap-2.0:=
sasl? (
dev-libs/cyrus-sasl
dev-libs/libxml2
virtual/krb5
)
)
systemd? ( sys-apps/systemd )
libtirpc? ( net-libs/libtirpc:= )
!libtirpc? ( elibc_glibc? ( sys-libs/glibc[rpc(-)] ) )
"
DEPEND="${RDEPEND}
libtirpc? ( net-libs/rpcsvc-proto )
"
BDEPEND="
sys-devel/flex
virtual/pkgconfig
app-alternatives/yacc
"
PATCHES=(
"${FILESDIR}/${P}-glibc.patch"
"${FILESDIR}/${P}-musl.patch"
"${FILESDIR}/${P}-pid.patch"
)
pkg_setup() {
linux-info_pkg_setup
local CONFIG_CHECK
if kernel_is -ge 4 18; then
CONFIG_CHECK="~AUTOFS_FS"
else
CONFIG_CHECK="~AUTOFS4_FS"
fi
check_extra_config
}
src_prepare() {
sed -i -e "s:/usr/bin/kill:/bin/kill:" samples/autofs.service.in || die # bug #479492
sed -i -e "/^EnvironmentFile/d" samples/autofs.service.in || die # bug #592334
# Install samples including autofs.service
sed -i -e "/^SUBDIRS/s/$/ samples/g" Makefile.rules || die
default
}
src_configure() {
# bug #483716
tc-export AR
# --with-confdir is for bug #361481
# --with-mapdir is for bug #385113
local myeconfargs=(
--with-confdir=/etc/conf.d
--with-mapdir=/etc/autofs
$(use_with dmalloc)
$(use_with ldap openldap)
$(use_with libtirpc)
$(use_with sasl)
$(use_enable mount-locking)
$(use_with systemd systemd $(systemd_get_systemunitdir)) # bug #479492
--without-hesiod
--disable-ext-env
--enable-sloppy-mount # bug #453778
--enable-force-shutdown
--enable-ignore-busy
RANLIB="$(type -P $(tc-getRANLIB))" # bug #483716
)
econf "${myeconfargs[@]}"
}
src_compile() {
export DONTSTRIP=1
default
}
src_install() {
default
rmdir "${D}"/run
if kernel_is -lt 2 6 30; then
# kernel patches
docinto patches
dodoc patches/${PN}4-2.6.??{,.?{,?}}-v5-update-????????.patch
fi
newinitd "${FILESDIR}"/autofs5.initd autofs
insinto etc/autofs
newins "${FILESDIR}"/autofs5-auto.master auto.master
}
pkg_postinst() {
if kernel_is -lt 2 6 30; then
elog "This version of ${PN} requires a kernel with autofs4 supporting"
elog "protocol version 5.00. Patches for kernels older than 2.6.30 have"
elog "been installed into"
elog "${EROOT}/usr/share/doc/${P}/patches."
elog "For further instructions how to patch the kernel, please refer to"
elog "${EROOT}/usr/share/doc/${P}/INSTALL."
elog
fi
elog "If you plan on using autofs for automounting remote NFS mounts,"
elog "please check that both portmap (or rpcbind) and rpc.statd/lockd"
elog "are running."
}

View File

@@ -1,110 +0,0 @@
diff --git a/daemon/lookup.c b/daemon/lookup.c
index 60a48f3..bbd65e0 100644
--- a/daemon/lookup.c
+++ b/daemon/lookup.c
@@ -382,7 +382,7 @@ static int read_file_source_instance(struct autofs_point *ap, struct map_source
if (!S_ISREG(st.st_mode))
return NSS_STATUS_NOTFOUND;
- if (st.st_mode & __S_IEXEC)
+ if (st.st_mode & S_IEXEC)
type = src_prog;
else
type = src_file;
@@ -937,7 +937,7 @@ static int lookup_name_file_source_instance(struct autofs_point *ap, struct map_
if (!S_ISREG(st.st_mode))
return NSS_STATUS_NOTFOUND;
- if (st.st_mode & __S_IEXEC)
+ if (st.st_mode & S_IEXEC)
type = src_prog;
else
type = src_file;
@@ -1113,7 +1113,7 @@ static struct map_source *lookup_get_map_source(struct master_mapent *entry)
if (!S_ISREG(st.st_mode))
return NULL;
- if (st.st_mode & __S_IEXEC)
+ if (st.st_mode & S_IEXEC)
type = "program";
else
type = "file";
diff --git a/include/automount.h b/include/automount.h
index 4fd0ba9..7b855a7 100644
--- a/include/automount.h
+++ b/include/automount.h
@@ -13,6 +13,7 @@
#include <limits.h>
#include <time.h>
#include <syslog.h>
+#include <sys/procfs.h>
#include <sys/types.h>
#include <pthread.h>
#include <sched.h>
@@ -142,6 +143,16 @@ struct autofs_point;
#define UMOUNT_RETRIES 8
#define EXPIRE_RETRIES 3
+#ifndef __SWORD_TYPE
+#if __WORDSIZE == 32
+# define __SWORD_TYPE int
+#elif __WORDSIZE == 64
+# define __SWORD_TYPE long int
+#else
+#error
+#endif
+#endif
+
static u_int32_t inline hash(const char *key, unsigned int size)
{
u_int32_t hashval;
diff --git a/include/nsswitch.h b/include/nsswitch.h
index d3e4027..8376113 100644
--- a/include/nsswitch.h
+++ b/include/nsswitch.h
@@ -24,6 +24,10 @@
#include <netdb.h>
#include "list.h"
+#ifndef _PATH_NSSWITCH_CONF
+#define _PATH_NSSWITCH_CONF "/dev/null"
+#endif
+
#define NSSWITCH_FILE _PATH_NSSWITCH_CONF
enum nsswitch_status {
diff --git a/include/rpc_subs.h b/include/rpc_subs.h
index 6e35eed..7ba4b93 100644
--- a/include/rpc_subs.h
+++ b/include/rpc_subs.h
@@ -18,7 +18,7 @@
#include <rpc/rpc.h>
#include <rpc/pmap_prot.h>
-#include <nfs/nfs.h>
+#include <linux/nfs.h>
#include <linux/nfs2.h>
#include <linux/nfs3.h>
diff --git a/modules/lookup_multi.c b/modules/lookup_multi.c
index fadd2ea..cf109de 100644
--- a/modules/lookup_multi.c
+++ b/modules/lookup_multi.c
@@ -247,7 +247,7 @@ static struct lookup_mod *nss_open_lookup(const char *format, int argc, const ch
continue;
}
- if (st.st_mode & __S_IEXEC)
+ if (st.st_mode & S_IEXEC)
type = src_prog;
else
type = src_file;
@@ -452,7 +452,7 @@ int lookup_reinit(const char *my_mapfmt,
continue;
}
- if (st.st_mode & __S_IEXEC)
+ if (st.st_mode & S_IEXEC)
type = src_prog;
else
type = src_file;

View File

@@ -1,12 +0,0 @@
--- a/include/automount.h
+++ b/include/automount.h
@@ -25,6 +25,9 @@
#include "list.h"
#include <linux/auto_fs4.h>
+#ifndef __GLIBC__
+#include <bits/reg.h>
+#endif
#include "defaults.h"
#include "state.h"

View File

@@ -1,14 +0,0 @@
diff --git a/include/log.h b/include/log.h
index 69eed96..14051cc 100644
--- a/include/log.h
+++ b/include/log.h
@@ -46,6 +46,8 @@ extern void log_crit(unsigned, const char* msg, ...);
extern void log_debug(unsigned int, const char* msg, ...);
extern void logmsg(const char* msg, ...);
+#include <unistd.h> /* Required for pid_t */
+
extern pid_t log_pidinfo(struct autofs_point *ap, pid_t pid, char *label);
#define debug(opt, msg, args...) \

View File

@@ -1,138 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{9..11} )
inherit autotools bash-completion-r1 linux-info pam python-single-r1
DESCRIPTION="Tools for Managing Linux CIFS Client Filesystems"
HOMEPAGE="https://wiki.samba.org/index.php/LinuxCIFS_utils"
SRC_URI="https://ftp.samba.org/pub/linux-cifs/${PN}/${P}.tar.bz2"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~x86-linux"
IUSE="+acl +ads +caps creds pam +python systemd"
RDEPEND="
sys-apps/keyutils:=
ads? (
sys-libs/talloc
virtual/krb5
)
caps? ( sys-libs/libcap-ng )
pam? ( sys-libs/pam )
python? ( ${PYTHON_DEPS} )
"
DEPEND="${RDEPEND}"
BDEPEND="dev-python/docutils"
PDEPEND="
acl? ( >=net-fs/samba-4.0.0_alpha1 )
"
REQUIRED_USE="
acl? ( ads )
python? ( ${PYTHON_REQUIRED_USE} )
"
DOCS="doc/linux-cifs-client-guide.odt"
PATCHES=(
"${FILESDIR}/${PN}-6.12-ln_in_destdir.patch" #766594
"${FILESDIR}/${PN}-6.15-musl.patch"
)
pkg_setup() {
linux-info_pkg_setup
if ! linux_config_exists || ! linux_chkconfig_present CIFS; then
ewarn "You must enable CIFS support in your kernel config, "
ewarn "to be able to mount samba shares. You can find it at"
ewarn
ewarn " File systems"
ewarn " Network File Systems"
ewarn " CIFS support"
ewarn
ewarn "and recompile your kernel ..."
fi
use python && python-single-r1_pkg_setup
}
src_prepare() {
default
if has_version app-crypt/heimdal ; then
# https://bugs.gentoo.org/612584
eapply "${FILESDIR}/${PN}-6.7-heimdal.patch"
fi
eautoreconf
}
src_configure() {
local myeconfargs=(
--enable-man
--enable-smbinfo
$(use_enable acl cifsacl cifsidmap)
$(use_enable ads cifsupcall)
$(use_with caps libcap)
$(use_enable creds cifscreds)
$(use_enable pam)
$(use_with pam pamdir $(getpam_mod_dir))
$(use_enable python pythontools)
# mount.cifs can get passwords from systemd
$(use_enable systemd)
)
ROOTSBINDIR="${EPREFIX}"/sbin \
econf "${myeconfargs[@]}"
}
src_install() {
default
# remove empty directories
find "${ED}" -type d -empty -delete || die
if use acl ; then
dodir /etc/cifs-utils
dosym ../../usr/$(get_libdir)/cifs-utils/idmapwb.so \
/etc/cifs-utils/idmap-plugin
dodir /etc/request-key.d
echo 'create cifs.idmap * * /usr/sbin/cifs.idmap %k' \
> "${ED}/etc/request-key.d/cifs.idmap.conf"
fi
if use ads ; then
dodir /etc/request-key.d
echo 'create dns_resolver * * /usr/sbin/cifs.upcall %k' \
> "${ED}/etc/request-key.d/cifs.upcall.conf"
echo 'create cifs.spnego * * /usr/sbin/cifs.upcall %k' \
> "${ED}/etc/request-key.d/cifs.spnego.conf"
fi
dobashcomp bash-completion/smbinfo
use python && python_fix_shebang "${ED}"
}
pkg_postinst() {
# Inform about set-user-ID bit of mount.cifs
ewarn "setuid use flag was dropped due to multiple security implications"
ewarn "such as CVE-2009-2948, CVE-2011-3585 and CVE-2012-1586"
ewarn "You are free to set setuid flags by yourself"
# Inform about upcall usage
if use acl ; then
einfo "The cifs.idmap utility has been enabled by creating the"
einfo "configuration file /etc/request-key.d/cifs.idmap.conf"
einfo "This enables you to get and set CIFS acls."
fi
if use ads ; then
einfo "The cifs.upcall utility has been enabled by creating the"
einfo "configuration file /etc/request-key.d/cifs.upcall.conf"
einfo "This enables you to mount DFS shares."
fi
}

View File

@@ -1,2 +1 @@
DIST s3backer-1.6.1.tar.gz 119768 BLAKE2B 135d5da2e77286d444964b0fca7f152270b4dd1f9e64e4a6d09f50308647add132ce23936f236bcaf9979d75165bc2aa83b3b0f7ddddf03697a275d17ae6836a SHA512 ac75958f15cdbb57b11a829a365bf476b616a9ca596df33dca0d0aff8777e457dd6b15597fe3d2dfc13373304efb8b7cc5ad5d31db9d4760b6fff6981b81a1e4
DIST s3backer-1.6.3.tar.gz 129742 BLAKE2B 05f8b94e9b5e6ffd11b20d5945a9705f1830f3f358c2777695d0c5066bb044bd314d65259ecde299a51288908fcd869b8c516b30b0fbf66975b46a021d4d5bd6 SHA512 f7db1d733a0426df22c1b7d9c1150f8dbfedd0ba2e9120bd61026a481ed52a16f7f09e9e4fcd072cb656da0536cf98472f369eec0195a03b3f105fb3c9a8ba99

View File

@@ -1,35 +0,0 @@
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools
DESCRIPTION="FUSE-based single file backing store via Amazon S3"
HOMEPAGE="https://github.com/archiecobbs/s3backer"
SRC_URI="https://github.com/archiecobbs/s3backer/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
DEPEND="dev-libs/expat
dev-libs/openssl:0=
net-misc/curl
sys-fs/fuse:0
sys-libs/zlib"
RDEPEND="${DEPEND}"
src_prepare() {
default
sed -e "/docdir=/s:packages/\$(PACKAGE):${PF}:" \
-e "/doc_DATA=/d" \
-i Makefile.am || die
eautoreconf
}
src_compile() {
emake CFLAGS="${CFLAGS}"
}

View File

@@ -1,34 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="The no nonsense TFTP/FTP server"
HOMEPAGE="https://github.com/troglobit/uftpd"
SRC_URI="https://github.com/troglobit/${PN}/releases/download/v${PV}/${P}.tar.xz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="test"
RESTRICT="!test? ( test )"
RDEPEND="
>=dev-libs/libite-1.5
>=dev-libs/libuev-2.2"
DEPEND="
${RDEPEND}
!net-misc/uftp
!net-ftp/atftp
!net-ftp/tftp-hpa[server(+)]
test? (
net-ftp/ftp
net-ftp/tnftp
>=net-ftp/tftp-hpa-5.2-r2[client]
)"
src_test() {
# can't run the tests in parallel since the order matters
emake -j 1 check
}

View File

@@ -207,7 +207,6 @@ app-shells/bash:0 readline
# Michał Górny <mgorny@gentoo.org> (2012-10-14)
# Force-enable all PYTHON_TARGETS for python-exec to avoid using private
# API. Please remember to keep it in sync with python_targets.desc.
dev-lang/python-exec python_targets_python3_9
dev-lang/python-exec python_targets_python3_10
dev-lang/python-exec python_targets_python3_11
dev-lang/python-exec python_targets_pypy3

View File

@@ -3,7 +3,6 @@
# This file contains descriptions of PYTHON_SINGLE_TARGET USE_EXPAND flags.
python3_9 - Build for Python 3.9 only
python3_10 - Build for Python 3.10 only
python3_11 - Build for Python 3.11 only
pypy3 - Build for PyPy3 only

View File

@@ -3,7 +3,6 @@
# This file contains descriptions of PYTHON_TARGETS USE_EXPAND flags.
python3_9 - Build with Python 3.9
python3_10 - Build with Python 3.10
python3_11 - Build with Python 3.11
pypy3 - Build with PyPy3

View File

@@ -1,2 +1,3 @@
DIST gmsh-4.10.3-source.tgz 14994941 BLAKE2B b9229f81fc8daabdb3b3db3acd50a0a0e602fec1423bc67a0033a02217c908910eeb1f9bd1cbc57fe2d24b566f256b969fe92e9e9ceefe4cd5af34dd07cf1a9e SHA512 863c5a7fe13095afad37b4450855b2079d034222b5a595fc25b2b0d840d8ef63ceafbbf56ea642b3c3e9277faabe08a2cc19a7a3126a8e12e9d4117243244653
DIST gmsh-4.9.5-source.tgz 14921704 BLAKE2B e805bd786154bf6ce8bebb2d2c38204a88d06a251c45fbe6dd37641a15e02291993c244f26a01faad2a6445a4852274e5481d4236b7a3d9b7ee65fc863f1b880 SHA512 4da61bdf03fb9466af80ac790e83c8888bab755c78d860d601474d7ebca220ac51cba620db310165021412dbecc1cf187ccdff47b8a78e0579339bb72cfa6484
DIST gmsh-4.10.3-source.tgz 14994941 BLAKE2B b9229f81fc8daabdb3b3db3acd50a0a0e602fec1423bc67a0033a02217c908910eeb1f9bd1cbc57fe2d24b566f256b969fe92e9e9ceefe4cd5af34dd07cf1a9e SHA512 863c5a7fe13095afad37b4450855b2079d034222b5a595fc25b2b0d840d8ef63ceafbbf56ea642b3c3e9277faabe08a2cc19a7a3126a8e12e9d4117243244653
DIST gmsh-4.11.1-source.tgz 17985611 BLAKE2B 087664cfbfec758eaa3740a65920ccf673dbcc97a1ef8010222da64b8c586334ed1a77904e94061bdf34e714aae34311ee4f6fb38740473046f99ad6c1e0984c SHA512 8f2a71d6db80dd6bacde6dc1ccd120c7f83609dd69a84a910455a21a43b7392cd7e0e7b4d37aaa6a1b1cbfdb816646cd4828d2ac6d784edba072167280432e4c

View File

@@ -0,0 +1,133 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..11} )
inherit cmake desktop fortran-2 python-any-r1 toolchain-funcs xdg-utils
DESCRIPTION="Three-dimensional finite element mesh generator"
HOMEPAGE="https://gmsh.info"
SRC_URI="https://gmsh.info/src/${P}-source.tgz"
LICENSE="
GPL-2+ free-noncomm
alglib? ( MIT )
gmm? ( LGPL-2.1+ )
metis? ( Apache-2.0 )
netgen? ( LGPL-2.1+ )
voro? ( BSD )
"
SLOT="0"
KEYWORDS="~amd64 ~x86"
## cgns is not compiling ATM, maybe fix cgns lib first
IUSE="+alglib +blas cgns eigen examples +gmm jpeg med metis mpi mumps netgen opencascade petsc pdf png python shared slepc X voro zlib"
REQUIRED_USE="
^^ ( blas eigen )
mumps? ( blas )
slepc? ( petsc )
"
RDEPEND="
virtual/fortran
X? ( x11-libs/fltk:1[xft] )
alglib? ( sci-libs/alglib )
blas? (
virtual/blas
virtual/lapack
sci-libs/fftw:3.0
)
cgns? (
sci-libs/cgnslib
sci-libs/hdf5[mpi=]
)
eigen? ( dev-cpp/eigen )
gmm? ( sci-mathematics/gmm )
jpeg? ( media-libs/libjpeg-turbo )
med? (
sci-libs/med[mpi=]
sci-libs/hdf5[mpi=]
)
mpi? ( virtual/mpi[cxx] )
mumps? ( sci-libs/mumps[mpi=] )
opencascade? ( sci-libs/opencascade:* )
pdf? ( app-text/poppler:= )
png? ( media-libs/libpng:0 )
petsc? ( sci-mathematics/petsc[mpi=] )
slepc? ( sci-mathematics/slepc[mpi=] )
voro? ( sci-libs/voro++ )
zlib? ( sys-libs/zlib )"
DEPEND="${RDEPEND}
${PYTHON_DEPS}
virtual/pkgconfig
python? ( dev-lang/swig:0 )
"
S="${WORKDIR}"/${P}-source
PATCHES=( "${FILESDIR}"/${PN}-4.9.5-opencascade.patch )
pkg_setup() {
fortran-2_pkg_setup
}
src_configure() {
local mycmakeargs=( )
use blas && \
mycmakeargs+=(-DCMAKE_Fortran_COMPILER=$(tc-getF77))
mycmakeargs+=(
-DENABLE_ALGLIB="$(usex alglib)"
-DENABLE_BLAS_LAPACK="$(usex blas)"
-DENABLE_BUILD_DYNAMIC="$(usex shared)"
-DENABLE_CGNS="$(usex cgns)"
-DENABLE_EIGEN="$(usex eigen)"
-DENABLE_FLTK="$(usex X)"
-DENABLE_GMM="$(usex gmm)"
-DENABLE_GRAPHICS="$(usex X)"
-DENABLE_MED="$(usex med)"
-DENABLE_MPI="$(usex mpi)"
-DENABLE_METIS="$(usex metis)"
-DENABLE_MUMPS="$(usex mumps)"
-DENABLE_NETGEN="$(usex netgen)"
-DENABLE_OCC="$(usex opencascade)"
-DENABLE_PETSC="$(usex petsc)"
-DENABLE_POPPLER="$(usex pdf)"
-DENABLE_SLEPC="$(usex slepc)"
-DENABLE_PRIVATE_API="$(usex shared)"
-DENABLE_SYSTEM_CONTRIB="YES"
-DENABLE_VOROPP="$(usex voro)"
-DENABLE_WRAP_PYTHON="$(usex python)")
cmake_src_configure
}
src_install() {
cmake_src_install
if use examples ; then
dodoc -r examples tutorials
docompress -x /usr/share/doc/${PF}/{examples,tutorials}
fi
if use X ; then
newicon -s 64 "/${S}/utils/icons/gmsh-no-text.png" gmsh.png
make_desktop_entry "/usr/bin/gmsh" "Gmsh ${PV}" "gmsh" "Science;Math"
fi
}
pkg_postinst() {
if use X ; then
xdg_icon_cache_update
fi
}
pkg_postrm() {
if use X ; then
xdg_icon_cache_update
fi
}

View File

@@ -93,7 +93,7 @@ DEPEND="
spdk? ( dev-util/cunit )
sqlite? ( dev-db/sqlite:= )
system-boost? ( dev-libs/boost:=[context,python,${PYTHON_USEDEP},zlib] )
!system-boost? ( $(python_gen_impl_dep '' 3.10 3.11) )
!system-boost? ( $(python_gen_impl_dep '' 3.10) )
uring? ( sys-libs/liburing:= )
xfs? ( sys-fs/xfsprogs:= )
zbd? ( sys-block/libzbd:= )
@@ -176,7 +176,6 @@ REQUIRED_USE="
mgr? ( cephfs )
rabbitmq? ( radosgw )
!system-boost? (
python_targets_python3_9
python_targets_python3_10
)
"
@@ -236,7 +235,7 @@ pkg_pretend() {
pkg_setup() {
if ! use system-boost; then
python_setup 3.10 3.11
python_setup 3.10
else
python_setup
fi

View File

@@ -93,7 +93,7 @@ DEPEND="
spdk? ( dev-util/cunit )
sqlite? ( dev-db/sqlite:= )
system-boost? ( dev-libs/boost:=[context,python,${PYTHON_USEDEP},zlib] )
!system-boost? ( $(python_gen_impl_dep '' 3.10 3.11) )
!system-boost? ( $(python_gen_impl_dep '' 3.10) )
uring? ( sys-libs/liburing:= )
xfs? ( sys-fs/xfsprogs:= )
zbd? ( sys-block/libzbd:= )
@@ -176,7 +176,6 @@ REQUIRED_USE="
mgr? ( cephfs )
rabbitmq? ( radosgw )
!system-boost? (
python_targets_python3_9
python_targets_python3_10
)
"
@@ -234,7 +233,7 @@ pkg_pretend() {
pkg_setup() {
if ! use system-boost; then
python_setup 3.10 3.11
python_setup 3.10
else
python_setup
fi