From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from ptx.hi.pengutronix.de ([2001:67c:670:100:1d::c0]) by metis.ext.pengutronix.de with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1l2YkZ-0001Rw-Hl for ptxdist@pengutronix.de; Thu, 21 Jan 2021 13:07:43 +0100 Received: from mol by ptx.hi.pengutronix.de with local (Exim 4.92) (envelope-from ) id 1l2YkZ-0000YQ-7R for ptxdist@pengutronix.de; Thu, 21 Jan 2021 13:07:43 +0100 Date: Thu, 21 Jan 2021 13:07:43 +0100 From: Michael Olbrich Message-ID: <20210121120743.GX2915@pengutronix.de> References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: Subject: Re: [ptxdist] Ptxdist lightweight packaging usecase. List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: ptxdist@pengutronix.de Hi, On Wed, Jan 20, 2021 at 06:39:29PM +0100, Christian Melki wrote: > I'd like to package (docker) a complete ptxdist build environment for a > target platform but as light as possible. Since most application developers > do not care about platform stuff, but still need to build images from time > to time. What exactly do you want to do in the docker? Just create images? Compile selected packages? > So now I have this question: Can I purge build and still produce results? > > If I build a platform and remove src, platform-X/build-target, > platform-X/build-host the actual storage requirements for a docker becomes > _far_ less. All state are kept so I'd want the user to be able to do clean > && compile for his rules. Also I'd like to be able to do a complete go && > images. If a package is done and not rebuilt, then you don't need the corresponding directory in build-target / build-host and packages/. > The major caveat seems to be the sources directory. If I whipe the sources, > ptxdist tries to rebuild stuff, even if there is no file (not changed, > missing) and all states are completed. Get, prepare, compile, install etc. There is a dependency on the source archive. However, it's a "existence only" dependency, so the timestamp of the file does not matter. It should be possible to replace all the source archives with empty files. > Is there a proper way ptxdist can accomodate this usecase? I don't find it > unresonable. There is little point in keeping everything or every user > producing every bit of the result. > Storage requirements is only like 10% of the original. Far easier to keep > complete states of releases as fast checkpoints for minor corrections. I think, with the right tricks this should already be possible. But only if you are very careful. As soon as some dependency triggers a rebuilt then it will break apart with strange errors. And you'll probably need to rebuild most of the BSP. And changing that is quite complex. Michael -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de