commit dfb988771478a0c62450425282332eb76dcfe495
parent 5f5930fe96ffcd3e342a57e0f3f12b0629895705
Author: Robin Bron <robin.bron@yourhosting.nl>
Date: Fri, 25 Sep 2026 13:22:36 +0200
Code pkg version into generated conductor.yml
Diffstat:
4 files changed, 68 insertions(+), 42 deletions(-)
diff --git a/.conductor.yml b/.conductor.yml
@@ -51,7 +51,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh zlib --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh zlib --pkgver 1.3.1-r4 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" zlib
@@ -64,7 +64,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh openssl --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh openssl --pkgver 3.5.8-r4 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" openssl
@@ -79,7 +79,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh apk-tools --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh apk-tools --pkgver 3.0.8-r1 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" apk-tools
@@ -92,7 +92,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh base-files --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh base-files --pkgver 0.1.0-r6 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" base-files
@@ -105,7 +105,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh busybox --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh busybox --pkgver 1.36.1-r8 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" busybox
@@ -120,7 +120,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh curl --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh curl --pkgver 8.18.0-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" curl
@@ -133,7 +133,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh dosfstools --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh dosfstools --pkgver 4.2-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" dosfstools
@@ -146,7 +146,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh e2fsprogs --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh e2fsprogs --pkgver 1.47.4-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" e2fsprogs
@@ -159,7 +159,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh efivar --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh efivar --pkgver 39-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" efivar
@@ -172,7 +172,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh popt --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh popt --pkgver 1.19-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" popt
@@ -187,7 +187,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh efibootmgr --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh efibootmgr --pkgver 18-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" efibootmgr
@@ -200,7 +200,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh glibc --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh glibc --pkgver 2.44-r6 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" glibc
@@ -213,7 +213,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh libstdc++ --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh libstdc++ --pkgver 14.2.0-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" libstdc++
@@ -229,7 +229,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh gptfdisk --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh gptfdisk --pkgver 1.0.10-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" gptfdisk
@@ -242,7 +242,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh xz --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh xz --pkgver 5.8.4-r1 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" xz
@@ -256,7 +256,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh grub --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh grub --pkgver 2.14-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" grub
@@ -269,7 +269,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh libmnl --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh libmnl --pkgver 1.0.5-r5 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" libmnl
@@ -282,7 +282,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh libcap --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh libcap --pkgver 2.78-r4 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" libcap
@@ -297,7 +297,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh iproute2 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh iproute2 --pkgver 6.19.0-r3 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" iproute2
@@ -310,7 +310,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh linkd --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh linkd --pkgver 0.1.0-r1 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" linkd
@@ -323,7 +323,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh linux-longterm --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh linux-longterm --pkgver 6.18.51-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" linux-longterm
@@ -336,7 +336,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh linux-mainline --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh linux-mainline --pkgver 7.3_rc3-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" linux-mainline
@@ -349,7 +349,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh linux-stable --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh linux-stable --pkgver 7.2.5-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" linux-stable
@@ -363,7 +363,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh smartmontools --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh smartmontools --pkgver 7.5-r0 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" smartmontools
@@ -376,7 +376,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh tinyssh --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh tinyssh --pkgver 20260906-r4 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" tinyssh
@@ -389,7 +389,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh unos-firstboot --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh unos-firstboot --pkgver 0.1.0-r2 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" unos-firstboot
@@ -402,7 +402,7 @@ tasks:
arch: [x86_64]
requires: [unos-sign-key]
script:
- - ./mk/check-revision.sh unos-keys --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || exit 0
+ - ./mk/check-revision.sh unos-keys --pkgver 0.1.0-r2 --repo "${BUCKET_PUBLIC_URL%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }
- ./mk/ci-setup.sh
- ./mk/bootstrap-host.sh
- ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" unos-keys
diff --git a/mk/check-revision.sh b/mk/check-revision.sh
@@ -19,6 +19,7 @@ ROOT=$(cd "${HERE}/.." && pwd)
PKG=""
ARCH="x86_64"
REPO=""
+PKGVER=""
while [ $# -gt 0 ]; do
case "$1" in
@@ -26,6 +27,8 @@ while [ $# -gt 0 ]; do
--arch=*) ARCH="${1#--arch=}"; shift ;;
--repo) REPO="$2"; shift 2 ;;
--repo=*) REPO="${1#--repo=}"; shift ;;
+ --pkgver) PKGVER="$2"; shift 2 ;;
+ --pkgver=*) PKGVER="${1#--pkgver=}"; shift ;;
-h|--help) sed -n '1,25p' "$0"; exit 0 ;;
-*) echo "check-revision.sh: unknown option: $1" >&2; exit 1 ;;
*) if [ -z "${PKG}" ]; then PKG="$1"; else
@@ -39,21 +42,25 @@ done
case "${ARCH}" in arm64) ARCH=aarch64 ;; esac
case "${ARCH}" in x86_64|aarch64) ;; *) echo "check-revision.sh: unsupported ARCH ${ARCH}" >&2; exit 1 ;; esac
-TEMPLATE="${ROOT}/packages/${PKG}/template"
-[ -f "${TEMPLATE}" ] || { echo "check-revision.sh: no template: ${TEMPLATE}" >&2; exit 1; }
+if [ -z "${PKGVER}" ]; then
+ TEMPLATE="${ROOT}/packages/${PKG}/template"
+ [ -f "${TEMPLATE}" ] || { echo "check-revision.sh: no template: ${TEMPLATE}" >&2; exit 1; }
-# Read version/revision from template (same subshell pattern as deps.sh)
-eval "$( (
- version=; revision=0
- SYSROOT=; DESTDIR=; WRKSRC=; FILESDIR=; WORK=; SRCDEST=; UNOS_MKDIR=
- die() { :; } ; msg() { :; } ; vinstall() { :; } ; vmkdir() { :; }
- . "${TEMPLATE}" >/dev/null 2>&1 || true
- printf 'VERSION=%s\nREVISION=%s\n' "${version}" "${revision}"
-) )"
+ # Read version/revision from template (same subshell pattern as deps.sh)
+ VERSION=; REVISION=0
+ eval "$( (
+ version=; revision=0
+ SYSROOT=; DESTDIR=; WRKSRC=; FILESDIR=; WORK=; SRCDEST=
+ UNOS_MKDIR="${HERE}"
+ die() { :; } ; msg() { :; } ; vinstall() { :; } ; vmkdir() { :; }
+ . "${TEMPLATE}" >/dev/null 2>&1 || true
+ printf 'VERSION=%s\nREVISION=%s\n' "${version}" "${revision}"
+ ) )"
-[ -n "${VERSION}" ] || { echo "check-revision.sh: template sets no version" >&2; exit 1; }
+ [ -n "${VERSION}" ] || { echo "check-revision.sh: cannot read version from ${TEMPLATE}" >&2; exit 2; }
+ PKGVER="${VERSION}-r${REVISION}"
+fi
-PKGVER="${VERSION}-r${REVISION}"
APK_NAME="${PKG}-${PKGVER}.apk"
# Check local repo first
diff --git a/mk/gen-pipeline.sh b/mk/gen-pipeline.sh
@@ -38,6 +38,20 @@ task_name() {
printf 'pkg-%s' "$(printf '%s' "$1" | sed 's/+/x/g' | tr -c 'A-Za-z0-9_.-' '-')"
}
+# Resolved here rather than in CI: the pipeline is generated, and sourcing a
+# template needs UNOS_MKDIR (kernel.inc) which a bare CI checkout lacks.
+pkgver() {
+ (
+ version=; revision=0
+ SYSROOT=; DESTDIR=; WRKSRC=; FILESDIR=; WORK=; SRCDEST=
+ UNOS_MKDIR="${HERE}"
+ die() { :; } ; msg() { :; } ; vinstall() { :; } ; vmkdir() { :; }
+ . "${ROOT}/packages/$1/template" >/dev/null 2>&1 || true
+ [ -n "${version}" ] || { echo "gen-pipeline.sh: no version for $1" >&2; exit 1; }
+ printf '%s-r%s' "${version}" "${revision}"
+ )
+}
+
emit() {
cat <<'HEADER'
# GENERATED by mk/gen-pipeline.sh -- do not edit by hand.
@@ -108,7 +122,7 @@ HEADER
# The feature provides UNOS_KEY_APK_RSA_PRI, which mk/sign-key.inc reads.
printf ' requires: [unos-sign-key]\n'
printf ' script:\n'
- printf ' - ./mk/check-revision.sh %s --repo "${BUCKET_PUBLIC_URL%%/}/$ARCH" || exit 0\n' "$p"
+ printf ' - ./mk/check-revision.sh %s --pkgver %s --repo "${BUCKET_PUBLIC_URL%%/}/$ARCH" || { rc=$?; [ "$rc" = 1 ] && exit 0; exit "$rc"; }\n' "$p" "$(pkgver "$p")"
printf ' - ./mk/ci-setup.sh\n'
printf ' - ./mk/bootstrap-host.sh\n'
printf ' - ./mk/sysroot.sh --arch "$ARCH" --repo "$BUCKET_PUBLIC_URL" %s\n' "$p"
diff --git a/packages/glibc/template b/packages/glibc/template
@@ -51,6 +51,11 @@ do_install() {
# make install does not create the locale dir itself
mkdir -p "${DESTDIR}/usr/lib/locale"
# localedef links against the just-built libc, which needs the just-built
- # loader too; testrun.sh wires up both.
- ./testrun.sh ./locale/localedef --prefix="${DESTDIR}" -i C -f UTF-8 C.UTF-8
+ # loader too; testrun.sh wires up both. Charmaps are not installed yet, so
+ # point I18NPATH at the source tree.
+ I18NPATH="${WRKSRC}/localedata" \
+ ./testrun.sh ./locale/localedef --prefix="${DESTDIR}" \
+ -i "${WRKSRC}/localedata/locales/C" \
+ -f "${WRKSRC}/localedata/charmaps/UTF-8" \
+ C.UTF-8
}