]> git.ipfire.org Git - people/ms/ipfire-2.x.git/commitdiff
knot-resolver: New package knot-resolver
authorMichael Tremer <michael.tremer@ipfire.org>
Sun, 20 Apr 2025 11:16:16 +0000 (11:16 +0000)
committerMichael Tremer <michael.tremer@ipfire.org>
Tue, 22 Apr 2025 10:04:42 +0000 (10:04 +0000)
This could potentially replace Unbound.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
config/rootfiles/common/knot-resolver [new file with mode: 0644]
lfs/knot-resolver [new file with mode: 0644]
make.sh

diff --git a/config/rootfiles/common/knot-resolver b/config/rootfiles/common/knot-resolver
new file mode 100644 (file)
index 0000000..a1530d1
--- /dev/null
@@ -0,0 +1,117 @@
+#etc/knot-resolver
+etc/knot-resolver/icann-ca.pem
+etc/knot-resolver/kresd.conf
+etc/knot-resolver/root.hints
+etc/knot-resolver/root.keys
+#usr/include/libkres
+#usr/include/libkres/api.h
+#usr/include/libkres/array.h
+#usr/include/libkres/cdb_api.h
+#usr/include/libkres/cdb_lmdb.h
+#usr/include/libkres/defines.h
+#usr/include/libkres/dnssec.h
+#usr/include/libkres/impl.h
+#usr/include/libkres/iterate.h
+#usr/include/libkres/layer.h
+#usr/include/libkres/log.h
+#usr/include/libkres/lru.h
+#usr/include/libkres/module.h
+#usr/include/libkres/nsec.h
+#usr/include/libkres/nsec3.h
+#usr/include/libkres/pack.h
+#usr/include/libkres/queue.h
+#usr/include/libkres/resolve.h
+#usr/include/libkres/rplan.h
+#usr/include/libkres/selection.h
+#usr/include/libkres/selection_forward.h
+#usr/include/libkres/selection_iter.h
+#usr/include/libkres/signature.h
+#usr/include/libkres/ta.h
+#usr/include/libkres/trie.h
+#usr/include/libkres/utils.h
+#usr/include/libkres/zonecut.h
+#usr/lib/knot-resolver
+usr/lib/knot-resolver/ahocorasick.so
+usr/lib/knot-resolver/debug_opensslkeylog.so
+usr/lib/knot-resolver/distro-preconfig.lua
+usr/lib/knot-resolver/kluautil.lua
+usr/lib/knot-resolver/kres-gen.lua
+usr/lib/knot-resolver/kres.lua
+usr/lib/knot-resolver/kres_modules
+usr/lib/knot-resolver/kres_modules/bogus_log.so
+#usr/lib/knot-resolver/kres_modules/daf
+usr/lib/knot-resolver/kres_modules/daf.lua
+usr/lib/knot-resolver/kres_modules/daf/daf.js
+usr/lib/knot-resolver/kres_modules/detect_time_jump.lua
+usr/lib/knot-resolver/kres_modules/detect_time_skew.lua
+usr/lib/knot-resolver/kres_modules/dns64.lua
+usr/lib/knot-resolver/kres_modules/edns_keepalive.so
+usr/lib/knot-resolver/kres_modules/etcd.lua
+usr/lib/knot-resolver/kres_modules/experimental_dot_auth.lua
+usr/lib/knot-resolver/kres_modules/extended_error.so
+usr/lib/knot-resolver/kres_modules/graphite.lua
+usr/lib/knot-resolver/kres_modules/hints.so
+#usr/lib/knot-resolver/kres_modules/http
+usr/lib/knot-resolver/kres_modules/http.lua
+usr/lib/knot-resolver/kres_modules/http/bootstrap-theme.min.css
+usr/lib/knot-resolver/kres_modules/http/bootstrap.min.css
+usr/lib/knot-resolver/kres_modules/http/bootstrap.min.js
+usr/lib/knot-resolver/kres_modules/http/d3.js
+usr/lib/knot-resolver/kres_modules/http/datamaps.world.min.js
+usr/lib/knot-resolver/kres_modules/http/dygraph.min.js
+usr/lib/knot-resolver/kres_modules/http/epoch.css
+usr/lib/knot-resolver/kres_modules/http/epoch.js
+usr/lib/knot-resolver/kres_modules/http/favicon.ico
+usr/lib/knot-resolver/kres_modules/http/glyphicons-halflings-regular.woff2
+usr/lib/knot-resolver/kres_modules/http/jquery.js
+usr/lib/knot-resolver/kres_modules/http/kresd.css
+usr/lib/knot-resolver/kres_modules/http/kresd.js
+usr/lib/knot-resolver/kres_modules/http/main.tpl
+usr/lib/knot-resolver/kres_modules/http/selectize.bootstrap3.css
+usr/lib/knot-resolver/kres_modules/http/selectize.min.js
+usr/lib/knot-resolver/kres_modules/http/topojson.js
+usr/lib/knot-resolver/kres_modules/http_doh.lua
+usr/lib/knot-resolver/kres_modules/http_tls_cert.lua
+usr/lib/knot-resolver/kres_modules/http_trace.lua
+usr/lib/knot-resolver/kres_modules/nsid.so
+usr/lib/knot-resolver/kres_modules/policy.lua
+usr/lib/knot-resolver/kres_modules/predict.lua
+usr/lib/knot-resolver/kres_modules/prefill.lua
+usr/lib/knot-resolver/kres_modules/priming.lua
+usr/lib/knot-resolver/kres_modules/prometheus.lua
+usr/lib/knot-resolver/kres_modules/rebinding.lua
+usr/lib/knot-resolver/kres_modules/refuse_nord.so
+usr/lib/knot-resolver/kres_modules/renumber.lua
+usr/lib/knot-resolver/kres_modules/serve_stale.lua
+usr/lib/knot-resolver/kres_modules/stats.so
+usr/lib/knot-resolver/kres_modules/ta_sentinel.lua
+usr/lib/knot-resolver/kres_modules/ta_signal_query.lua
+usr/lib/knot-resolver/kres_modules/ta_update.lua
+usr/lib/knot-resolver/kres_modules/view.lua
+usr/lib/knot-resolver/kres_modules/watchdog.lua
+usr/lib/knot-resolver/kres_modules/workarounds.lua
+usr/lib/knot-resolver/krprint.lua
+usr/lib/knot-resolver/postconfig.lua
+usr/lib/knot-resolver/sandbox.lua
+usr/lib/knot-resolver/trust_anchors.lua
+usr/lib/knot-resolver/upgrade-4-to-5.lua
+usr/lib/knot-resolver/zonefile.lua
+#usr/lib/libkres.so
+usr/lib/libkres.so.9
+#usr/lib/pkgconfig/libkres.pc
+usr/sbin/kres-cache-gc
+usr/sbin/kresc
+usr/sbin/kresd
+#usr/share/doc/knot-resolver
+#usr/share/doc/knot-resolver/AUTHORS
+#usr/share/doc/knot-resolver/COPYING
+#usr/share/doc/knot-resolver/NEWS
+#usr/share/doc/knot-resolver/examples
+#usr/share/doc/knot-resolver/examples/config.cluster
+#usr/share/doc/knot-resolver/examples/config.docker
+#usr/share/doc/knot-resolver/examples/config.internal
+#usr/share/doc/knot-resolver/examples/config.isp
+#usr/share/doc/knot-resolver/examples/config.personal
+#usr/share/doc/knot-resolver/examples/config.privacy
+#usr/share/doc/knot-resolver/examples/config.splitview
+#usr/share/man/man8/kresd.8
diff --git a/lfs/knot-resolver b/lfs/knot-resolver
new file mode 100644 (file)
index 0000000..ed3e771
--- /dev/null
@@ -0,0 +1,82 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007-2024  IPFire Team  <info@ipfire.org>                     #
+#                                                                             #
+# This program is free software: you can redistribute it and/or modify        #
+# it under the terms of the GNU General Public License as published by        #
+# the Free Software Foundation, either version 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program is distributed in the hope that it will be useful,             #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of              #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the               #
+# GNU General Public License for more details.                                #
+#                                                                             #
+# You should have received a copy of the GNU General Public License           #
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 5.7.4
+
+THISAPP    = knot-resolver-$(VER)
+DL_FILE    = $(THISAPP).tar.xz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_BLAKE2 = 670bd0bac1417fde0f7b6a02797e49e22af081e55b63c23e1fcd8dee369f21b7a2a8997fe641f69e7f0de5cbc7960307f32c939eb85c260fb2de015542dfce1e
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+b2 : $(subst %,%_BLAKE2,$(objects))
+
+###############################################################################
+# Downloading, checking, b2sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_BLAKE2,$(objects)) :
+       @$(B2SUM)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+       $(UPDATE_AUTOMAKE)
+       cd $(DIR_APP) && meson setup \
+               --prefix=/usr \
+               -Duser=nobody \
+               -Dgroup=nobody \
+               builddir/
+       cd $(DIR_APP) && ninja -C builddir/ $(MAKETUNING)
+       cd $(DIR_APP) && ninja -C builddir/ install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/make.sh b/make.sh
index 0240285e919fcf06eb25246c9da9456fc7aec1ce..b400818397c72b6b2479c55e6973ed583fdd1dbc 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -2052,6 +2052,7 @@ build_system() {
        lfsmake2 shairport-sync
        lfsmake2 borgbackup
        lfsmake2 knot
+       lfsmake2 knot-resolver
        lfsmake2 spectre-meltdown-checker
        lfsmake2 zabbix_agentd
        lfsmake2 flashrom