From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6920502129401528320 X-Received: by 2002:a2e:a4a7:: with SMTP id g7mr154943ljm.330.1628709352570; Wed, 11 Aug 2021 12:15:52 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a2e:b5c8:: with SMTP id g8ls605572ljn.6.gmail; Wed, 11 Aug 2021 12:15:51 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyXgHt6/GPywtHC7NKAHO2s68BalV9biIlE5Vr+ilf4TXCm4CB04v1+UpVUAFXGeNs4ZrIV X-Received: by 2002:a2e:900c:: with SMTP id h12mr150300ljg.240.1628709351181; Wed, 11 Aug 2021 12:15:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1628709351; cv=none; d=google.com; s=arc-20160816; b=JrFdK7h5u/go+VnwyD/Gc9hLl5urUTSplLBGOfY874Z7UZ+Zv4bjkf0XBih04TXPBq hJoG+ZNM/dpXfky40Jzx89y1iuY9fGnFSSzWgAftBgqLFlDmtuRkSULkdpd1QejG52k5 +XfizvPGHy1DNLKZ+26KClcpprfhHPPhvuHwWvinRdvF/GybZcDoUqEoTEzTZW1SZ6GO sregz9coW7hyjb6yj3LkrdV8UvqotBAEfd/YCDy9KFxwRs8SAY7C/80yKA+HEFgpggNl WNhjoa6bchiEl/zTE3e4IpcI2d+zfTXpeeZXJeEr9B1cxF1iUS68bwZ8oadZ+jtL3wml KmKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:content-language:in-reply-to:mime-version :user-agent:date:message-id:from:references:cc:to:subject; bh=m6/rJpyQbUXnBFUQhkJKQnxXCxnEVPLAXyRr8+95S+A=; b=QxlmdMe+zsvAsyab3J0PGXVldsFG51h8XvQzjZB/UAHHr8OKBVrxxP1Ylwk+ziyaxs H5ZjX1OnjdlCKjdbYZmN3yoo6eTncW0aLd3QCL/xyg7AWg6QjES+CBbpEcQbzHAD3h3y D6PBGyTnoumsDS62jA6s4B2IcI45LWUseVkybd4Wy9+foPRscwYCsrOixXywwN2s67Pm QMglJoCvqd0nNQGpMUeT0TVmQBdI9Qz0gOkbEDFvdJsfW+Dsf8kRgWIhn3VLh55OhVKZ yYbWCO3c2dtPzLTE5v4LnAH7i3UH7zyLVQAB/dgObDaGd4gVt3fl+NHNpstxRqjOcTLs HI9A== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=jan.kiszka@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 f25si17615ljp.5.2021.08.11.12.15.51 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 11 Aug 2021 12:15:51 -0700 (PDT) Received-SPF: pass (google.com: domain of jan.kiszka@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 jan.kiszka@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=jan.kiszka@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 17BJFog2006359 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Wed, 11 Aug 2021 21:15:50 +0200 Received: from [167.87.241.87] ([167.87.241.87]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id 17BJFnla006205; Wed, 11 Aug 2021 21:15:50 +0200 Subject: Re: [PATCH 3/3] dpkg-gbp: default to "git" patching To: Henning Schild Cc: isar-users 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> <20210811204431.657d7888@md1za8fc.ad001.siemens.net> From: Jan Kiszka Message-ID: <9cca8daa-595e-7cd5-8886-903e04574491@siemens.com> Date: Wed, 11 Aug 2021 21:15:49 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.12.0 MIME-Version: 1.0 In-Reply-To: <20210811204431.657d7888@md1za8fc.ad001.siemens.net> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-TUID: SA8l4Wvk/YlQ On 11.08.21 20:44, Henning Schild wrote: > Am Wed, 11 Aug 2021 20:36:49 +0200 > schrieb Henning Schild : > >> 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. > > Doing BB_GIT_NOSHARED=1 in general and dropping "adjust_git" is not > something i have tested. But i am almost sure it will work. > It will have an impact on performance and disk-usage. > > If a layer wanted to early-adopt ... it would be cherry-picking that > bitbake commit into isar, setting that variable global and dropping > "adjust_git". > That's not a layer topic, that's an Isar topic if that feature is so important. If the patch is upstream in master, pick it on top of our release and do the refactorings. That's better then fighting adjust_git by randomly breaking it. Jan -- Siemens AG, T RDA IOT Corporate Competence Center Embedded Linux