From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6547633542169362432 X-Received: by 2002:a19:8e8e:: with SMTP id a14-v6mr519310lfl.15.1525804304588; Tue, 08 May 2018 11:31:44 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a19:5e51:: with SMTP id z17-v6ls177655lfi.12.gmail; Tue, 08 May 2018 11:31:44 -0700 (PDT) X-Google-Smtp-Source: AB8JxZpZ08yZa/AkD4J0MTWc9+gFBkscFfYh3uEUPWVtLLOB04pd/ARrzK54jZm8JNWAy1YWrAsK X-Received: by 2002:a19:e954:: with SMTP id g81-v6mr2399288lfh.31.1525804303982; Tue, 08 May 2018 11:31:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525804303; cv=none; d=google.com; s=arc-20160816; b=oeZrO8BXM2twN7W56JOsUFEBJlW4Y5CBI25yuZtcv+GvPur6tUFPrdOxPREaYRm/r7 ksViJkfyN7cVAdRNh+Dpgy15WinD5YtdPWAkVKUAiLzFlEELmXO1FTw2xC23DLYaiDFH KPFQn1ZyFOCz0QKb3YD1+PJ4cQkJMt5Mi9ZJSMW1VHvZDMH14ao+UGJIsqqyyV+vhc21 tYsV8bG9w2beASHF1Jk/GJAwS9XBzCGaRUtyygcMhzEfiPejwvkkZJsmVLXMT0Ni4X3p +ASr6gZq//E+9d5ONd/qiIWzg/Si5Uz+LrhNlte0WQpHznW+9rZoUxFfcRQUaBzEg/N7 FKjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:subject:user-agent :references:in-reply-to:message-id:date:cc:to:from :arc-authentication-results; bh=V3NJd41oWsPgTQ6V6jMCp4Q9ZqqrUhYVJILiO6Dvjvg=; b=KrYmWWqhH+uPblytRlCcXVRQLPOiN5IIgeMWiMAsVjCPzIx34lnavVq7F/i/7HlY5L DBmNoS4BEwxsuvJa9Phc2tZLOSfDdnRoWtfX7iOlxPXH9eCLIosI+t+xrLCbtiUy/ZGg 61C5IXgPFsRdezQ22XhEqG50c44zRKSPguEnZuE3MJTroCVT0y/tnxFSWXlYDGTihSDO iQ56MXdUZGdPh40Wz99dpQ7sSohzB5bJGDhsICC0I6qqfcv+Ni4KWoKlj2X3O8EbLn+I GUgnyfhEKWEuUFgggRBfuegAFvG5stJ78EZSDJFoeRmIjx4cc37eY+gHrOVky1bsv76H 2ZBA== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: best guess record for domain of asmirnov@ilbers.de designates 85.214.62.211 as permitted sender) smtp.mailfrom=asmirnov@ilbers.de Return-Path: Received: from aqmola.ilbers.de (aqmola.ilbers.de. [85.214.62.211]) by gmr-mx.google.com with ESMTPS id i26-v6si498100ljj.2.2018.05.08.11.31.43 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 08 May 2018 11:31:43 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of asmirnov@ilbers.de designates 85.214.62.211 as permitted sender) client-ip=85.214.62.211; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: best guess record for domain of asmirnov@ilbers.de designates 85.214.62.211 as permitted sender) smtp.mailfrom=asmirnov@ilbers.de Received: from [192.168.1.235] ([188.227.110.165]) (authenticated bits=0) by aqmola.ilbers.de (8.14.4/8.14.4/Debian-4+deb7u1) with ESMTP id w48IVe3w025133; Tue, 8 May 2018 20:31:42 +0200 From: Alexander Smirnov To: Henning Schild CC: Date: Tue, 08 May 2018 21:31:46 +0300 Message-ID: <16341060e50.27ac.034a6b0541ed39b7fb4e17f4ac219eaa@ilbers.de> In-Reply-To: <20180508193758.2a3f63c3@md1pvb1c.ad001.siemens.net> References: <20180423132146.14743-1-asmirnov@ilbers.de> <20180508193758.2a3f63c3@md1pvb1c.ad001.siemens.net> User-Agent: AquaMail/1.15.0-916 (build: 101500003) Subject: Re: [RFC][PATCH 0/3] Experiments with .dsc backend MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="us-ascii" Content-Transfer-Encoding: 8bit X-TUID: 0mGTTX4gBs3n Hi Henning, > Today i wrote a recipe to apply a patch on openssl and something like > that could have been useful. But in fact most of the recipe is the > customization i need to do before build, and i think this series is > missing such a hook-in place. > > So you fetch to orig.tar.gz and the debian and now you patch/modify the > code and debian stuff in dpkg_runbuild_prepend() and prepend a new > changelog entry. > > Having .dsc support would have saved one entry in SRC_URI. So just > having done that i do not see too much value in having that, but maybe > i missed something. As I wrote, the goal of this series was to show, how bitbake could handle foreign-format scripts (in this case Debian). It's not for merge. General goal is to have possibility to partially re-build Debian. Creating complete recipe for Debian package is duplication. All the information like: SRC_URI, PV, DEPENDS, MD5 is already available in Debian apt, so what is the value to duplicate it? This could be an option if you need to rebuild one-two packages. But if there are tens of packages to rebuild, for example, you want to switch from 'perl' to 'microperl'. For me this looks like unnecessary maintaining of excessive information. AFAIK this is the key problem in 'meta-debian' project. Another aspect is Debian package build dependencies from 'debian/control' file. Now we have to explicitely duplicate deps between recipes in DEPENDS variable inside recipe. So, if I could fetch package in anonymous task, then I could also parse its 'debian/control', then I'm able to get list of deps and in theory initialize DEPENDS variable in recipe. In this case I'll be free from maintaining these deps chains for case with lots of packages. Alex > > > Henning > > Am Mon, 23 Apr 2018 16:21:43 +0300 > schrieb Alexander Smirnov : > >> Hi everybody, >> >> as it was planned initially, one of the Isar feature is the ability to >> rebuild original Debian packages with/without customizations. Doing >> this manually in classical Yocto/OE style requires manual setting of >> lots of variables and having a copy of Debian patch (*.debian.tar.xz) >> for this package in your recipe's folder. Maintenance of this system >> becomes very complicated. >> >> I performed a small research regarding bitbake capabilities and found >> an interesting trick: during bitbake parsing stage (in anonymous >> tasks) we could re-construct whole recipe (including tasks and >> variable), and this snapshot will be stored in recipe's dynamic >> context, that is used during pipeline execution. >> >> This series is just a PoC, lots of issues are still open, like: >> - Patching upstream packages >> - Automatic cross-recipe dependency detection to avoid duplications >> in recipe and debian/control files >> - etc... >> >> To test this series just run: >> >> $ bitbake hello >> >> After build, in hello workdir there will be a newly-baked identical >> copy of upstream package :-) >> >> Feedbacks, ideas, proposals are welcome! >> >> With best regards, >> Alex >> >> Alexander Smirnov (3): >> buildchroot: Include texinfo to base system >> classes/dsc: Basic Debian .dsc backend implementation >> recipes-debian: Add example recipe to test Debian .dsc support >> >> meta-isar/recipes-debian/hello/hello.bb | 10 ++ >> meta/classes/debian-dsc.bbclass | 112 >> +++++++++++++++++++++++ >> meta/recipes-devtools/buildchroot/buildchroot.bb | 3 +- 3 files >> changed, 124 insertions(+), 1 deletion(-) create mode 100644 >> meta-isar/recipes-debian/hello/hello.bb create mode 100644 >> meta/classes/debian-dsc.bbclass