public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: "'MOESSBAUER, Felix' via isar-users" <isar-users@googlegroups.com>
To: "isar-users@googlegroups.com" <isar-users@googlegroups.com>
Cc: "Bernecker, Herbert" <herbert.bernecker@siemens.com>,
	"Steiger, Christoph" <christoph.steiger@siemens.com>,
	"jan.kiszka@siemen.com" <jan.kiszka@siemen.com>
Subject: base-apt: Inconsistent priorities between apt-cache and .deb data break offline builds
Date: Tue, 30 Jun 2026 14:24:43 +0000	[thread overview]
Message-ID: <dc035d8963b2c8de6bfa6cbb4bbf62f5fbb9e8ae.camel@siemens.com> (raw)

Dear isar-devs,

we noticed that cross-architecture offline builds are currently broken
and single-architecture offline builds differ from the online
variant. One failure pattern is the following, whereby the offline
isar-mmdebstrap-host fails with an error message like this:

The following packages have unmet dependencies:
 libtext-wrapi18n-perl : Depends: libtext-charwidth-perl but it is not
installable
E: Unable to correct problems, you have held broken packages.
E: The following information from --solver 3.0 may provide additional
context:
   Unable to satisfy dependencies. Reached two conflicting decisions:
   1. libtext-wrapi18n-perl:amd64=0.06-10 is selected for install
   2. libtext-wrapi18n-perl:amd64 Depends libtext-charwidth-perl
      but none of the choices are installable:
      [no choices]

The root cause for this is that we ignore the upstream's repo priority
overrides when creating the base-apt: reprepro includedeb records the
priority from the .deb's own control field, and that becomes the
priority published in base-apt's Packages index.

When these priorities differ, the set of packages installed in offline
mode are different from the ones in online mode. This per-se is plain
wrong, but only surfaces if a now-required arch=all package depends on
its architecture specific variant which never has been fetched (because
the online bootstrap had access to the prio overrides). For non-cross
builds the result is also different, which can be checked by comparing
the SBOMs.

There are HACKY ways to re-create the upstream priorities, but IMHO our
approach for offline builds is problematic and should be changed:
Instead of explicitly recreating the base-apt repo, we better just
preserve the upstream apt lists and inject our downloads/deb dir into
the apt cache that is used by the build. This would allow us to
completely drop the base-apt.

Reproducer:

1. kas-container menu, select qemuarm64 machine, build
2. mv build build-online && mkdir build && cp -rf build-
online/downloads build/
3. kas-container build .config.yaml:offline.yml

offline.yml:
header:
  version: 14
local_conf_header:
  offline: |
    ISAR_USE_CACHED_BASE_REPO = "1"
    BB_NO_NETWORK = "1"

The initial report of this error is by Herbert.

Best regards,
Felix

-- 
Siemens AG
Linux Expert Center
Friedrich-Ludwig-Bauer-Str. 3
85748 Garching, Germany

-- 
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/dc035d8963b2c8de6bfa6cbb4bbf62f5fbb9e8ae.camel%40siemens.com.

             reply	other threads:[~2026-06-30 14:24 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-30 14:24 'MOESSBAUER, Felix' via isar-users [this message]
2026-06-30 15:36 ` Anton Mikanovich
2026-06-30 17:26   ` 'MOESSBAUER, Felix' via isar-users
2026-07-01  7:36     ` Anton Mikanovich
2026-07-01  8:56       ` 'MOESSBAUER, Felix' via isar-users
2026-07-01 12:29         ` Anton Mikanovich

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=dc035d8963b2c8de6bfa6cbb4bbf62f5fbb9e8ae.camel@siemens.com \
    --to=isar-users@googlegroups.com \
    --cc=christoph.steiger@siemens.com \
    --cc=felix.moessbauer@siemens.com \
    --cc=herbert.bernecker@siemens.com \
    --cc=jan.kiszka@siemen.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