From 55e5dbb44002638da81cfdef87892b18cbb7378a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20W=C3=B3jcik?= Date: Tue, 24 May 2022 21:26:42 +0200 Subject: [PATCH 1/2] common/: deduplicate selecting arguments for xbps-rindex --- common/xbps-src/libexec/build.sh | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/common/xbps-src/libexec/build.sh b/common/xbps-src/libexec/build.sh index 72432316e6ea..586bca773d84 100755 --- a/common/xbps-src/libexec/build.sh +++ b/common/xbps-src/libexec/build.sh @@ -106,21 +106,22 @@ cut -d: -f 1,2 ${XBPS_STATEDIR}/.${sourcepkg}_register_pkg | sort -u | \ while IFS=: read -r arch repo; do paths=$(grep "^$arch:$repo:" "${XBPS_STATEDIR}/.${sourcepkg}_register_pkg" | \ cut -d : -f 2,3 | tr ':' '/') + additional_args= if [ -z "$XBPS_PRESERVE_PKGS" ] || [ "$XBPS_BUILD_FORCEMODE" ]; then - force=-f + additional_args+=" -f" + fi + if [ "$XBPS_REPO_COMPTYPE" ]; then + additional_args+=" --compression $XBPS_REPO_COMPTYPE" fi if [ -n "${arch}" ]; then msg_normal "Registering new packages to $repo ($arch)\n" - XBPS_TARGET_ARCH=${arch} $XBPS_RINDEX_CMD \ - ${XBPS_REPO_COMPTYPE:+--compression $XBPS_REPO_COMPTYPE} ${force} -a ${paths} + XBPS_TARGET_ARCH=${arch} $XBPS_RINDEX_CMD ${additional_args} -a ${paths} else msg_normal "Registering new packages to $repo\n" if [ -n "$XBPS_CROSS_BUILD" ]; then - $XBPS_RINDEX_XCMD ${XBPS_REPO_COMPTYPE:+--compression $XBPS_REPO_COMPTYPE} \ - ${force} -a ${paths} + $XBPS_RINDEX_XCMD ${additional_args} -a ${paths} else - $XBPS_RINDEX_CMD ${XBPS_REPO_COMPTYPE:+--compression $XBPS_REPO_COMPTYPE} \ - ${force} -a ${paths} + $XBPS_RINDEX_CMD ${additional_args} -a ${paths} fi fi done From 0858db41ec24f384c2d53407ad0750a72a47f48f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20W=C3=B3jcik?= Date: Tue, 24 May 2022 21:26:42 +0200 Subject: [PATCH 2/2] xbps-src: add XBPS_RINDEX_TARGET=stagedata option --- common/xbps-src/libexec/build.sh | 3 +++ etc/defaults.conf | 7 +++++++ xbps-src | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/common/xbps-src/libexec/build.sh b/common/xbps-src/libexec/build.sh index 586bca773d84..ce0f7d2956bb 100755 --- a/common/xbps-src/libexec/build.sh +++ b/common/xbps-src/libexec/build.sh @@ -113,6 +113,9 @@ cut -d: -f 1,2 ${XBPS_STATEDIR}/.${sourcepkg}_register_pkg | sort -u | \ if [ "$XBPS_REPO_COMPTYPE" ]; then additional_args+=" --compression $XBPS_REPO_COMPTYPE" fi + if [ "$XBPS_RINDEX_TARGET" == stagedata ]; then + additional_args+=" --stage" + fi if [ -n "${arch}" ]; then msg_normal "Registering new packages to $repo ($arch)\n" XBPS_TARGET_ARCH=${arch} $XBPS_RINDEX_CMD ${additional_args} -a ${paths} diff --git a/etc/defaults.conf b/etc/defaults.conf index e3876cdc7d28..482d17076e4f 100644 --- a/etc/defaults.conf +++ b/etc/defaults.conf @@ -158,3 +158,10 @@ XBPS_SUCMD="sudo /bin/sh -c" # When unset, newly build package overwrites the older one. # #XBPS_PRESERVE_PKGS=yes + +# [OPTIONAL] +# `stagedata` indexes into arch-stagedata, meant for publishing with repodata +# later on. +# When unset, indexes directly into repodata. +# +#XBPS_RINDEX_TARGET=stagedata diff --git a/xbps-src b/xbps-src index dfa059927cc2..88159b23d532 100755 --- a/xbps-src +++ b/xbps-src @@ -648,7 +648,7 @@ export XBPS_SHUTILSDIR XBPS_CROSSPFDIR XBPS_TRIGGERSDIR \ XBPS_LIBEXECDIR XBPS_DISTDIR XBPS_DISTFILES_MIRROR XBPS_ALLOW_RESTRICTED \ XBPS_USE_GIT_COMMIT_DATE XBPS_PKG_COMPTYPE XBPS_REPO_COMPTYPE \ XBPS_BUILDHELPERDIR XBPS_USE_BUILD_MTIME XBPS_BUILD_ENVIRONMENT \ - XBPS_PRESERVE_PKGS XBPS_IGNORE_BROKENNESS + XBPS_PRESERVE_PKGS XBPS_IGNORE_BROKENNESS XBPS_RINDEX_TARGET for i in REPOSITORY DESTDIR BUILDDIR SRCDISTDIR; do eval val="\$XBPS_$i"