public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: Uladzimir Bely <ubely@ilbers.de>
To: isar-users@googlegroups.com
Subject: [PATCH v3 0/5] Improving base-apt usage PoC
Date: Fri, 25 Mar 2022 11:32:21 +0100	[thread overview]
Message-ID: <20220325103226.27033-1-ubely@ilbers.de> (raw)

Currently, base-apt is used in the following way:
* At first build every deb file that took part in installing is cached
in directory $DL_DIR/deb/. Debootstrap is done from remote source.
* At second build, `base-apt` repo is created from previously downloaded
debs (if ISAR_USE_CACHED_BASE_REPO is set). Debootstrap and installing
packages later is done from this local repo

The idea of this patchset is to precreate `base-apt` at first build and
use it later for all steps that require any package downloads (build
dependencies. rootfs populate, etc). So, no second build is required
to get ready-to-use base-apt.

Currently, only native builds are supported. Architecture related
dependencies predownloading is not yet ready, so cross-builds are not
working at the moment.

In the future, there are plans to switch from debootstrap to mmdebstrap
that is able to work without sudo and uses more clean (apt/python-apt)
approach in comparison with debootstrap.

Changes since v2:
 - populate base-apt before using at all steps of native build.

Changes since v1:
 - rebased on latest next;
 - updated patchset description.

Uladzimir Bely (5):
  Add debrepo python script handling base-apt
  meta: Use cached base-apt repo to debootstrap
  meta: always use base-apt repo in local mode
  base-apt: Predownload packages to base-apt before install.
  draft: make isar-apt repo visible for base-apt

 meta-isar/conf/distro/ubuntu-focal.conf       |   4 +
 meta-isar/conf/distro/ubuntu.public.key       |  53 +++
 meta/classes/buildchroot.bbclass              |  10 +-
 meta/classes/dpkg-base.bbclass                |   8 +
 meta/classes/dpkg-gbp.bbclass                 |   7 +
 meta/classes/dpkg.bbclass                     |   7 +
 meta/classes/image-locales-extension.bbclass  |   7 +
 meta/classes/image-tools-extension.bbclass    |   7 +
 meta/classes/rootfs.bbclass                   |  30 +-
 .../isar-bootstrap/isar-bootstrap.inc         |  59 ++-
 scripts/debrepo                               | 363 ++++++++++++++++++
 11 files changed, 526 insertions(+), 29 deletions(-)
 create mode 100644 meta-isar/conf/distro/ubuntu.public.key
 create mode 100755 scripts/debrepo

-- 
2.20.1


             reply	other threads:[~2022-03-25 10:32 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-25 10:32 Uladzimir Bely [this message]
2022-03-25 10:32 ` [PATCH v3 1/5] Add debrepo python script handling base-apt Uladzimir Bely
2022-03-25 10:32 ` [PATCH v3 2/5] meta: Use cached base-apt repo to debootstrap Uladzimir Bely
2022-03-25 10:32 ` [PATCH v3 3/5] meta: always use base-apt repo in local mode Uladzimir Bely
2022-03-25 10:32 ` [PATCH v3 4/5] base-apt: Predownload packages to base-apt before install Uladzimir Bely
2022-03-30 13:41   ` Moessbauer, Felix
2022-03-25 10:32 ` [PATCH v3 5/5] draft: make isar-apt repo visible for base-apt Uladzimir Bely

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=20220325103226.27033-1-ubely@ilbers.de \
    --to=ubely@ilbers.de \
    --cc=isar-users@googlegroups.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