From: Uladzimir Bely <ubely@ilbers.de>
To: Jan Kiszka <jan.kiszka@siemens.com>, isar-users@googlegroups.com
Subject: Re: [PATCH v4 03/13] kas: Add mirror selection
Date: Tue, 26 Sep 2023 10:59:47 +0300 [thread overview]
Message-ID: <70a2540801d732a0f0463bcc199c2f474b0e2919.camel@ilbers.de> (raw)
In-Reply-To: <733a44b2-5f56-429a-aa6c-701e74f51cbd@siemens.com>
On Mon, 2023-09-25 at 16:49 +0200, Jan Kiszka wrote:
> On 25.09.23 16:38, Uladzimir Bely wrote:
> > On Mon, 2023-09-25 at 13:34 +0200, Jan Kiszka wrote:
> > > On 22.09.23 11:09, Uladzimir Bely wrote:
> > > > This allows to select better (faster) mirror for Debian and
> > > > Ubuntu
> > > > distributions.
> > > >
> > > > Isar DISTRO_APT_PREMIRRORS is used under the hood.
> > > >
> > > > Signed-off-by: Uladzimir Bely <ubely@ilbers.de>
> > > > ---
> > > > Kconfig | 1 +
> > > > kas/opt/Kconfig | 42
> > > > ++++++++++++++++++++++++++++++++++++++
> > > > kas/opt/mirror-debian.yaml | 10 +++++++++
> > > > kas/opt/mirror-ubuntu.yaml | 10 +++++++++
> > > > 4 files changed, 63 insertions(+)
> > > > create mode 100644 kas/opt/Kconfig
> > > > create mode 100644 kas/opt/mirror-debian.yaml
> > > > create mode 100644 kas/opt/mirror-ubuntu.yaml
> > > >
> > > > diff --git a/Kconfig b/Kconfig
> > > > index 591fe765..a62fbf6c 100644
> > > > --- a/Kconfig
> > > > +++ b/Kconfig
> > > > @@ -16,3 +16,4 @@ config KAS_BUILD_SYSTEM
> > > >
> > > > source "kas/distro/Kconfig"
> > > > source "kas/machine/Kconfig"
> > > > +source "kas/opt/Kconfig"
> > > > diff --git a/kas/opt/Kconfig b/kas/opt/Kconfig
> > > > new file mode 100644
> > > > index 00000000..06a9e3e5
> > > > --- /dev/null
> > > > +++ b/kas/opt/Kconfig
> > > > @@ -0,0 +1,42 @@
> > > > +# This software is a part of ISAR.
> > > > +# Copyright (C) 2023 ilbers GmbH
> > > > +#
> > > > +# Authors:
> > > > +# Uladzimir Bely <ubely@ilbers.de>
> > > > +
> > > > +menu "Mirror selection"
> > > > +
> > > > +config MIRROR_DEBIAN
> > > > + bool "Use specific Debian mirror"
> > > > + depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE ||
> > > > DEBIAN_BOOKWORM
> > > > + help
> > > > + Select better local Debian mirror instead of
> > > > deb.debian.org
> > > > +
> > > > +config MIRROR_DEBIAN_URL
> > > > + string "URL of Debian mirror"
> > > > + default "http://deb.debian.org"
> > > > + depends on MIRROR_DEBIAN
> > > > +
> > > > +config KAS_INCLUDE_MIRROR_DEBIAN
> > > > + string
> > > > + default "kas/opt/mirror-debian.yaml"
> > > > + depends on MIRROR_DEBIAN
> > > > +
> > > > +
> > > > +config MIRROR_UBUNTU
> > > > + bool "Use specific Ubuntu mirror"
> > > > + depends on UBUNTU_FOCAL || UBUNTU_JAMMY
> > > > + help
> > > > + Select better local Ubuntu mirror instead of
> > > > archive.ubuntu.com
> > > > +
> > > > +config MIRROR_UBUNTU_URL
> > > > + string "URL of Ubuntu mirror"
> > > > + default "http://archive.ubuntu.com"
> > > > + depends on MIRROR_UBUNTU
> > > > +
> > > > +config KAS_INCLUDE_MIRROR_UBUNTU
> > > > + string
> > > > + default "kas/opt/mirror-ubuntu.yaml"
> > > > + depends on MIRROR_UBUNTU
> > > > +
> > > > +endmenu
> > >
> > > This menu looks strangely empty when selecting sid[-ports]. Maybe
> > > make
> > > it !depend on that or depend on supported distros?
> > >
> >
> > Do you mean, hide complete menu if sid-ports/raspbian selected?
>
> Yep.
>
> >
> > I also got an idea - not about mirrors, but in general... Maybe,
> > instead of always thinking on dependencies between distro and
> > machine -
> > we could simply replace it with multiconfig selection?
> >
> > E.g., in one menu we could simply list all possible multiconfigs.
> > And,
> > even select several of them for the build simulaneously.
>
> Also possible. Only similar case I'm aware of (for whatever reason):
> https://github.com/siemens/jailhouse-images/blob/master/Kconfig
>
> Jan
>
Send v5 where "mirrors" menu is hidden if non-debian/ubuntu distro
selected.
Regarding multiconfig support.
I've acutally prepared some work-in-progress solution. It allows to
select several "multiconfig" items additionally to what user selected
in "distro" and "machine" menus.
But it currently does not enable required options depending on
distro/machine. E.g., if user selected "ubuntu" as distro, only URLS
related for ubuntu are shown in "mirrors" menu, even if some "debian"
multiconfigs are selected.
Another moment is that supporting multiconfigs makes "distro" and
"machine" menus a bit redundant. We could simply remove them and even
get some benefits from this:
- we should not care about implementing distro/machine dependency logic
in Kconfig - we simply use those multiconfigs we support in Isar
- user can see all possible configurations in one place and they are
not confused by missing hardware targets in the menu (if wrong distro
chosen for now).
So, we have several options:
1. Leave and merge it as is and don't add multiconfigs for now.
2. Add multiconfigs and keep distro/machine and all this dependency
logic in menu.
3. Add multiconfigs as a replacement of distro/machine menus.
For me, the third looks a bit more reasonable.
next prev parent reply other threads:[~2023-09-26 7:59 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-22 9:09 [PATCH v4 00/13] Support building Isar using kas Uladzimir Bely
2023-09-22 9:09 ` [PATCH v4 01/13] kas: Add initial Kconfig support Uladzimir Bely
2023-09-22 9:09 ` [PATCH v4 02/13] kas: Add a local copy of kas-container script Uladzimir Bely
2023-09-22 9:09 ` [PATCH v4 03/13] kas: Add mirror selection Uladzimir Bely
2023-09-25 11:34 ` Jan Kiszka
2023-09-25 14:38 ` Uladzimir Bely
2023-09-25 14:49 ` Jan Kiszka
2023-09-26 7:59 ` Uladzimir Bely [this message]
2023-09-22 9:09 ` [PATCH v4 04/13] kas: Add packages selection Uladzimir Bely
2023-09-22 9:09 ` [PATCH v4 05/13] kas: Add COMPAT_ARCH support Uladzimir Bely
2023-09-22 9:09 ` [PATCH v4 06/13] kas: Add cross compilation mode selection support Uladzimir Bely
2023-09-22 9:09 ` [PATCH v4 07/13] kas: Add ccache option Uladzimir Bely
2023-09-22 9:09 ` [PATCH v4 08/13] kas: Add image type selection Uladzimir Bely
2023-09-22 9:09 ` [PATCH v4 09/13] kas: Add IMAGE_FSTYPES selection Uladzimir Bely
2023-09-22 9:10 ` [PATCH v4 10/13] kas: Support CACHE_DEB_SRC option in menu Uladzimir Bely
2023-09-22 9:10 ` [PATCH v4 11/13] kas: Add options to activate predefined users Uladzimir Bely
2023-09-22 9:10 ` [PATCH v4 12/13] kas: Add kas/README.md Uladzimir Bely
2023-09-22 9:10 ` [PATCH v4 13/13] scripts: Add a script to generate kas yaml configs 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=70a2540801d732a0f0463bcc199c2f474b0e2919.camel@ilbers.de \
--to=ubely@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