From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6935499186756386816 X-Received: by 2002:adf:9b82:: with SMTP id d2mr96596wrc.193.1614798655815; Wed, 03 Mar 2021 11:10:55 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:adf:d1e6:: with SMTP id g6ls386664wrd.3.gmail; Wed, 03 Mar 2021 11:10:55 -0800 (PST) X-Google-Smtp-Source: ABdhPJzK1hBVxdig/febhWb25Gruz4woNvVekTwJ3wO0HJV/P8t7rIFbpX25dOI5hOoEoW7D0o48 X-Received: by 2002:adf:fb52:: with SMTP id c18mr232432wrs.4.1614798655181; Wed, 03 Mar 2021 11:10:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614798655; cv=none; d=google.com; s=arc-20160816; b=iNtuGyFbcxGJWxefx2gQDKs9aOg8+4hGmLO1zi9l2dd64KA+Vo75Jlc869wyqOnrc+ FYuLizRAB/qJNr+gvmDh1+n53ucKwtr8f3mQGLd2tyXa4k+BD0hfPhVtvc4Qqx6p9W/+ xWCUUok/RNmlq81KpIsvndxBU/VAPh+vm13b37ulQ6jSklRTPq1+zgg+q/+fwTskCN88 nI+VLICedGPkUjFgZqeaE2Rxy8/JvhzTMMiYQSfdqBpFlpJw91HdGz2mmBE2sz59wHs6 AapVeOYyVoQSjhzjtw45OpUl/fOPlpd9vUMUnuQQmcDnXOcou3fIyiGBteNMDOXvn6Pr U7KA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:subject:cc:to:from:date; bh=LXn2ymKnnXgdNXhapCzEkYNUA33W5D7UTkqUvEZo7Dw=; b=h7+fVUANvUUKBaz/AqdH2mlZEK84xUURvrnXmpvbMGcxadT1YGpAFo6LFQ7JtuyCxt Gf90z+rdsBfEKYz2GG2lMnQIhDtrl43bsyfDm24HOFRZ0GDOG997CfI7rAtF//yyd8It yeNv3AsXgzWqI6FwHY8sp7LAKMyxD/9LK784V+VRKQK2u2TL5OHdQoLvAn3s/WnRWv0R HzSQC6XQgkFPD4AAXc5rWPmHgr71TDlf6bGV33eiBSj0215pdLdxvevLp0OjD0mMCkkW boRRtY1atkWsvZaz1T/M8MDOG9E/naevwGf7rV5iugZhOnYMtl9Hx2KdgWktpiO8M44m 5Btw== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=henning.schild@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from gecko.sbs.de (gecko.sbs.de. [194.138.37.40]) by gmr-mx.google.com with ESMTPS id r11si559534wrm.1.2021.03.03.11.10.55 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 03 Mar 2021 11:10:55 -0800 (PST) Received-SPF: pass (google.com: domain of henning.schild@siemens.com designates 194.138.37.40 as permitted sender) client-ip=194.138.37.40; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=henning.schild@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from mail2.sbs.de (mail2.sbs.de [192.129.41.66]) by gecko.sbs.de (8.15.2/8.15.2) with ESMTPS id 123JAsUT007178 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Wed, 3 Mar 2021 20:10:54 +0100 Received: from md1za8fc.ad001.siemens.net ([139.22.36.86]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id 123J5sSl022387; Wed, 3 Mar 2021 20:05:54 +0100 Date: Wed, 3 Mar 2021 20:05:53 +0100 From: Henning Schild To: Vijai Kumar K Cc: Subject: Re: [PATCH v2] dpkg-base: Introduce do_apt_unpack Message-ID: <20210303200553.54833d5e@md1za8fc.ad001.siemens.net> In-Reply-To: <20210303195911.76cfd86a@md1za8fc.ad001.siemens.net> References: <20210303183823.11563-1-Vijaikumar_Kanagarajan@mentor.com> <20210303195911.76cfd86a@md1za8fc.ad001.siemens.net> X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-TUID: PRpmQtge3C1h This will kind of allow "tracking" of those "apt://" guys, and we have to cover that changelog. So i wonder if we can make recipes-app/hello/ just one file and drop those inc and DEFAULT_PREFERENCE bits. That would also make a real CI test. Maybe the docs will need updating as well. Henning Am Wed, 3 Mar 2021 19:59:11 +0100 schrieb "[ext] Henning Schild" : > Am Thu, 4 Mar 2021 00:08:23 +0530 > schrieb Vijai Kumar K : > > > The Debian source package fetch and unpacking happens now inside the > > do_apt_fetch task. > > > > With the current do_apt_fetch implementation, it is not possible to > > use a custom source directory(${S}). > > apt-get source by default extracts the contents of the debian source > > into folder with name _. > > > > Add provision for specifying a custom source directory. > > > > Add a new task called do_apt_unpack and move unpacking logic there. > > > > Signed-off-by: Vijai Kumar K > > --- > > meta/classes/dpkg-base.bbclass | 24 +++++++++++++++++++++--- > > 1 file changed, 21 insertions(+), 3 deletions(-) > > > > diff --git a/meta/classes/dpkg-base.bbclass > > b/meta/classes/dpkg-base.bbclass index 5c7bddc..a6c2e3b 100644 > > --- a/meta/classes/dpkg-base.bbclass > > +++ b/meta/classes/dpkg-base.bbclass > > @@ -58,7 +58,6 @@ do_apt_fetch() { > > if [ -z "${@d.getVar("SRC_APT", True).strip()}" ]; then > > return 0 > > fi > > - rm -rf ${S} > > dpkg_do_mounts > > E="${@ isar_export_proxies(d)}" > > sudo -E chroot ${BUILDCHROOT_DIR} /usr/bin/apt-get update \ > > @@ -69,8 +68,6 @@ do_apt_fetch() { > > for uri in "${SRC_APT}"; do > > sudo -E chroot --userspec=$( id -u ):$( id -g ) > > ${BUILDCHROOT_DIR} \ 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 "${DISTRO}" "${uri}" > > - sudo -E chroot --userspec=$( id -u ):$( id -g ) > > ${BUILDCHROOT_DIR} \ > > - sh -c 'cp /downloads/deb-src/"$1"/"$2"/* ${PP} && cd > > ${PP} && apt-get -y --only-source source "$2"' my_script "${DISTRO}" > > "${uri}" done > > dpkg_undo_mounts > > @@ -79,6 +76,27 @@ do_apt_fetch() { > > addtask apt_fetch after do_unpack before do_patch > > before do_apt_unpack > > > do_apt_fetch[lockfiles] += "${REPO_ISAR_DIR}/isar.lock" > > > > +do_apt_unpack() { > > + rm -rf ${S} > > + dpkg_do_mounts > > + E="${@ isar_export_proxies(d)}" > > Not sure about this, i would hope the unpack would be "purely offline" > > > + for uri in "${SRC_APT}"; do > > + sudo -E chroot --userspec=$( id -u ):$( id -g ) > > ${BUILDCHROOT_DIR} \ > > + sh -c ' \ > > + set -e > > + dscfile="$(apt-get -y -qq --print-uris source > > "${2}" | cut -d " " -f2 | grep -E "*.dsc")" > > but maybe this guy needs network > > Thanks, looking good so far! > > Henning > > > + cd ${PP} > > + cp /downloads/deb-src/"${1}"/"${2}"/* ${PP} > > + dpkg-source -x "${dscfile}" "${PPS}"' \ > > + my_script "${DISTRO}" "${uri}" > > + done > > + > > + dpkg_undo_mounts > > +} > > + > > +addtask apt_unpack after do_apt_fetch before do_patch > > + > > addtask cleanall_apt before do_cleanall > > do_cleanall_apt[nostamp] = "1" > > do_cleanall_apt() { >