From patchwork Tue Nov 5 23:40:44 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Emil Velikov via arch-projects X-Patchwork-Id: 1347 Return-Path: Delivered-To: patchwork@archlinux.org Received: from apollo.archlinux.org (localhost [127.0.0.1]) by apollo.archlinux.org (Postfix) with ESMTP id C8B4D14ED05AE for ; Tue, 5 Nov 2019 23:41:13 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on apollo X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1,DKIM_VALID=-0.1,DKIM_VALID_AU=-0.1, LOCAL_FAKEBUSINESS=0.5,MAILING_LIST_MULTI=-1,RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001,T_DMARC_POLICY_NONE=0.01 autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-BL-Results: [127.0.9.2] Received: from orion.archlinux.org (orion.archlinux.org [IPv6:2a01:4f8:160:6087::1]) by apollo.archlinux.org (Postfix) with ESMTPS for ; Tue, 5 Nov 2019 23:41:13 +0000 (UTC) Received: from orion.archlinux.org (localhost [127.0.0.1]) by orion.archlinux.org (Postfix) with ESMTP id DBB1D16662C5E4; Tue, 5 Nov 2019 23:41:10 +0000 (UTC) Received: from luna.archlinux.org (luna.archlinux.org [IPv6:2a01:4f8:160:3033::2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: luna) by orion.archlinux.org (Postfix) with ESMTPSA id 0C5FC16662C5D6; Tue, 5 Nov 2019 23:41:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=archlinux.org; s=orion; t=1572997270; bh=NDie9hAHUmdF4Q9xg7bdEPvEY74lw08HBDNSDLGyFhc=; h=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc; b=PimpRKH+VSVgb1p73AAPFheRUAEQDKiN2l5Zd5o8IiGs9l9sU9NdaCGcTDko9P1tL C/wVS6VO05awlAiIESwHQOGm6wDLrXgBvwgmWQTKRkzoZhkwdIYj6tp+ikyir1vMVM nun4SgMp12Z+Mo58ztUZ1r55bwqRWRa8QPC+t8NHRZNLNH7mK/7Rb6FKk0eaXMmZxI N03APrriy3x5P4pBTOD67YpVj1w2leuunLOwYtEBVk6qxVf33ZKTf6y5cPin0dogah Ape5mgb/hGPIZhE5XKv9axw7luSbElIBOA+eTMs+ooJKLImF4wfee5nDUYEP3Dxz5b BdF+0W26ia05+D3jmhKKV4K0RDe3RSNn/YhGAYrNnCyVlqzWfBo3IvTieKfkrCaDXO zLkc/Y4cIK/34MVY5Gb3xmRsTgP6Tiqyf4q1mRlG+MIGwvndwj6CZB+esyxhsTuFg1 hsbuD3km8aYymt8H3zJx8Ow4aVYPzfq/ATDcHNKOjGh90BYQbLhyP3l4U3JuhdvEZu Yj4acvTi/U3046NljzCg8I2s2asu9DTqI0IY+zm/DBhhtfiAiZ7tbFlHaJJhxBwAu4 4AFK5u02webvKXMl2V3Q0E92H/ML7OmPNnUpNA1iKkJ4B1PyMBkQFbCxvdKBibVB5c +aVbr3kWh9YmtKqj5DuqOrzk= Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id EFDB120774; Tue, 5 Nov 2019 23:41:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=archlinux.org; s=luna2; t=1572997269; bh=NDie9hAHUmdF4Q9xg7bdEPvEY74lw08HBDNSDLGyFhc=; h=To:Date:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:Cc; b=iwWPq4Uf6YNQTpFIPkV93/uY7wedzZEk7nUe9pDzlU7y7cJ11MG88JbaPMnZPo2Qa bz9SX4FxAiacn9qRjde1sdI/hnCvcVyXnER7o6CrjdzDpxaZeLrLfpLMAkJUPbg5SU sxLgSztHCJJ+PEGE+HbUBk5NTx/2dOG71a2/0tFyOmGQSrTfyYzWQdy9RGLt8c+W3y kWqN7Ef2V6py9VjKN1uL8WSqtICYtZaB4I33kY6yVUE6JdzGbyfVnTNjvNkcA6DTNH 1oQjyOKPydyJI3iGNKcFrspBvEuxJkX8HNxYFDfghZS8f8ndhD5kuXSWwqOXh43fW+ YWJS1xiDKQpDljU86Q3zUMJni1LaPLB8wku82SoEq6G8ZDpiG2VSJXlYBUUL8GP5OS KldYoFYWwDmdM4fov+rLwwuaiudrhl4HrbPsxYhNd1/nLjweTekNrgnKZF1Wd1Y8pJ /ep4AN5UM01LIpK+HFX6OvVVXFmgTI8azfnn2U+Z1yabJT4vxOLLk1WFEw3RkifD+r LNX3OB1WhDSuTu1gLXw/nJ1bMgDz76DRqOT6oHVEwEYI38H1bRdW3zj+E1aOV4zq7W KVMPqHCYYKhTILWe6R3KSpaebbzm1WNEIb3jDmFEglLxxsyfdhG5X+0iJQPB40HDMI pMzGpKuelB7AiM/XaMD9i55A= Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id 0C57C20769 for ; Tue, 5 Nov 2019 23:41:07 +0000 (UTC) Received: from orion.archlinux.org (orion.archlinux.org [88.198.91.70]) by luna.archlinux.org (Postfix) with ESMTPS for ; Tue, 5 Nov 2019 23:41:07 +0000 (UTC) Received: from orion.archlinux.org (localhost [127.0.0.1]) by orion.archlinux.org (Postfix) with ESMTP id C2E4816662C5C4; Tue, 5 Nov 2019 23:41:05 +0000 (UTC) Received: from didactylos.attlocal.net (unknown [IPv6:2600:1700:57f0:ca20:763a:c795:fcf6:91ea]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: eschwartz) by orion.archlinux.org (Postfix) with ESMTPSA id 3AF8416662C5C3; Tue, 5 Nov 2019 23:41:05 +0000 (UTC) To: arch-projects@archlinux.org Date: Tue, 5 Nov 2019 18:40:44 -0500 Message-Id: <20191105234047.1842520-1-eschwartz@archlinux.org> X-Mailer: git-send-email 2.24.0 MIME-Version: 1.0 Subject: [arch-projects] [devtools] [PATCH 1/4] arch-nspawn: restore cachedir handling for host_mirrors X-BeenThere: arch-projects@archlinux.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Arch Linux projects development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Eli Schwartz via arch-projects Reply-To: Arch Linux projects development discussion Cc: Eli Schwartz Errors-To: arch-projects-bounces@archlinux.org Sender: "arch-projects" In commit 27ff286ee78eb2faac803e3ef67f3171ddfa0098, we moved from sourcing the primary cachedir via /etc/pacman.conf, to using the pacman.conf in the workdir. One unanticipated side effect of this was breaking the special host mirrors magic we used to turn a host mirror into a cachedir. It was still processed as a server, but we relied on it being in the host's cachedirs in order to be persisted, and this no longer occurred. Solve this by explicitly adding each host mirror root as a cachedir. Signed-off-by: Eli Schwartz --- arch-nspawn.in | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/arch-nspawn.in b/arch-nspawn.in index 5817143..90fe967 100644 --- a/arch-nspawn.in +++ b/arch-nspawn.in @@ -99,7 +99,14 @@ build_mount_args() { copy_hostconf () { unshare --fork --pid gpg --homedir "$working_dir"/etc/pacman.d/gnupg/ --no-permission-warning --quiet --batch --import --import-options import-local-sigs "$(pacman-conf GpgDir)"/pubring.gpg >/dev/null 2>&1 pacman-key --gpgdir "$working_dir"/etc/pacman.d/gnupg/ --import-trustdb "$(pacman-conf GpgDir)" >/dev/null 2>&1 + printf 'Server = %s\n' "${host_mirrors[@]}" >"$working_dir/etc/pacman.d/mirrorlist" + for host_mirror in "${host_mirrors[@]}"; do + if [[ $host_mirror == *file://* ]]; then + host_mirror=$(echo "$host_mirror" | sed -r 's#file://(/.*)/\$repo/os/\$arch#\1#g') + in_array "$host_mirror" "${cache_dirs[@]}" || cache_dirs+=("$host_mirror") + fi + done [[ -n $pac_conf ]] && cp "$pac_conf" "$working_dir/etc/pacman.conf" [[ -n $makepkg_conf ]] && cp "$makepkg_conf" "$working_dir/etc/makepkg.conf" From patchwork Tue Nov 5 23:40:45 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Emil Velikov via arch-projects X-Patchwork-Id: 1348 Return-Path: Delivered-To: patchwork@archlinux.org Received: from apollo.archlinux.org (localhost [127.0.0.1]) by apollo.archlinux.org (Postfix) with ESMTP id 4AE6F14ED05DA for ; Tue, 5 Nov 2019 23:41:24 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on apollo X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1,DKIM_VALID=-0.1,DKIM_VALID_AU=-0.1, LOCAL_FAKEBUSINESS=0.5,MAILING_LIST_MULTI=-1,RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001,T_DMARC_POLICY_NONE=0.01 autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-BL-Results: [127.0.9.2] Received: from orion.archlinux.org (orion.archlinux.org [88.198.91.70]) by apollo.archlinux.org (Postfix) with ESMTPS for ; Tue, 5 Nov 2019 23:41:24 +0000 (UTC) Received: from orion.archlinux.org (localhost [127.0.0.1]) by orion.archlinux.org (Postfix) with ESMTP id D2CD216662C606; Tue, 5 Nov 2019 23:41:12 +0000 (UTC) Received: from luna.archlinux.org (luna.archlinux.org [IPv6:2a01:4f8:160:3033::2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: luna) by orion.archlinux.org (Postfix) with ESMTPSA id 61BB216662C5DC; Tue, 5 Nov 2019 23:41:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=archlinux.org; s=orion; t=1572997270; bh=lBuJv2C+uGZKrA6iab+hDwpZ2EuynjMJ9J9z+WBvACs=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc; b=oInoQBjPI1tyNi+JJR5XHJFmlB3GVqMBVH1Yio1V6qAd+ReWU+7HvKh+3UoUxGg9G 4MXWXtf6c20tVon4Fj6+PuKYCkKZefid0Bed+xzQ2vRErXezIhzXFKNBB+gAI0/nlt MYQbmtw5Crh5p+vrj9Bhye2se8p2+VslExBKrVzR/2/mB+fLMIVbLTEPzU3w6IKV6G iNZKWbWp4b2SflIeSTgCmZnC3OPWpGCa6sSo6RxvqjNXuWP/sn0uoV6Aw1cCQd4V21 OnGYnY29y/JnI2gEaKoZiNyW4CqKOSeuafe4vK2Yqme2Nv1HQn5HAeA5YS/93f9Not SJWmgOYVIBDui19F0eelOInvPg0/PzEUIABRyj1b1/Zv0z2+vzSxPqUx+RRSToJuCX PQ+uXIwtk0uaoh34RLuCjIHvBOXcDIq/a8S3Gp0MqrkYCNlVXvFwFr57V5WUr1Qs4o J0qPrPLWZoO7rYuGA/mdP+Zhl8PJ1L8FyeouAoeXeFd4kvt/HmxlbCYGycBN1x5oo3 IbkjKagea6YBgYgGAJSD2Fy3oP1WcIXgwHp5Js6YxX4R1kNwounYV4mhgLAebRRtE4 MOL1krLTy29VY+Wc8HbjpISdEGAuMuETGDjj9EF7wgLoP+r021Rua8Mgr2+8VCkotM 7XUK0VRyA1ndx0mLbDw274QU= Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id 2AFD12077B; Tue, 5 Nov 2019 23:41:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=archlinux.org; s=luna2; t=1572997270; bh=lBuJv2C+uGZKrA6iab+hDwpZ2EuynjMJ9J9z+WBvACs=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc; b=Dy96kwzpiOziSWrcQMJ4jHVmMxa/IMBKIzVEebU1mkf9BSiuZsDzzZ+alXOggk/ky 5YoLE4EIbpwu10HJM5xXbvsPJiImwgp2++kbrtxIiGGrvgNoYe5TBrsAYFrg0b6xti DyyYDxP89m3QQtUwOc6EaZMY2AXKXvhW8ZnJQ58KGKM7wYO1wXE6KFNVVaR/LFbehL 3Y9M1fBfSf+AKw0EGd4tC8wgbVFVsr5EHu9NvVU6OOPJinGlJi75nASPcN+Bf6PKPA +H+paxsALdLS27ecS0nTI9Uk28V1gptLV+h1jcBGUNH2/AHKAXVqf8kbzHGweyO3zz mgVBn5TqAg8/YaHRSp6awT42sG7UnQMtV8jkk3cgm25VjEpQ53ct6h4F/t68KaWS/M keJaIRw03ptPHOqrgvpRVm32sqRiACJgaJ/x4c+D6AFtxBMe2jBT7wHwTwe0H7uAWU mxQh29VDrF7OYOJ5yzxGS0dffsu6i45nnz7KeRNpmoRax74Q8GFE6DTsT8ZH1gwhNx BRMwIF31gwluo6qu0LqghRBfbaDfJd7PpvwiJLWf3M7vzL6XDPW9xkHPTbrkjNPVN0 6ubpa8OxDwEZtsJFeQCDM0smnFyXxlufZxDJuYBfeEEMKftDOLqdGtO7ZLE8kNF3ZC AZvPNcXxGrUnx702h5gwIpUY= Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id 670252076B for ; Tue, 5 Nov 2019 23:41:07 +0000 (UTC) Received: from orion.archlinux.org (orion.archlinux.org [IPv6:2a01:4f8:160:6087::1]) by luna.archlinux.org (Postfix) with ESMTPS for ; Tue, 5 Nov 2019 23:41:07 +0000 (UTC) Received: from orion.archlinux.org (localhost [127.0.0.1]) by orion.archlinux.org (Postfix) with ESMTP id 8209016662C5CA; Tue, 5 Nov 2019 23:41:06 +0000 (UTC) Received: from didactylos.attlocal.net (unknown [IPv6:2600:1700:57f0:ca20:763a:c795:fcf6:91ea]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: eschwartz) by orion.archlinux.org (Postfix) with ESMTPSA id E747916662C5C7; Tue, 5 Nov 2019 23:41:05 +0000 (UTC) To: arch-projects@archlinux.org Date: Tue, 5 Nov 2019 18:40:45 -0500 Message-Id: <20191105234047.1842520-2-eschwartz@archlinux.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191105234047.1842520-1-eschwartz@archlinux.org> References: <20191105234047.1842520-1-eschwartz@archlinux.org> MIME-Version: 1.0 Subject: [arch-projects] [devtools] [PATCH 2/4] arch-nspawn: simplify cachedir/host_mirror parsing X-BeenThere: arch-projects@archlinux.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Arch Linux projects development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Eli Schwartz via arch-projects Reply-To: Arch Linux projects development discussion Cc: Eli Schwartz Errors-To: arch-projects-bounces@archlinux.org Sender: "arch-projects" consolidate logic flows in the same area for parsing and building arrays. Don't bother having a special function just to build the mount_args array, since we now use the same handling for adding any cachedir (including host mirrors) to the mount arguments, this becomes a trivial for loop -- and it really did not need to be delayed until after the sanity check, anyway. Signed-off-by: Eli Schwartz --- arch-nspawn.in | 36 +++++++++++++----------------------- 1 file changed, 13 insertions(+), 23 deletions(-) diff --git a/arch-nspawn.in b/arch-nspawn.in index 90fe967..7aa6fd6 100644 --- a/arch-nspawn.in +++ b/arch-nspawn.in @@ -20,6 +20,7 @@ umask 0022 working_dir='' files=() +mount_args=() usage() { echo "Usage: ${0##*/} [options] working-dir [systemd-nspawn arguments]" @@ -65,6 +66,13 @@ fi # shellcheck disable=2016 host_mirrors=($($pacconf_cmd --repo extra Server 2> /dev/null | sed -r 's#(.*/)extra/os/.*#\1$repo/os/$arch#')) +for host_mirror in "${host_mirrors[@]}"; do + if [[ $host_mirror == *file://* ]]; then + host_mirror=$(echo "$host_mirror" | sed -r 's#file://(/.*)/\$repo/os/\$arch#\1#g') + in_array "$host_mirror" "${cache_dirs[@]}" || cache_dirs+=("$host_mirror") + fi +done + while read -r line; do mapfile -t lines < <($pacconf_cmd --config "${pac_conf:-$working_dir/etc/pacman.conf}" \ --repo $line Server | sed -r 's#(.*/)[^/]+/os/.+#\1$repo/os/$arch#') @@ -78,35 +86,18 @@ while read -r line; do fi done < <($pacconf_cmd --config "${pac_conf:-$working_dir/etc/pacman.conf}" --repo-list) -# {{{ functions -build_mount_args() { - declare -g mount_args=() - - for host_mirror in "${host_mirrors[@]}"; do - if [[ $host_mirror == *file://* ]]; then - host_mirror_path=$(echo "$host_mirror" | sed -r 's#file://(/.*)/\$repo/os/\$arch#\1#g') - mount_args+=("--bind-ro=${host_mirror_path//:/\\:}") - fi - done - - mount_args+=("--bind=${cache_dirs[0]//:/\\:}") +mount_args+=("--bind=${cache_dirs[0]//:/\\:}") - for cache_dir in "${cache_dirs[@]:1}"; do - mount_args+=("--bind-ro=${cache_dir//:/\\:}") - done -} +for cache_dir in "${cache_dirs[@]:1}"; do + mount_args+=("--bind-ro=${cache_dir//:/\\:}") +done +# {{{ functions copy_hostconf () { unshare --fork --pid gpg --homedir "$working_dir"/etc/pacman.d/gnupg/ --no-permission-warning --quiet --batch --import --import-options import-local-sigs "$(pacman-conf GpgDir)"/pubring.gpg >/dev/null 2>&1 pacman-key --gpgdir "$working_dir"/etc/pacman.d/gnupg/ --import-trustdb "$(pacman-conf GpgDir)" >/dev/null 2>&1 printf 'Server = %s\n' "${host_mirrors[@]}" >"$working_dir/etc/pacman.d/mirrorlist" - for host_mirror in "${host_mirrors[@]}"; do - if [[ $host_mirror == *file://* ]]; then - host_mirror=$(echo "$host_mirror" | sed -r 's#file://(/.*)/\$repo/os/\$arch#\1#g') - in_array "$host_mirror" "${cache_dirs[@]}" || cache_dirs+=("$host_mirror") - fi - done [[ -n $pac_conf ]] && cp "$pac_conf" "$working_dir/etc/pacman.conf" [[ -n $makepkg_conf ]] && cp "$makepkg_conf" "$working_dir/etc/makepkg.conf" @@ -130,7 +121,6 @@ elif [[ $(cat "$working_dir/.arch-chroot") != "$CHROOT_VERSION" ]]; then die "chroot '%s' is not at version %s. Please rebuild." "$working_dir" "$CHROOT_VERSION" fi -build_mount_args copy_hostconf eval "$(grep -a '^CARCH=' "$working_dir/etc/makepkg.conf")" From patchwork Tue Nov 5 23:40:46 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Emil Velikov via arch-projects X-Patchwork-Id: 1349 Return-Path: Delivered-To: patchwork@archlinux.org Received: from apollo.archlinux.org (localhost [127.0.0.1]) by apollo.archlinux.org (Postfix) with ESMTP id C449214ED0620 for ; Tue, 5 Nov 2019 23:41:37 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on apollo X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1,DKIM_VALID=-0.1,DKIM_VALID_AU=-0.1, MAILING_LIST_MULTI=-1,RCVD_IN_DNSWL_MED=-2.3,SPF_HELO_NONE=0.001, T_DMARC_POLICY_NONE=0.01 autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-BL-Results: [127.0.9.2] Received: from orion.archlinux.org (orion.archlinux.org [88.198.91.70]) by apollo.archlinux.org (Postfix) with ESMTPS for ; Tue, 5 Nov 2019 23:41:37 +0000 (UTC) Received: from orion.archlinux.org (localhost [127.0.0.1]) by orion.archlinux.org (Postfix) with ESMTP id 2060016662C651; Tue, 5 Nov 2019 23:41:22 +0000 (UTC) Received: from luna.archlinux.org (luna.archlinux.org [5.9.250.164]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: luna) by orion.archlinux.org (Postfix) with ESMTPSA id CEEB816662C5F3; Tue, 5 Nov 2019 23:41:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=archlinux.org; s=orion; t=1572997271; bh=w1+IRYFdRLTPRWg5Un5UgWF3ZUYHynqadNF4UDlNAhY=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc; b=jfI0UK25N6kRRB6g3te2IChdadggY2OPFGSSAvVd+iXqWbvb0kd7YFoWHOW5Tsyvg gPBhDoz7cdc1j97sY9xiRb72MT5ts4k2yYPsJC7UeAklgomn9YhZ35aB91pq8aX0ZV FzI8eFtLn61sdFMgoEHq8Y5TFv9xm3X+3BR9B38b1eHJBe8ptBQCldlJeiZ6zEB++a pzIOdN3/nQB09SaP62BrafAOHijpist1iRwba3eh2wrrVgzpuJb6F8pfd2Tj+wwlTs cesN8/mzyzfmbjW3POrvTvC4pgAEuTU2CMLPkZ5hff46cf56j4+P+a1OvDvAyatET/ nOwMTIeDAQrCfweeql1dV0lWcx2/Th+AQ64Lbvzj7/Hey7egdIpBI5+emK6QBM6MKM k0I7HZVTN/2uoVMkaHI7KIQNajk1Js0KnsfcMmG1Wi/4lm9+3VIvJPrESkaXwy3E4+ 0fNhOEMO6M2MPLLsAdagAbt0g4HgCALbZzuVV9lu9bLS1K+R9ZSjyw6CPQd2EeWkar sN620wsK+0ul1GJa1Sp/iDr5vTZ9rlhS/UjdrAF7k7Ps4wGnYBVkVilas0GQodOEpc Z90VrHpmJn9E7IiToI4hZa0gbdzLbdSRXd4gg+JuS4a73n/LVvFzWauqqnKRO40aQq gKHw7u6XXctPkQYoIc+fY8ko= Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id 7B1FE20785; Tue, 5 Nov 2019 23:41:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=archlinux.org; s=luna2; t=1572997271; bh=w1+IRYFdRLTPRWg5Un5UgWF3ZUYHynqadNF4UDlNAhY=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc; b=uRSPA7pbDPE95afUvvKh+7ZNOFmS+IJ0qRdVB2mXZgUfzuZK35jKWE58LS9M4QCbj s/vdS9Ipt2vSeg5627aFidfYOnjnc0gyzFDCssY8x/y2coILFfAoDBEwixkf25/tDk V2gOMm5+oQpyB43/ihwFYyR7joLBAUWArvooHcTsxfESpqNt7iZTQpYKqiZNFOdgfG HgFEqvYi/TJPrpWXKNTl19LVK0uVC+zOiaNDUSRDqItVd1qkNyMgN6Zx5sJQ8shADJ Mu9Otdtuj8I7D+5pNCphPERjRNYwcGczRbTtHUpyK8uW3wpljJ4dS1VMM3Mr1qPWIZ G/27T4CnB6GcrP9f9KyF+B/U8fYD5oFmW/FHe9dpusjgKakY8UhpGkoKLq1DCIfjcc GBWL4VTkcHeOwIAIClxc7tky2aKPc/WsTMxOuxBL1UGNYbh5A2mFdsCgPbAzoyYFwJ ksya3tKa0hplq/DV9slmEuUlfbqkLacPWsPqP72J25R40Wq7uev5LhMZY9tfjtgchw Jsez6d5vZtHGdaxdnpyVyr2FCjnMlnek75XOUY7CQ5NbQky8DTCedW1JUCv7YA1ZSY 7/HmWzw2wrFl32cf9RsdSl/f5XI4ZxouMu4RhrSxa4ePrS8sXkEqmUAulUfndLmb1z kW9Fs/7bgL5skmo+4LXcm/9c= Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id 133C020769 for ; Tue, 5 Nov 2019 23:41:09 +0000 (UTC) Received: from orion.archlinux.org (orion.archlinux.org [IPv6:2a01:4f8:160:6087::1]) by luna.archlinux.org (Postfix) with ESMTPS for ; Tue, 5 Nov 2019 23:41:09 +0000 (UTC) Received: from orion.archlinux.org (localhost [127.0.0.1]) by orion.archlinux.org (Postfix) with ESMTP id 30CF816662C5CC; Tue, 5 Nov 2019 23:41:07 +0000 (UTC) Received: from didactylos.attlocal.net (unknown [IPv6:2600:1700:57f0:ca20:763a:c795:fcf6:91ea]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: eschwartz) by orion.archlinux.org (Postfix) with ESMTPSA id A693516662C5CB; Tue, 5 Nov 2019 23:41:06 +0000 (UTC) To: arch-projects@archlinux.org Date: Tue, 5 Nov 2019 18:40:46 -0500 Message-Id: <20191105234047.1842520-3-eschwartz@archlinux.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191105234047.1842520-1-eschwartz@archlinux.org> References: <20191105234047.1842520-1-eschwartz@archlinux.org> MIME-Version: 1.0 Subject: [arch-projects] [devtools] [PATCH 3/4] use libmakepkg to find and use variables in makepkg.conf X-BeenThere: arch-projects@archlinux.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Arch Linux projects development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Eli Schwartz via arch-projects Reply-To: Arch Linux projects development discussion Cc: Eli Schwartz Errors-To: arch-projects-bounces@archlinux.org Sender: "arch-projects" - drop homebrew function in makechrootpkg - use better mock to find invoking user's $HOME - make offload-build respect makepkg.conf to determine where to sync files, matching the behavior of makechrootpkg Signed-off-by: Eli Schwartz --- makechrootpkg.in | 34 ++++++---------------------------- offload-build | 9 ++++++++- 2 files changed, 14 insertions(+), 29 deletions(-) diff --git a/makechrootpkg.in b/makechrootpkg.in index f5a0e51..b3a1854 100644 --- a/makechrootpkg.in +++ b/makechrootpkg.in @@ -13,6 +13,8 @@ m4_include(lib/common.sh) m4_include(lib/archroot.sh) +source /usr/share/makepkg/util/config.sh + shopt -s nullglob default_makepkg_args=(--syncdeps --noconfirm --log --holdver --skipinteg) @@ -80,26 +82,6 @@ usage() { } # {{{ functions -# Usage: load_vars $makepkg_conf -# Globals: -# - SRCDEST -# - SRCPKGDEST -# - PKGDEST -# - LOGDEST -# - MAKEFLAGS -# - PACKAGER -load_vars() { - local makepkg_conf="$1" var - - [[ -f $makepkg_conf ]] || return 1 - - for var in {SRC,SRCPKG,PKG,LOG}DEST MAKEFLAGS PACKAGER; do - [[ -z ${!var:-} ]] && eval "$(source "$makepkg_conf"; printf "%s='%s'" "$var" "${!var}")" - done - - return 0 -} - # Usage: sync_chroot $chrootdir $copydir [$copy] sync_chroot() { local chrootdir=$1 @@ -338,16 +320,12 @@ for arg in "${@:$OPTIND}"; do esac done -if [[ -n $SUDO_USER ]]; then - eval "USER_HOME=~$SUDO_USER" -else - USER_HOME=$HOME -fi - umask 0022 -load_vars "${XDG_CONFIG_HOME:-$USER_HOME/.config}/pacman/makepkg.conf" || load_vars "$USER_HOME/.makepkg.conf" -load_vars /etc/makepkg.conf +ORIG_HOME=$HOME +IFS=: read -r _ _ _ _ _ HOME _ < <(getent passwd "${SUDO_USER:-$USER}") +load_makepkg_config +HOME=$ORIG_HOME # Use PKGBUILD directory if these don't exist [[ -d $PKGDEST ]] || PKGDEST=$PWD diff --git a/offload-build b/offload-build index 7a07b15..078796a 100755 --- a/offload-build +++ b/offload-build @@ -18,6 +18,8 @@ # along with this program. If not, see . # +source /usr/share/makepkg/util/config.sh + # global defaults suitable for use by Arch staff repo=extra @@ -105,4 +107,9 @@ mapfile -t files < <( makepkg --packagelist ') -(( ${#files[@]} )) && printf '%s\n' '' '-> copying files...' && scp "${files[@]/#/$server:}" . + +if (( ${#files[@]} )); then + printf '%s\n' '' '-> copying files...' + load_makepkg_config + scp "${files[@]/#/$server:}" "${PKGDEST:-${PWD}}/" +fi From patchwork Tue Nov 5 23:40:47 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Emil Velikov via arch-projects X-Patchwork-Id: 1350 Return-Path: Delivered-To: patchwork@archlinux.org Received: from apollo.archlinux.org (localhost [127.0.0.1]) by apollo.archlinux.org (Postfix) with ESMTP id B3C6014ED09AC for ; Tue, 5 Nov 2019 23:47:10 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on apollo X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1,DKIM_VALID=-0.1,DKIM_VALID_AU=-0.1, MAILING_LIST_MULTI=-1,RCVD_IN_DNSWL_MED=-2.3,SPF_HELO_NONE=0.001, T_DMARC_POLICY_NONE=0.01 autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-BL-Results: [127.0.9.2] Received: from orion.archlinux.org (orion.archlinux.org [88.198.91.70]) by apollo.archlinux.org (Postfix) with ESMTPS for ; Tue, 5 Nov 2019 23:47:10 +0000 (UTC) Received: from orion.archlinux.org (localhost [127.0.0.1]) by orion.archlinux.org (Postfix) with ESMTP id B053B166632DF5; Tue, 5 Nov 2019 23:47:07 +0000 (UTC) Received: from luna.archlinux.org (luna.archlinux.org [IPv6:2a01:4f8:160:3033::2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits)) (No client certificate requested) (Authenticated sender: luna) by orion.archlinux.org (Postfix) with ESMTPSA id 84E59166632DF1; Tue, 5 Nov 2019 23:47:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=archlinux.org; s=orion; t=1572997627; bh=8LsyLHmsiuF1zY9LQ8frXsAZp5zjshInTcDcoyhsy4I=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc; b=KkHsVjQ0vyed/A9ITLbcMxUR3aivCC5mCxtswz2lFxD/HOaEgkd1E7wa5UUn2s3lX nYfEdCTG02SWsREEqv0Dg1/TQrm6fioW1Upi5QxE17iM18UZbeaP/fxlPRXgmxrCeM MCS+kdHxDDKzJyh30kdL6XjD6vNIrvRsS7aZeKCDneNZMB1BJ0a0uFDU8ntYTQugQT RqxsGwtZ+66+LB6zd85EpuG01MrnBEHxwCGgkCWVNg+dI+DfPcTMoABDJrmE+edYsj 51njmfz/6KRDyD8GdYLeFVK4Ka6OreeIEGocWcNxp5+ZSiyX1X1f22ncb93sDJrQl8 ZxPgZ77Ddfjvx1bwqvrRhtFUEUDpKnq/itepa1fOrFLIDR2xqL5B1KFQH4eaLudywF c9pgXh9E9tEr9cHGLQTqBALZlb7bycnw+vU5EwG9G2nXG8Htcp4BcEkSrtX4VT5wVx ji1q2nc4sskujpkrvQA8FEPYkmn8qyBnG75ZBdFFN+V5SN3mCeThB/EgklDrMs3tWf h8kBAiiru6jwjnRnARrVczM9VRgFchiPcMGKYroJdz9ud19DUuvVeqtx4N3imfkobf pSvA3BfjfRrOn1zUInTaCiswlGUN7+6Uo4OwygI1C3j+4jc0wOCgWUzuW8+b19wKdw QmPCAtKq3jcx2s2rdA5QrGL0= Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id A86392076B; Tue, 5 Nov 2019 23:41:12 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=archlinux.org; s=luna2; t=1572997272; bh=8LsyLHmsiuF1zY9LQ8frXsAZp5zjshInTcDcoyhsy4I=; h=To:Date:In-Reply-To:References:Subject:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc; b=KrV6OUiqtdbyj1VPLW3l7MRpJ2fNr1NRTfYofRLU2u/rmfOtClqFTGPV72raHa7NA l3regxnTH3CUmREXrkswaqSAQ0B00b6dTa6YVToPqI/EyBYk9Mn6LqBN1booIPSZib f2XBQbwfNAKQ95A4l7C2Rjta6Ty3edg+r7dp2VKHc5mWI1RgmwiBimBk8XvoKWjg2j Xy71G14GxK9Rjjcz+I72HApVuItzNJbBNHsko34FSGNfH+4hjezmteHMLQwcdSCWmb sBhlO6d/d5ft9CPLnFHy+6QgPY1lcZvCwT4aXOh4O8mMgC3A2A1cugERv6Bitwpb0Y 8fimZa2IQwlNcRDIQIbcAK3EaZCIrzmDz9EkzrIVpEKSD0+3A3uhmdHev8tFaBEnCJ DdT+kLyNCD5xI9JoEZU3P48MV6alEaFgWmYb6e+q8tVQ1DPCRs9wgdqhSdluF2Q6Uq ZADIcoG2C/DT1G3VIKi2I9RmXM09rQNixVc79IN3BlrEW9C+v/MaNnT/kt/umYBHHc W3QdcPD8LD2TFX8g7LB++H4Beu45PN16FeBHdpSNkZWvOxJP6bwrY8ys6e1W/82Mk8 C+/XuCTFreFlAb3767I3nn+eZQPd6xvVuDsskPThIbQSFAWF+l/E7WOroUFis0JmGL 3qe5mLek64njuNN6/x2vgBU8= Received: from luna.archlinux.org (luna.archlinux.org [127.0.0.1]) by luna.archlinux.org (Postfix) with ESMTP id C605C2076B for ; Tue, 5 Nov 2019 23:41:09 +0000 (UTC) Received: from orion.archlinux.org (orion.archlinux.org [88.198.91.70]) by luna.archlinux.org (Postfix) with ESMTPS for ; Tue, 5 Nov 2019 23:41:09 +0000 (UTC) Received: from orion.archlinux.org (localhost [127.0.0.1]) by orion.archlinux.org (Postfix) with ESMTP id D0B6916662C5D0; Tue, 5 Nov 2019 23:41:08 +0000 (UTC) Received: from didactylos.attlocal.net (unknown [IPv6:2600:1700:57f0:ca20:763a:c795:fcf6:91ea]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: eschwartz) by orion.archlinux.org (Postfix) with ESMTPSA id 5E4EF16662C5CD; Tue, 5 Nov 2019 23:41:07 +0000 (UTC) To: arch-projects@archlinux.org Date: Tue, 5 Nov 2019 18:40:47 -0500 Message-Id: <20191105234047.1842520-4-eschwartz@archlinux.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191105234047.1842520-1-eschwartz@archlinux.org> References: <20191105234047.1842520-1-eschwartz@archlinux.org> MIME-Version: 1.0 Subject: [arch-projects] [devtools] [PATCH 4/4] Makefile: sort program names X-BeenThere: arch-projects@archlinux.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Arch Linux projects development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Eli Schwartz via arch-projects Reply-To: Arch Linux projects development discussion Cc: Eli Schwartz Errors-To: arch-projects-bounces@archlinux.org Sender: "arch-projects" Signed-off-by: Eli Schwartz --- Makefile | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index a8e44ee..0eb7a88 100644 --- a/Makefile +++ b/Makefile @@ -4,19 +4,19 @@ PREFIX = /usr/local MANDIR = $(PREFIX)/share/man IN_PROGS = \ - checkpkg \ - commitpkg \ archco \ + arch-nspawn \ archrelease \ archbuild \ - lddd \ + checkpkg \ + commitpkg \ + crossrepomove\ finddeps \ - rebuildpkgs \ find-libdeps \ - crossrepomove\ - arch-nspawn \ + lddd \ mkarchroot \ makechrootpkg \ + rebuildpkgs \ sogrep BINPROGS = \