aboutsummaryrefslogtreecommitdiffstats
path: root/main/dns-root-hints/APKBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'main/dns-root-hints/APKBUILD')
-rw-r--r--main/dns-root-hints/APKBUILD95
1 files changed, 47 insertions, 48 deletions
diff --git a/main/dns-root-hints/APKBUILD b/main/dns-root-hints/APKBUILD
index 2cc6385db3d..69571eb3e2c 100644
--- a/main/dns-root-hints/APKBUILD
+++ b/main/dns-root-hints/APKBUILD
@@ -1,38 +1,47 @@
# Maintainer: Leonardo Arena <rnalrd@alpinelinux.org>
pkgname=dns-root-hints
-pkgver=2019073000
-pkgrel=3
+pkgver=2024021501
+pkgrel=0
pkgdesc="The DNS root hint(s)"
url="https://www.internic.net/domain"
arch="noarch"
license="Public-Domain"
-depends="curl gpg"
-makedepends="curl"
-source="verisign-grs-nstld-key.asc named.root named.root.sig
+depends="curl gpgv"
+makedepends="gpg"
+source="verisign-grs-nstld-key.asc
+ named.root
+ named.root.sig
update-$pkgname
$pkgname.crond
"
+builddir="$srcdir"
+
+prepare() {
+ default_prepare
+
+ # Convert the key to the GPG keyring that can be used with gpgv.
+ gpg --dearmor -o verisign-grs-nstld-key.gpg verisign-grs-nstld-key.asc
+}
package() {
- install -D -m 644 -o root -g root "$srcdir"/named.root \
- "$pkgdir"/usr/share/$pkgname/named.root
- install -D -m 644 -o root -g root "$srcdir"/named.root.sig \
- "$pkgdir"/usr/share/$pkgname/named.root.sig
- install -D -m 644 -o root -g root "$srcdir"/verisign-grs-nstld-key.asc \
- "$pkgdir"/usr/share/$pkgname/verisign-grs-nstld-key.asc
- install -D -m 755 -o root -g root "$srcdir"/update-$pkgname \
- "$pkgdir"/usr/bin/update-$pkgname
- install -D -m 755 -o root -g root "$srcdir"/$pkgname.crond \
- "$pkgdir"/etc/periodic/monthly/$pkgname
+ install -D -m 644 -t "$pkgdir"/usr/share/$pkgname \
+ named.root \
+ named.root.sig \
+ verisign-grs-nstld-key.asc \
+ verisign-grs-nstld-key.gpg
+
+ install -D -m 755 -t "$pkgdir"/usr/bin/ update-$pkgname
+
+ install -D -m 755 $pkgname.crond "$pkgdir"/etc/periodic/monthly/$pkgname
# compatibility links
- cd "$pkgdir/usr/share/$pkgname"
+ cd "$pkgdir"/usr/share/$pkgname
ln -s named.root named.cache
ln -s named.root db.cache
}
check() {
- local _awkprog='
+ local awkprog='
/related version of root zone:/ {
rootver=$NF;
if (pkgver != rootver) {
@@ -43,44 +52,34 @@ check() {
printf "OK: %s\n", rootver;
quit;
}'
- awk -v pkgver="$pkgver" "$_awkprog" "$srcdir"/named.root
+ awk -v pkgver="$pkgver" "$awkprog" "$srcdir"/named.root
}
# check new versions of root hints and commit
snapshot() {
- # use a temporary dir for new files
- export _tmp=$(mktemp -d -p .)
- for file in named.root named.root.sig; do
- curl -sLR "${url}/${file}" -o "${_tmp}/${file}"
- done
-
- # compare new and current versions
- local _drh_new_ver=$(grep "related version of root zone:" ${_tmp}/named.root | egrep -o '[0-9]{10}')
- local _drh_current_ver=$(grep "related version of root zone:" named.root | egrep -o '[0-9]{10}')
+ local new_ver
- # commit if new version is found
- if [ "$_drh_new_ver" != "$_drh_current_ver" ]; then
- _check_sig
- mv ${_tmp}/named.root named.root
- mv ${_tmp}/named.root.sig named.root.sig
- git add named.root named.root.sig
- abump $pkgname-$_drh_new_ver
+ if ! [ -f "$srcdir"/verisign-grs-nstld-key.gpg ]; then
+ abuild unpack
+ abuild prepare
fi
- # cleanup
- rm "${_tmp}"/* 2>/dev/null || true
- rmdir "${_tmp}"
-}
+ DNS_ROOT_HINTS_DIR="$srcdir" ./update-dns-root-hints
-_check_sig() {
- local GNUPGHOME="$builddir/.gpg"
- install -d -m 0700 "$GNUPGHOME"
- gpg --import < verisign-grs-nstld-key.asc
- gpg --verify "${_tmp}/named.root.sig" "${_tmp}/named.root"
+ # commit if new version was found
+ if ! cmp -s named.root "$srcdir"/named.root; then
+ cp "$srcdir"/named.root* .
+ git add named.root named.root.sig
+
+ new_ver=$(sed -En 's/.*related version of root zone:\s*([0-9]{10}).*/\1/p' named.root)
+ abump $pkgname-$new_ver
+ fi
}
-sha512sums="3ecf5d66e506526ad98ea0b371202f0763b987322bd4407b40fcd95415202bddb18fd06c82eb397566b393e214dc88cb17ec94f3908328e8a55f5f68cc730993 verisign-grs-nstld-key.asc
-0491784a0d0722113120bae4dd42c7671cb05b4b76d4dd4773718ee4c7777d7fb7b039f76b8a30179d5dfa8f3142182bf0b0d809f9d6e1ef581d08482e06d250 named.root
-b1d76a8040c534f2a5ffc54b92aa3a465ddd01b345e2a7eade258359017c623d5a847a270b259cd58ba3d8550a3519b0921f9f62dc6e98a0acdd3873b2556359 named.root.sig
-7e640e997dd0eae47fb1e609f73d5206e09684eada15d3b6043fc23e639859af743b99cbd868e98269c2af25e7c3eeea307f52f2fb7d4a6f3e00f8b14a289322 update-dns-root-hints
-67a7ef07ee9086ce584a8b316b15cd05214968f89bbc363fb2d5932ebf47ed962c0862fe254082e68f27574acb62f3672137dd23c40d7d2047c969ee449827f8 dns-root-hints.crond"
+sha512sums="
+3ecf5d66e506526ad98ea0b371202f0763b987322bd4407b40fcd95415202bddb18fd06c82eb397566b393e214dc88cb17ec94f3908328e8a55f5f68cc730993 verisign-grs-nstld-key.asc
+6cec5f5cfa1018f39d4f320938595a1a56cdeb359980cc530e79c9f7134b71c3f11c0f7d6f6c002a76ee41deb98d52e41c1c12e8e1c9865e95efde66dd6506b8 named.root
+08f3d9e8ac84f3cc4a67994be9efdae086c86c8fa253ed46339add79b52c25744ab4c0706c16f8fb1852a4c4899fb4fda32f9aea872dadf561afd41ce31fff25 named.root.sig
+ba5663675e5b4cb0f670c570a4cef1fde8282185c5cc505af8beb7f32756a41ff511024f45c57c7204d03a88b8d2cc86ed31943ed19b71d30cee040d634a8208 update-dns-root-hints
+68a743ee7b0f60eeb21cecbb916c3d7051ebbb86143621aafe5ef654df0953a274a2ffa2f3fe42fb3c143fd7b29ab4c5b17407c73b560a1c19afa1584fc43d8a dns-root-hints.crond
+"