Skip to content

Commit

Permalink
Merge branch 'pkg-v6-update' into 'master'
Browse files Browse the repository at this point in the history
distro: merge -core and -manager into knot-resolver

See merge request knot/knot-resolver!1549
  • Loading branch information
Oto Šťáva committed May 29, 2024
2 parents 696aef6 + c7c3966 commit 6241c37
Show file tree
Hide file tree
Showing 18 changed files with 92 additions and 113 deletions.
2 changes: 1 addition & 1 deletion distro/config/apkg.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,4 @@ signature_url = "https://secure.nic.cz/files/knot-resolver/knot-resolver-{{ vers
version_script = "scripts/upstream-version.sh"

[apkg]
compat = 2
compat = 4
60 changes: 28 additions & 32 deletions distro/pkg/deb/control
Original file line number Diff line number Diff line change
Expand Up @@ -28,47 +28,33 @@ Build-Depends:
libssl-dev,
Homepage: https://www.knot-resolver.cz/

Package: knot-resolver-manager
Package: knot-resolver6
Architecture: any
Provides:
knot-resolver6,
Depends:
knot-resolver-core (= ${binary:Version}),
adduser,
dns-root-data,
python3-aiohttp,
python3-jinja2,
python3-yaml,
supervisor,
${misc:Depends},
${python3:Depends},
Recommends:
python3-prometheus-client,
Section: python
Description: caching, DNSSEC-validating DNS resolver - config manager
Knot Resolver is a caching full resolver implementation written in C and
LuaJIT, including both a resolver library and a daemon.
.
This package contains Knot Resolver Manager - a configuration tool for Knot
Resolver. The Manager hides the complexity of running several independent
resolver processes while ensuring zero-downtime reconfiguration with YAML/JSON
declarative configuration and an optional HTTP API for dynamic changes.

Package: knot-resolver-core
Architecture: any
Depends:
adduser,
dns-root-data,
systemd,
${misc:Depends},
${shlibs:Depends},
${python3:Depends},
Breaks:
knot-resolver (<< 6),
knot-resolver-core (<< 6.0.8),
knot-resolver-manager (<< 6.0.8),
Replaces:
knot-resolver (<< 6),
knot-resolver-core (<< 6.0.8),
knot-resolver-manager (<< 6.0.8),
Recommends:
lua-basexx,
lua-cqueues,
lua-http,
lua-psl,
python3-prometheus-client,
Suggests:
knot-resolver-module-http,
Description: caching, DNSSEC-validating DNS resolver - core binaries
Expand All @@ -88,12 +74,24 @@ Description: caching, DNSSEC-validating DNS resolver - core binaries
MVCC cache that may be shared). You can start and stop additional
nodes depending on the contention without downtime.
.
This package contains the core resolver binaries.
Knot Resolver Manager hides the complexity of running several independent
resolver processes while ensuring zero-downtime reconfiguration with YAML/JSON
declarative configuration and an optional HTTP API for dynamic changes.

Package: knot-resolver-core-dbg
Package: knot-resolver6-dev
Architecture: any
Depends:
knot-resolver-core (= ${binary:Version}),
knot-resolver6 (= ${binary:Version}),
${misc:Depends}
${shlibs:Depends},
Section: libdevel
Description: Knot Resolver development files
This package provides the development headers for Knot Resolver.

Package: knot-resolver6-dbg
Architecture: any
Depends:
knot-resolver6 (= ${binary:Version}),
${misc:Depends}
Recommends: gdb
Section: debug
Expand All @@ -102,11 +100,11 @@ Description: Debug symbols for Knot Resolver
This package provides the debug symbols for Knot Resolver needed
for properly debugging errors in Knot Resolver with gdb.

Package: knot-resolver-module-dnstap
Package: knot-resolver6-module-dnstap
Architecture: any
Multi-Arch: same
Depends:
knot-resolver-core (= ${binary:Version}),
knot-resolver6 (= ${binary:Version}),
libfstrm0,
libprotobuf-c1,
${misc:Depends},
Expand All @@ -122,10 +120,10 @@ Description: dnstap module for Knot Resolver
This package contains dnstap module for logging DNS responses
to a unix socket in dnstap format.

Package: knot-resolver-module-http
Package: knot-resolver6-module-http
Architecture: all
Depends:
knot-resolver-core (= ${binary:Version}),
knot-resolver6 (= ${binary:Version}),
libjs-bootstrap,
libjs-d3,
libjs-jquery,
Expand All @@ -135,8 +133,6 @@ Depends:
systemd,
${misc:Depends},
${shlibs:Depends},
Breaks:
knot-resolver-module-tinyweb (<< 1.1.0~git20160713-1~),
Description: HTTP module for Knot Resolver
The Knot Resolver is a caching full resolver implementation
written in C and LuaJIT, including both a resolver library and a
Expand Down
1 change: 0 additions & 1 deletion distro/pkg/deb/knot-resolver-core.manpages

This file was deleted.

4 changes: 0 additions & 4 deletions distro/pkg/deb/knot-resolver-manager.install

This file was deleted.

3 changes: 3 additions & 0 deletions distro/pkg/deb/knot-resolver6-dev.install
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
usr/include/libkres/*.h
usr/lib/*.so
usr/lib/pkgconfig/libkres.pc
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,34 +1,38 @@
etc/knot-resolver/config.yaml
usr/lib/*.so.*
usr/lib/tmpfiles.d/knot-resolver.conf
usr/lib/knot-resolver/*.so
usr/lib/knot-resolver/*.lua
usr/lib/knot-resolver/*.so
usr/lib/knot-resolver/kres_modules/bogus_log.so
usr/lib/knot-resolver/kres_modules/edns_keepalive.so
usr/lib/knot-resolver/kres_modules/extended_error.so
usr/lib/knot-resolver/kres_modules/hints.so
usr/lib/knot-resolver/kres_modules/nsid.so
usr/lib/knot-resolver/kres_modules/refuse_nord.so
usr/lib/knot-resolver/kres_modules/stats.so
usr/lib/knot-resolver/kres_modules/daf.lua
usr/lib/knot-resolver/kres_modules/daf/*
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/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/nsid.so
usr/lib/knot-resolver/kres_modules/policy.lua
usr/lib/knot-resolver/kres_modules/predict.lua
usr/lib/knot-resolver/kres_modules/prefetch.lua
usr/lib/knot-resolver/kres_modules/prefill.lua
usr/lib/knot-resolver/kres_modules/priming.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/sbin/kresd
usr/lib/systemd/system/knot-resolver.service
usr/lib/tmpfiles.d/knot-resolver.conf
usr/sbin/kres-cache-gc
usr/sbin/kresd
usr/share/bash-completion/completions/kresctl
usr/share/fish/completions/kresctl.fish
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
debian/tmp/usr/share/man/man8/kresctl.8*
debian/tmp/usr/share/man/man8/kresd.8*
File renamed without changes.
File renamed without changes.
3 changes: 0 additions & 3 deletions distro/pkg/deb/not-installed
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
usr/lib/knot-resolver/kres_modules/http/LICENSE
usr/lib/knot-resolver/kres_modules/etcd.lua
usr/include/libkres/*.h
usr/lib/*.so
usr/lib/pkgconfig/libkres.pc
usr/lib/sysusers.d/knot-resolver.conf
21 changes: 7 additions & 14 deletions distro/pkg/deb/rules
Original file line number Diff line number Diff line change
Expand Up @@ -10,17 +10,13 @@ export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic -fno-omit-frame-pointer
# package maintainers to append LDFLAGS
export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed

export PYKRES_NAME=knot_resolver
export PYKRES_DEST=debian/knot-resolver-core/
export KRES_MANAGER_NAME=knot_resolver_manager
export KRES_MANAGER_DEST=debian/knot-resolver-manager/
# include python modules in main package
export PYKRES_DESTDIR=debian/knot-resolver6/

# see EXAMPLES in dpkg-buildflags(1) and read /usr/share/dpkg/*
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/default.mk

export ARCH=$(DEB_HOST_GNU_CPU)


%:
dh $@ --with python3
Expand All @@ -39,16 +35,16 @@ override_dh_auto_build:
-Dc_args="$${CFLAGS}" \
-Dc_link_args="$${LDFLAGS}"
ninja -v -C build_deb
PYBUILD_NAME="$${PYKRES_NAME}" PYBUILD_DESTDIR="$${PYKRES_DEST}" \
PYBUILD_NAME=knot_resolver PYBUILD_DESTDIR="$${PYKRES_DESTDIR}" \
dh_auto_build --buildsystem=pybuild --sourcedirectory build_deb/python
PYBUILD_NAME="$${KRES_MANAGER_NAME}" PYBUILD_DESTDIR="$${KRES_MANAGER_DEST}" \
PYBUILD_NAME=knot_resoolver_manager PYBUILD_DESTDIR="$${PYKRES_DESTDIR}" \
dh_auto_build --buildsystem=pybuild --sourcedirectory manager

override_dh_auto_install:
DESTDIR="${PWD}/debian/tmp" ninja -v -C build_deb install
PYBUILD_NAME="$${PYKRES_NAME}" PYBUILD_DESTDIR="$${PYKRES_DEST}" \
PYBUILD_NAME=knot_resolver PYBUILD_DESTDIR="$${PYKRES_DESTDIR}" \
dh_auto_install --buildsystem=pybuild --sourcedirectory build_deb/python
PYBUILD_NAME="$${KRES_MANAGER_NAME}" PYBUILD_DESTDIR="$${KRES_MANAGER_DEST}" \
PYBUILD_NAME=knot_resolver_manager PYBUILD_DESTDIR="$${PYKRES_DESTDIR}" \
dh_auto_install --buildsystem=pybuild --sourcedirectory manager
install -m 644 -D manager/etc/knot-resolver/config.yaml debian/tmp/etc/knot-resolver/config.yaml
install -m 644 -D manager/shell-completion/client.bash debian/tmp/usr/share/bash-completion/completions/kresctl
Expand All @@ -57,8 +53,5 @@ override_dh_auto_install:
override_dh_auto_test:
meson test -C build_deb

override_dh_missing:
dh_missing --fail-missing

override_dh_strip:
dh_strip --dbg-package=knot-resolver-core-dbg
dh_strip --dbg-package=knot-resolver6-dbg
Loading

0 comments on commit 6241c37

Please sign in to comment.