From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6920502129401528320 X-Received: by 2002:a50:d548:: with SMTP id f8mr5444295edj.357.1628886753161; Fri, 13 Aug 2021 13:32:33 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:aa7:d2d6:: with SMTP id k22ls1050034edr.3.gmail; Fri, 13 Aug 2021 13:32:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxj+vWygedrTsR24OnGEHoPozkbq2nzhn9ZOarL9upIN/lC7/lxQYmXS/mL0udaYmtOgxue X-Received: by 2002:a05:6402:cae:: with SMTP id cn14mr5338821edb.31.1628886752125; Fri, 13 Aug 2021 13:32:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628886752; cv=none; d=google.com; s=arc-20160816; b=QD0r2KRmsCgmDaiTN3A6ZX7WtM7GA2FxYrZrbFA0Aj/RSqUOJNAgkj+Jq3OQkMCFcI Xd/qJm5CRug4D/L956ClSJMcRNhsFHA81ds89shScajn/LfewPfS/lTjDIFxSN3zxNcc NMOxuPSoaqhsuoksAEthHFOCv6qcu02oUpHKaEIz9/JB0a7pdZ6Q+oHFgx+apUdIjxz7 bmC9aTL2nIUNo4UYWI/2nLzCgWVRsUDO8W6jmeXwM15Xm5Oq/TKmVWgpNCLrBS3PNYKn 73OhFVW7FgW83YhbAaOIRMTQB6h/OIuSVOZMtOiPEDOSy6+q+7SSGoaTL8NuNm+OTURd gY+w== 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=HlTg2ljshk4vATm+ThnDqwcpeYPdiD17gEJfOoPHh50=; b=C486O8ksH9WKfR7iArAm9Gf8HyxT4grc3Cra3fmIl5W5oTdqBKcWAa2PP4DPJ6UQxD W729vqu4HhOcMDXplJblYbimjuMrsaWv4jMbkfUiEME0bhvvQi/0mCO+NKv3Vznz7bIG DryditbmWlBolR3TTol8z3Trz5gb2y00fIAszFNhs1DcZSJZPKaJGas5bs97XUoXt/ii mJ+cYs6hH5sStR8BbJAwhAEDVWqKDI/ESEhXF2UbIVa/RPHBzo0S/FAaV7kZVwhCgwaD LsXYWOyGli17dcSnZX5l7wUesW/fdJg3uOxOnC9vLrWG/ZwA1ugbegaB2Is+HpK6eall lqeA== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.2 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 thoth.sbs.de (thoth.sbs.de. [192.35.17.2]) by gmr-mx.google.com with ESMTPS id h12si130409ede.2.2021.08.13.13.32.32 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 13 Aug 2021 13:32:32 -0700 (PDT) Received-SPF: pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.2 as permitted sender) client-ip=192.35.17.2; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of henning.schild@siemens.com designates 192.35.17.2 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 thoth.sbs.de (8.15.2/8.15.2) with ESMTPS id 17DKWVwp004177 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Fri, 13 Aug 2021 22:32:31 +0200 Received: from md1za8fc.ad001.siemens.net ([167.87.32.22]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id 17DKWVOj008105; Fri, 13 Aug 2021 22:32:31 +0200 Date: Fri, 13 Aug 2021 22:32:30 +0200 From: Henning Schild To: Jan Kiszka Cc: isar-users Subject: Re: [PATCH 3/3] dpkg-gbp: default to "git" patching Message-ID: <20210813223230.223efded@md1za8fc.ad001.siemens.net> In-Reply-To: References: <20210122084241.10573-1-henning.schild@siemens.com> <20210122084241.10573-4-henning.schild@siemens.com> <37fed018-d270-a314-99ac-53c05db8323b@siemens.com> <0d573291-8590-ebf0-5de1-8714efcd49e5@siemens.com> <20210811203649.63399e0c@md1za8fc.ad001.siemens.net> X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-TUID: AYFlCztbhggX Am Wed, 11 Aug 2021 21:12:35 +0200 schrieb Jan Kiszka : > On 11.08.21 20:36, Henning Schild wrote: > > Am Wed, 11 Aug 2021 20:14:56 +0200 > > schrieb Jan Kiszka : > > > >> On 22.01.21 11:55, [ext] Jan Kiszka wrote: > >>> On 22.01.21 09:42, [ext] Henning Schild wrote: > >>>> From: Henning Schild > >>>> > >>>> That class is about packages coming from git, so that is the > >>>> natural choice for the patching tool. > >>>> > >>>> Signed-off-by: Henning Schild > >>>> --- > >>>> RECIPE-API-CHANGELOG.md | 5 +++++ > >>>> meta-isar/recipes-app/cowsay/cowsay_git.bb | 1 - > >>>> meta/classes/dpkg-gbp.bbclass | 2 ++ > >>>> 3 files changed, 7 insertions(+), 1 deletion(-) > >>>> > >>>> diff --git a/RECIPE-API-CHANGELOG.md b/RECIPE-API-CHANGELOG.md > >>>> index cc45f3f66e..c4ec5894a8 100644 > >>>> --- a/RECIPE-API-CHANGELOG.md > >>>> +++ b/RECIPE-API-CHANGELOG.md > >>>> @@ -282,3 +282,8 @@ like /boot/efi to avoid such issues. > >>>> ### Deprecate BUILD_DEPENDS in u-boot-custom.inc > >>>> > >>>> Use DEBIAN_BUILD_DEPENDS instead, to align with deb_debianize. > >>>> + > >>>> +### Default to PATCHTOOL ?= "git" for dpkg-gbp > >>>> + > >>>> +Migrate your patches so they can be applied with "git am", or > >>>> +"unset PATCHTOOL" to get old behaviour. > >>>> diff --git a/meta-isar/recipes-app/cowsay/cowsay_git.bb > >>>> b/meta-isar/recipes-app/cowsay/cowsay_git.bb index > >>>> 2e885a8aa3..c3a1f4942a 100644 --- > >>>> a/meta-isar/recipes-app/cowsay/cowsay_git.bb +++ > >>>> b/meta-isar/recipes-app/cowsay/cowsay_git.bb @@ -5,7 +5,6 @@ > >>>> > >>>> inherit dpkg-gbp > >>>> > >>>> -PATCHTOOL = "git" > >>>> SRC_URI = > >>>> "git://salsa.debian.org/debian/cowsay.git;protocol=https" SRC_URI > >>>> += "file://isar.patch" SRCREV = > >>>> "756f0c41fbf582093c0c1dff9ff77734716cb26f" diff --git > >>>> a/meta/classes/dpkg-gbp.bbclass b/meta/classes/dpkg-gbp.bbclass > >>>> index ba5c3ebb89..d956e8c3bc 100644 --- > >>>> a/meta/classes/dpkg-gbp.bbclass +++ > >>>> b/meta/classes/dpkg-gbp.bbclass @@ -7,6 +7,8 @@ inherit dpkg > >>>> > >>>> S = "${WORKDIR}/git" > >>>> > >>>> +PATCHTOOL ?= "git" > >>>> + > >>>> GBP_DEPENDS ?= "git-buildpackage pristine-tar" > >>>> GBP_EXTRA_OPTIONS ?= "--git-pristine-tar" > >>>> > >>>> > >>> > >>> Sounds reasonable to me. > >>> > >> > >> ...but breaks rebuilding as long as we do not clone into the > >> buildchroot and rather patch alternates: > >> > >> ERROR: mc:qemuarm64-buster:cowsay-git-r0 do_patch: Command Error: > >> 'sh -c 'git > >> --work-tree=/build/tmp/work/debian-buster-arm64/cowsay/git-r0/git > >> reset --hard HEAD'' exited with 0 Output: error: object directory > >> /downloads/git/salsa.debian.org.debian.cowsay.git/objects does not > >> exist; check .git/objects/info/alternates error: unable to read > >> sha1 file of cows/elephant-in-snake.cow > >> (1003cdf63bd9ae64e6674b47f8ed4799b5f809a6) error: unable to read > >> sha1 file of cows/elephant.cow > >> (959cd3f6dd2b628b2471572a06e162b31dbcac96) error: unable to read > >> sha1 file of cows/head-in.cow > >> (2e51774886392c2d295e5659b03dbfa04f14aeb4) error: unable to read > >> sha1 file of cows/luke-koala.cow > >> (78acd6988fa397cc1dfcd98f04373af94288430e) error: unable to read > >> sha1 file of cows/moofasa.cow > >> (15119d6782fec20424c648fcf0174f291dd22026) error: unable to read > >> sha1 file of cowsay (900ca46014cf0454075a6390830b399b2a4b2a34) > >> error: unable to read sha1 file of cowsay.1 > >> (7133866af2f7ea7cccdfa79378a61b27c1573e6b) fatal: Could not reset > >> index file to revision 'HEAD'. ERROR: Logfile of failure stored > >> in: > >> /build/tmp/work/debian-buster-arm64/cowsay/git-r0/temp/log.do_patch.71 > >> ERROR: Task > >> (mc:qemuarm64-buster:/repo/meta-isar/recipes-app/cowsay/cowsay_git.bb:do_patch) > >> failed with exit code '1' > >> > >> Did this change have a practical motivation or was just out of > >> esthetic reasons? If it were only the latter, we should revert > >> until our bitbake can resolve the underlying problem. > > > > It does have a practical motivation. Patching with quilt in isar has > > nasty side-effects when debian/ is using quilt as well. > > Using git as patchtool when git is also doing fetch/unpack seems > > like the best solution to that. The patching with quilt gets > > especially nasty if you can not add a quilt patch-patch to just > > deal with the code ... when you find yourself also wanting to patch > > debian/. > > > > I would say that "adjust_git" is to blame here and we need to live > > with that until we version-bump bitbake. In recent bitbake we will > > have > > https://github.com/openembedded/bitbake/commit/6ae6f1865d5e666ebc670f70b7401a7b41648102 > > and will be able to ditch "adjust_git" by simply setting a global > > BB_GIT_NOSHARED for isar. That will also result in much improved > > usability ... since git repos will end up usable insisde/outside > > chroots. > > That reasoning was missing from the commit log, and also the cover > letter declared this patch optional. > > But you can patch debian packages via quilt, though not by do_patch > directly, see various examples in our layers. So the reasoning needs > to be a bit more precises in pointing out that also this approach did > not work (and ideally why). There is long standing RFC mail from me that goes into detail on patching. Long story short ... using quilt when debian uses quilt as well is "problematic". And patching debian/ can not be done with debian-quilt. This is where you end up with "git" as the best patchtool in isar when doing dpkg-gbp. And with salsa dpkg-gbp becomes increasingly interesting as "new-normal". Henning > Jan >