From 84c642116b8d4038db96b93a25ce52b7cb6745c9 Mon Sep 17 00:00:00 2001 From: Duncaen Date: Sat, 7 Nov 2020 22:50:11 +0100 Subject: [PATCH] xbps-src: remove proot chroot-style proot is broken and result in random hard to debug issues, this is the best way to not have new users use it. --- common/chroot-style/proot.sh | 30 ------------------------------ common/xbps-src/libexec/build.sh | 3 --- xbps-src | 4 ++-- 3 files changed, 2 insertions(+), 35 deletions(-) delete mode 100755 common/chroot-style/proot.sh diff --git a/common/chroot-style/proot.sh b/common/chroot-style/proot.sh deleted file mode 100755 index 5c670ea5da8..00000000000 --- a/common/chroot-style/proot.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh -# -# This chroot script uses proot (see http://proot.me) -# -readonly MASTERDIR="$1" -readonly DISTDIR="$2" -readonly HOSTDIR="$3" -readonly EXTRA_ARGS="$4" -shift 4 - -if ! command -v proot >/dev/null 2>&1; then - exit 1 -fi - -if [ -z "$MASTERDIR" -o -z "$DISTDIR" ]; then - echo "$0 MASTERDIR/DISTDIR not set" - exit 1 -fi - -# proot does not properly return the resultcode. Workaround this -RESULT=$(mktemp) || exit 1 - -PROOT_NO_SECCOMP=1 proot -r $MASTERDIR -w / -b "$RESULT:/.result" -b $DISTDIR:/void-packages \ - ${HOSTDIR:+-b $HOSTDIR:/host} -b /proc:/proc -b /dev:/dev \ - -b /sys:/sys $EXTRA_ARGS /bin/sh -c '$@; echo $? > /.result' $0 $@ - -rv=$(cat "$RESULT") -rm "$RESULT" - -exit $rv diff --git a/common/xbps-src/libexec/build.sh b/common/xbps-src/libexec/build.sh index 6abc988298b..3ac5a962d15 100755 --- a/common/xbps-src/libexec/build.sh +++ b/common/xbps-src/libexec/build.sh @@ -41,9 +41,6 @@ check_pkg_arch $XBPS_CROSS_BUILD if [ -z "$XBPS_CROSS_PREPARE" ]; then prepare_cross_sysroot $XBPS_CROSS_BUILD || exit $? fi -if [ -z "$XBPS_DEPENDENCY" -a -z "$XBPS_TEMP_MASTERDIR" -a -n "$XBPS_KEEP_ALL" -a "$XBPS_CHROOT_CMD" = "proot" ]; then - remove_pkg_autodeps -fi # Install dependencies from binary packages if [ "$PKGNAME" != "$XBPS_TARGET_PKG" -o -z "$XBPS_SKIP_DEPS" ]; then install_pkg_deps $PKGNAME $XBPS_TARGET_PKG pkg $XBPS_CROSS_BUILD $XBPS_CROSS_PREPARE || exit $? diff --git a/xbps-src b/xbps-src index 3cd19dc42ec..b9bb4b6dae4 100755 --- a/xbps-src +++ b/xbps-src @@ -317,7 +317,7 @@ read_pkg() { setup_distfiles_mirror() { local mirror scheme path - # Scheme file:// mirror locations only work with uchroot or proot + # Scheme file:// mirror locations only work with uchroot for mirror in $XBPS_DISTFILES_MIRROR; do scheme="file" if [[ "$mirror" == *://* ]]; then @@ -327,7 +327,7 @@ setup_distfiles_mirror() { path="$mirror" fi [ "$scheme" != "file" ] && continue - if [ "$XBPS_CHROOT_CMD" == "uchroot" -o "$XBPS_CHROOT_CMD" == "proot" ]; then + if [ "$XBPS_CHROOT_CMD" == "uchroot" ]; then if [ ! -d "$path" ]; then msg_warn "xbps-src: Invalid path in XBPS_DISTFILES_MIRROR ($mirror)\n" continue