Hi Alex, On Wed, 2017-10-04 at 17:29 +0300, Alexander Smirnov wrote: > On 10/04/2017 02:57 PM, Jan Kiszka wrote: > > On 2017-10-04 10:32, [ext] Claudius Heine wrote: > > > Hi, > > > > > > On 10/0 '2/2017 05:45 PM, Alexander Smirnov wrote: > > > > Hello everybody, > > > > > > > > this series introduces basic binary caching for Isar. > > > > > > > > There is a new layer: meta-isar-bin which is intended to be the > > > > binary > > > > cache. All the packages that are built in Isar are stored in > > > > this > > > > cache using reprepro. > > > > > > > > Having the separate layer makes possible to manage this cache > > > > separately > > > > from the Isar build tree. So once you have built your packages, > > > > you could > > > > re-use this cache for further builds. > > > > > > We still have to talk about your requirement for the cache to be > > > sharable and your resulting implementation of it as a meta layer. > > > > > > Since I still don't see the benefit of a sharable cache and think > > > that > > > putting binary packages into some kind of strange meta layer is > > > not the > > > right solution and could potentially create more problems that is > > > solves > > > because its very much in conflict with the fundamental idea of a > > > meta > > > layer. > > The last statement is a bit strange for me. The idea of meta layers > is > to split software stack into logical layers that could be > enabled/disabled on demand. Having binaries or recipes doesn't > matter > here, it's just the way how software is provided to build. > > > > > Indeed, state like this (disclaimer: i didn't look into all > > details), it > > sounds like a weird architecture to me as well. Thinking of an > > artifact > > cache, I would rather expect something like OE's sstate that one > > may > > preserve across builds, share between devs, or whatever. If it's > > there, > > the build system consults it, if not, it rebuilds. But sstate is > > not a > > layer, for some good reasons. > > > > Let me again summarize major points here. Isar is the build system > designed to work with binary packages. That's the key feature of > this > product and main difference from OE-like systems. The Isar > architecture > assumes to be designed around binary packages, what provides > absolutely > different approach how binary images could be generated using > bitbake. > > According to the Claudius's vision, that everything should always be > built from sources - Isar is not the best option here, Yocto and OE > are > much better, because they were initially designed for this work. > Attempts to apply OE design and philosophy to Isar could have > negative > impact and limit possible ways to implement custom features, because > OE > wasn't designed for this features. > Also I wonder why we are able to use binary Debian packages, while > the > rest of software should be built from sources. You are still not understanding me. I never said you have to build every package from source code in isar. Instead I mean that you have to build the root filesystem / images / packages ... ( every output of isar) from all the available input of isar (upstream debian repositories, meta-layers, source code repositories, etc.). If you create intermediate products in the form of caches, then that is ok. But if you put those intermediate products into repositories and begin to distribute them, then this causes problems as I described before. Distributing intermediate products is always a bad idea and systems should not be designed with this in mind or even advertise it. That has nothing to do with 'OE' or 'Debian' or any other System, its just general software developing and maintenance rules. It is ok to to this occasionally on a case by case basis, but it should not be a requirement or even an advertised feature. > ... In the rest of your email or this thread I still don't see any reason why sharing caches is necessary. Building the output from the input is fine once to fill the caches. Just to be sure that you are in fact able to build the output from the input. And I don't get why this is bad in your opinion. I get that we can trust that Debian can build their packages from their sources, so we don't need to test that, but at least test if we can still build our own packages in isar. Claudius -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-54 Fax: (+49)-8142-66989-80 Email: ch@denx.de PGP key: 6FF2 E59F 00C6 BC28 31D8 64C1 1173 CB19 9808 B153 Keyserver: hkp://pool.sks-keyservers.net