From: Alexander Smirnov <asmirnov@ilbers.de>
To: Jan Kiszka <jan.kiszka@siemens.com>,
isar-users <isar-users@googlegroups.com>
Subject: Re: Minimizing isar-image-base
Date: Tue, 21 Aug 2018 22:36:47 +0300 [thread overview]
Message-ID: <aae8703b-c573-e1f8-e6a1-32a95ad4961e@ilbers.de> (raw)
In-Reply-To: <0228b199-d672-6610-0180-c8a84542366c@siemens.com>
Hi Jan,
On 20.08.2018 10:22, Jan Kiszka wrote:
> Hi all,
>
> a couple of questions on what we pre-install into the de-facto standard
> base image for everything that builds on Isar:
>
> - Why do we pre-install init, but only for >= stretch?
>
IIRC, for jessie and wheezy, the list of pre-installed packages was
created based on attempt to boot the board. So it's just a result of
experiment, no references to official Debian sources.
> - Why do we pre-install dbus?
>
Again, IIRC, without dbus there was dirty boot log in QEMU, some
services failed to start.
> - Can we make apt optional? Installing it as transient package by
> default, e.g. What would happen if a downstream image then puts it
> into PREINSTALL again? Should we filter IMAGE_TRANSIENT_PACKAGES
> against IMAGE_PREINSTALL?
I could suppose how apt went to isar-image-base recipe, initially it was
a copy of buildchroot one. So nobody actually cares about the list of
packages, there was only one requirement - no error and warnings during
image boot in QEMU.
In buildchroot apt is needed to populate the dependencies.
With current Isar implementation the apt is a must package for image.
Let me explain why. Below is the whole chain to generate image:
1. At first, isar-debootstrap is called. This recipe fetches minimal
*pure* Debian suite for specified architecture. It's stored in
tmp/deploy folder.
2. Image generation is started from copying this pre-fetched suite to
work folder.
3. Then you chroot to this *pure* minimal suite.
4. And finally all the additional packages in pre-install list are
installed via apt-get.
So, the only way for current architecture - remove apt in post-build task.
Hope this a bit clarifies your questions.
>
> Alternatively, we could define some isar-image-tiny that removes
> packages from the base image, possibly also some that debootstrap pulls in.
>
> Ideas, suggestions?
>
I'd support you with this idea. For example sometimes I really need
minimal QEMU image with just console, let's say 10-20MB of disk space
and 2-3 minutes to build it.
But my proposal will be to start from requirements - which packages
should go to tiny image and why. Otherwise we will have the same
questions as above in 1-2 years :-)
Alex
next prev parent reply other threads:[~2018-08-21 19:36 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-08-20 7:22 Jan Kiszka
2018-08-20 7:24 ` Jan Kiszka
2018-08-21 19:36 ` Alexander Smirnov [this message]
2018-08-22 14:37 ` Jan Kiszka
2018-08-22 19:52 ` Jan Kiszka
2018-08-22 20:43 ` Alexander Smirnov
2018-08-23 6:29 ` Christian Storm
2018-08-28 13:45 ` Jan Kiszka
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aae8703b-c573-e1f8-e6a1-32a95ad4961e@ilbers.de \
--to=asmirnov@ilbers.de \
--cc=isar-users@googlegroups.com \
--cc=jan.kiszka@siemens.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox