From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7325493263178137600 X-Received: by 2002:a5d:690c:0:b0:337:bc8e:2ae8 with SMTP id t12-20020a5d690c000000b00337bc8e2ae8mr631387wru.63.1706342180561; Fri, 26 Jan 2024 23:56:20 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6000:1d1:b0:337:c945:726e with SMTP id t17-20020a05600001d100b00337c945726els695503wrx.1.-pod-prod-03-eu; Fri, 26 Jan 2024 23:56:18 -0800 (PST) X-Google-Smtp-Source: AGHT+IEzbGhaQtOxvQlvasQ+ti2pGWJJ+45DF3EyskbCMH8+A050RtdD5jd7ChXUOk1Fma7Tctai X-Received: by 2002:a5d:6e12:0:b0:339:3fc0:c3bf with SMTP id h18-20020a5d6e12000000b003393fc0c3bfmr615037wrz.135.1706342178557; Fri, 26 Jan 2024 23:56:18 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1706342178; cv=none; d=google.com; s=arc-20160816; b=J+KgsGpfNcUoY7nCepV5lQZXLNy/+zPphJO3Z+0/HgfaGJLfehl4IqWjWSOP67CikA TmJkt4MQBK7+lJvLyFiLOfDPVJZdLDs+9JPOZwAZx5TjE/Y3DB2CbQn3O5h2F5Pe7ybX dn1auW7884K2FFVkxaytAjkzX9wGxXHOHMGeRcf3JyZhE+sw4ysKtYvdK8AdN1z+nCpA vVMyPxDM8Tg/82whTFrPmfXBvt2xmGf7n47Et2HJxgrNH4GL9zUL5nLwAL75S6elBXXn vqV2ZvPXEjFWzq3SIXdQG4BCTdGg9I1Ggs35/4eFjU2SdWVmqsWwPNBi4ahOIPhB9lyY 644w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from; bh=FeN2TuCdJ9t+G1AjK3HP3lHNYB/2Etz0/U39RRGePJs=; fh=7tclEdh7YbwSQowgJ6LNq720O7H5HTEaqj22NJWRE2E=; b=uqhBcM7bfsqS7ocMi1KcDkPOveiDaS5NQd9aGRHMnUAMEhVuL5Y4FViTLNJzYwNxKc s3l4lffSvCNGSSnlj9meQMfSZ41d45YvYAm0xBiMknDi3sgwWGauw1qPGdmy9LZ8lyz2 237s7SSTEEi0xHyWwVBZdcu6Car+J92QOkyzXg6X7JZmeLEXVExUrRs1Cu7dtWG3hxkl cSOF03saEWkUoo/yuHP3Wml/mw+E5zA2du7LwB/hH+D9udECazDtU3fnPOMCxdtg3i7h 8SnXDKEJ1/zrWf6dW/u+FxSNf4bVPrIeXItRQz/kdTWxlmuE1EaFoNL8hEb+OMUdGGav NouQ== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Return-Path: Received: from shymkent.ilbers.de (shymkent.ilbers.de. [85.214.156.166]) by gmr-mx.google.com with ESMTPS id jd2-20020a05600c68c200b0040ee0a44a92si100243wmb.2.2024.01.26.23.56.18 for (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Fri, 26 Jan 2024 23:56:18 -0800 (PST) Received-SPF: pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) client-ip=85.214.156.166; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of ubely@ilbers.de designates 85.214.156.166 as permitted sender) smtp.mailfrom=ubely@ilbers.de Received: from azat.m.ilbers.de (host-80-81-17-52.static.customer.m-online.net [80.81.17.52]) (authenticated bits=0) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPSA id 40R7uHpf023064 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Sat, 27 Jan 2024 08:56:17 +0100 From: Uladzimir Bely To: isar-users@googlegroups.com Subject: [PATCH v2] dpkg-base: Fix and improve handling of multiple apt sources per package Date: Sat, 27 Jan 2024 08:56:17 +0100 Message-Id: <20240127075617.26804-1-ubely@ilbers.de> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: dLjTGHUnhUT2 From: Jan Kiszka Due to overeager quoting, multiple entries in SRC_APT would have led to build errors, rather than mulitple invocations of the fetching and unpacking steps. While fixing that, also avoid pointless re-entries into the schroot by simply pulling the loop into it. Signed-off-by: Jan Kiszka Reviewed-by: Uladzimir Bely --- This goes on top of https://groups.google.com/g/isar-users/c/k8ZNw3OkWLw/m/1s_CPTlPAAAJ [PATCH v7] dpkg: Restore support for replacing pre-installed packages in sbuild-chroot. Tested in CI. We need v2 since previous version conflicts with new changes of "parent" patch v7. meta/classes/dpkg-base.bbclass | 31 ++++++++++++++++++------------- 1 file changed, 18 insertions(+), 13 deletions(-) diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbclass index 86466b57..a8263046 100644 --- a/meta/classes/dpkg-base.bbclass +++ b/meta/classes/dpkg-base.bbclass @@ -119,10 +119,15 @@ do_apt_fetch() { schroot -r -c ${session_id} -d / -u root -- \ rm /etc/apt/sources.list.d/isar-apt.list /etc/apt/preferences.d/isar-apt - for uri in "${SRC_APT}"; do - schroot -r -c ${session_id} -d / -- \ - sh -c 'mkdir -p /downloads/deb-src/"$1"/"$2" && cd /downloads/deb-src/"$1"/"$2" && apt-get -y --download-only --only-source source "$2"' my_script "${BASE_DISTRO}-${BASE_DISTRO_CODENAME}" "${uri}" - done + schroot -r -c ${session_id} -d / -- \ + sh -c ' + set -e + for uri in $2; do + mkdir -p /downloads/deb-src/"$1"/${uri} + cd /downloads/deb-src/"$1"/${uri} + apt-get -y --download-only --only-source source ${uri} + done' \ + my_script "${BASE_DISTRO}-${BASE_DISTRO_CODENAME}" "${SRC_APT}" schroot -e -c ${session_id} schroot_delete_configs @@ -145,16 +150,16 @@ do_apt_unpack() { trap 'exit 1' INT HUP QUIT TERM ALRM USR1 trap 'schroot_cleanup' EXIT - for uri in "${SRC_APT}"; do - schroot -d / -c ${SBUILD_CHROOT} -- \ - sh -c ' \ - set -e - dscfile="$(apt-get -y -qq --print-uris --only-source source "${2}" | cut -d " " -f2 | grep -E "*.dsc")" + schroot -d / -c ${SBUILD_CHROOT} -- \ + sh -c ' + set -e + for uri in $2; do + dscfile="$(apt-get -y -qq --print-uris --only-source source $uri | cut -d " " -f2 | grep -E "*.dsc")" cd ${PP} - cp /downloads/deb-src/"${1}"/"${2}"/* ${PP} - dpkg-source -x "${dscfile}" "${PPS}"' \ - my_script "${BASE_DISTRO}-${BASE_DISTRO_CODENAME}" "${uri}" - done + cp /downloads/deb-src/"${1}"/${uri}/* ${PP} + dpkg-source -x "${dscfile}" "${PPS}" + done' \ + my_script "${BASE_DISTRO}-${BASE_DISTRO_CODENAME}" "${SRC_APT}" schroot_delete_configs } do_apt_unpack[network] = "${TASK_USE_SUDO}" -- 2.20.1