mbox series

[0/5] connman: Update for all PACKAGECONFIG options, clean up legacy

Message ID 20250402-connman-v1-0-2e4fbbb7caf9@gmail.com
Headers show
Series connman: Update for all PACKAGECONFIG options, clean up legacy | expand

Message

Alex Kiernan April 2, 2025, 4:02 p.m. UTC
connman has a legacy style, this patch set adds in all the PACKAGECONFIG
options which the upstream pacakge supports, removes patches which are no
longer required, explicitly supports operation alongside systemd-resolved and
reworks the packaging so that PACKAGECONFIG and explicit package selection for
every VPN is no longer required.

Everything up to the final patch should be backward compatible cleanup of the
existing recipe, with only the final patch reworking the packaging.

Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
---
Alex Kiernan (5):
      connman: Merge .inc into .bb
      connman: Delete patches for gold and MIPS binutils fix
      connman: Move ppp from DEPENDS to PACKAGECONFIG
      connman: Add all build options as PACKAGECONFIG
      connman: Rework to avoid splitting into many single binary packages

 meta/recipes-connectivity/connman/connman.inc      | 221 ---------------------
 ...vice-stop-systemd-resolved-when-we-use-co.patch |  26 ---
 ...ange-visibility-to-default-for-debug-symb.patch |  31 ---
 .../connman/connman/no-version-scripts.patch       |  47 -----
 meta/recipes-connectivity/connman/connman_1.44.bb  | 154 +++++++++++++-
 5 files changed, 147 insertions(+), 332 deletions(-)
---
base-commit: 17a75e55017cbf213cf1b63568b4e757240192ff
change-id: 20250331-connman-97d433659424

Best regards,

Comments

Richard Purdie April 2, 2025, 7:33 p.m. UTC | #1
On Wed, 2025-04-02 at 16:02 +0000, Alex Kiernan via lists.openembedded.org wrote:
> connman has a legacy style, this patch set adds in all the PACKAGECONFIG
> options which the upstream pacakge supports, removes patches which are no
> longer required, explicitly supports operation alongside systemd-resolved and
> reworks the packaging so that PACKAGECONFIG and explicit package selection for
> every VPN is no longer required.
> 
> Everything up to the final patch should be backward compatible cleanup of the
> existing recipe, with only the final patch reworking the packaging.
> 
> Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
> ---
> Alex Kiernan (5):
>       connman: Merge .inc into .bb
>       connman: Delete patches for gold and MIPS binutils fix
>       connman: Move ppp from DEPENDS to PACKAGECONFIG
>       connman: Add all build options as PACKAGECONFIG
>       connman: Rework to avoid splitting into many single binary packages
> 
>  meta/recipes-connectivity/connman/connman.inc      | 221 ---------------------
>  ...vice-stop-systemd-resolved-when-we-use-co.patch |  26 ---
>  ...ange-visibility-to-default-for-debug-symb.patch |  31 ---
>  .../connman/connman/no-version-scripts.patch       |  47 -----
>  meta/recipes-connectivity/connman/connman_1.44.bb  | 154 +++++++++++++-
>  5 files changed, 147 insertions(+), 332 deletions(-)

This failed in testing on the first try. I've added:

diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index 03f02d14ae8..c5ddea79005 100644
--- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -6,7 +6,7 @@ LICENSE = "MIT"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
 
 IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-self-hosted \
-                 kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcpcd \
+                 kernel-dev kernel-devsrc connman dhcpcd \
                  tzdata python3-pip perl-misc"
 
 IMAGE_FEATURES += "x11-base package-management splash"


and will see what take 2 looks like.

Cheers,

Richard
Alex Kiernan April 3, 2025, 6:42 a.m. UTC | #2
On Wed, Apr 2, 2025 at 8:33 PM Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
>
> On Wed, 2025-04-02 at 16:02 +0000, Alex Kiernan via lists.openembedded.org wrote:
> > connman has a legacy style, this patch set adds in all the PACKAGECONFIG
> > options which the upstream pacakge supports, removes patches which are no
> > longer required, explicitly supports operation alongside systemd-resolved and
> > reworks the packaging so that PACKAGECONFIG and explicit package selection for
> > every VPN is no longer required.
> >
> > Everything up to the final patch should be backward compatible cleanup of the
> > existing recipe, with only the final patch reworking the packaging.
> >
> > Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
> > ---
> > Alex Kiernan (5):
> >       connman: Merge .inc into .bb
> >       connman: Delete patches for gold and MIPS binutils fix
> >       connman: Move ppp from DEPENDS to PACKAGECONFIG
> >       connman: Add all build options as PACKAGECONFIG
> >       connman: Rework to avoid splitting into many single binary packages
> >
> >  meta/recipes-connectivity/connman/connman.inc      | 221 ---------------------
> >  ...vice-stop-systemd-resolved-when-we-use-co.patch |  26 ---
> >  ...ange-visibility-to-default-for-debug-symb.patch |  31 ---
> >  .../connman/connman/no-version-scripts.patch       |  47 -----
> >  meta/recipes-connectivity/connman/connman_1.44.bb  | 154 +++++++++++++-
> >  5 files changed, 147 insertions(+), 332 deletions(-)
>
> This failed in testing on the first try. I've added:
>
> diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> index 03f02d14ae8..c5ddea79005 100644
> --- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> +++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> @@ -6,7 +6,7 @@ LICENSE = "MIT"
>  LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
>
>  IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-self-hosted \
> -                 kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcpcd \
> +                 kernel-dev kernel-devsrc connman dhcpcd \
>                   tzdata python3-pip perl-misc"
>
>  IMAGE_FEATURES += "x11-base package-management splash"

Is keeping all those RPROVIDES (plus doubtless more at this point)
actually useful? I can see it in the traditional distribution world,
but for OE-Core it feels mostly redundant to me.
Richard Purdie April 3, 2025, 7:36 a.m. UTC | #3
On Thu, 2025-04-03 at 07:42 +0100, Alex Kiernan wrote:
> On Wed, Apr 2, 2025 at 8:33 PM Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > 
> > On Wed, 2025-04-02 at 16:02 +0000, Alex Kiernan via lists.openembedded.org wrote:
> > > connman has a legacy style, this patch set adds in all the PACKAGECONFIG
> > > options which the upstream pacakge supports, removes patches which are no
> > > longer required, explicitly supports operation alongside systemd-resolved and
> > > reworks the packaging so that PACKAGECONFIG and explicit package selection for
> > > every VPN is no longer required.
> > > 
> > > Everything up to the final patch should be backward compatible cleanup of the
> > > existing recipe, with only the final patch reworking the packaging.
> > > 
> > > Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
> > > ---
> > > Alex Kiernan (5):
> > >       connman: Merge .inc into .bb
> > >       connman: Delete patches for gold and MIPS binutils fix
> > >       connman: Move ppp from DEPENDS to PACKAGECONFIG
> > >       connman: Add all build options as PACKAGECONFIG
> > >       connman: Rework to avoid splitting into many single binary packages
> > > 
> > >  meta/recipes-connectivity/connman/connman.inc      | 221 ---------------------
> > >  ...vice-stop-systemd-resolved-when-we-use-co.patch |  26 ---
> > >  ...ange-visibility-to-default-for-debug-symb.patch |  31 ---
> > >  .../connman/connman/no-version-scripts.patch       |  47 -----
> > >  meta/recipes-connectivity/connman/connman_1.44.bb  | 154 +++++++++++++-
> > >  5 files changed, 147 insertions(+), 332 deletions(-)
> > 
> > This failed in testing on the first try. I've added:
> > 
> > diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> > index 03f02d14ae8..c5ddea79005 100644
> > --- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> > +++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> > @@ -6,7 +6,7 @@ LICENSE = "MIT"
> >  LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
> > 
> >  IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-self-hosted \
> > -                 kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcpcd \
> > +                 kernel-dev kernel-devsrc connman dhcpcd \
> >                   tzdata python3-pip perl-misc"
> > 
> >  IMAGE_FEATURES += "x11-base package-management splash"
> 
> Is keeping all those RPROVIDES (plus doubtless more at this point)
> actually useful? I can see it in the traditional distribution world,
> but for OE-Core it feels mostly redundant to me.

Short term, it will help fix people's builds and give some level of
runtime compatibility. Long term, it would be deadweight we carry. I'm
therefore torn.

I did note that meta-agl ran into a similar issue:

https://autobuilder.yoctoproject.org/valkyrie/#/builders/55/builds/1250

With the above tweak and the tweaked nftables, the rest of the build
was ok through.

Cheers,

Richard
Scott Murray April 3, 2025, 4:46 p.m. UTC | #4
On Thu, 3 Apr 2025, Richard Purdie wrote:

> On Thu, 2025-04-03 at 07:42 +0100, Alex Kiernan wrote:
> > On Wed, Apr 2, 2025 at 8:33 PM Richard Purdie
> > <richard.purdie@linuxfoundation.org> wrote:
> > >
> > > On Wed, 2025-04-02 at 16:02 +0000, Alex Kiernan via lists.openembedded.org wrote:
> > > > connman has a legacy style, this patch set adds in all the PACKAGECONFIG
> > > > options which the upstream pacakge supports, removes patches which are no
> > > > longer required, explicitly supports operation alongside systemd-resolved and
> > > > reworks the packaging so that PACKAGECONFIG and explicit package selection for
> > > > every VPN is no longer required.
> > > >
> > > > Everything up to the final patch should be backward compatible cleanup of the
> > > > existing recipe, with only the final patch reworking the packaging.
> > > >
> > > > Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
> > > > ---
> > > > Alex Kiernan (5):
> > > >       connman: Merge .inc into .bb
> > > >       connman: Delete patches for gold and MIPS binutils fix
> > > >       connman: Move ppp from DEPENDS to PACKAGECONFIG
> > > >       connman: Add all build options as PACKAGECONFIG
> > > >       connman: Rework to avoid splitting into many single binary packages
> > > >
> > > >  meta/recipes-connectivity/connman/connman.inc      | 221 ---------------------
> > > >  ...vice-stop-systemd-resolved-when-we-use-co.patch |  26 ---
> > > >  ...ange-visibility-to-default-for-debug-symb.patch |  31 ---
> > > >  .../connman/connman/no-version-scripts.patch       |  47 -----
> > > >  meta/recipes-connectivity/connman/connman_1.44.bb  | 154 +++++++++++++-
> > > >  5 files changed, 147 insertions(+), 332 deletions(-)
> > >
> > > This failed in testing on the first try. I've added:
> > >
> > > diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> > > index 03f02d14ae8..c5ddea79005 100644
> > > --- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> > > +++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> > > @@ -6,7 +6,7 @@ LICENSE = "MIT"
> > >  LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
> > >
> > >  IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-self-hosted \
> > > -                 kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcpcd \
> > > +                 kernel-dev kernel-devsrc connman dhcpcd \
> > >                   tzdata python3-pip perl-misc"
> > >
> > >  IMAGE_FEATURES += "x11-base package-management splash"
> >
> > Is keeping all those RPROVIDES (plus doubtless more at this point)
> > actually useful? I can see it in the traditional distribution world,
> > but for OE-Core it feels mostly redundant to me.
>
> Short term, it will help fix people's builds and give some level of
> runtime compatibility. Long term, it would be deadweight we carry. I'm
> therefore torn.
>
> I did note that meta-agl ran into a similar issue:
>
> https://autobuilder.yoctoproject.org/valkyrie/#/builders/55/builds/1250
>
> With the above tweak and the tweaked nftables, the rest of the build
> was ok through.

If you're leaning towards taking it, we can adapt in AGL, though I can't
guarantee there won't be a brief instance of AB breakage before I push
a change.  Overall, I'm a bit ambivalent about removing the split out
packages.  I understand the desire for simplifying it, but I also see
some benefits to still mirroring what most other distributions do with
networkmanager packaging since there still seems to be some interest in
attempting to do binary packagefeeds...

Cheers,

Scott
Richard Purdie April 3, 2025, 4:52 p.m. UTC | #5
On Thu, 2025-04-03 at 12:46 -0400, Scott Murray wrote:
> On Thu, 3 Apr 2025, Richard Purdie wrote:
> 
> > On Thu, 2025-04-03 at 07:42 +0100, Alex Kiernan wrote:
> > > On Wed, Apr 2, 2025 at 8:33 PM Richard Purdie
> > > <richard.purdie@linuxfoundation.org> wrote:
> > > > 
> > > > On Wed, 2025-04-02 at 16:02 +0000, Alex Kiernan via lists.openembedded.org wrote:
> > > > > connman has a legacy style, this patch set adds in all the PACKAGECONFIG
> > > > > options which the upstream pacakge supports, removes patches which are no
> > > > > longer required, explicitly supports operation alongside systemd-resolved and
> > > > > reworks the packaging so that PACKAGECONFIG and explicit package selection for
> > > > > every VPN is no longer required.
> > > > > 
> > > > > Everything up to the final patch should be backward compatible cleanup of the
> > > > > existing recipe, with only the final patch reworking the packaging.
> > > > > 
> > > > > Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
> > > > > ---
> > > > > Alex Kiernan (5):
> > > > >       connman: Merge .inc into .bb
> > > > >       connman: Delete patches for gold and MIPS binutils fix
> > > > >       connman: Move ppp from DEPENDS to PACKAGECONFIG
> > > > >       connman: Add all build options as PACKAGECONFIG
> > > > >       connman: Rework to avoid splitting into many single binary packages
> > > > > 
> > > > >  meta/recipes-connectivity/connman/connman.inc      | 221 ---------------------
> > > > >  ...vice-stop-systemd-resolved-when-we-use-co.patch |  26 ---
> > > > >  ...ange-visibility-to-default-for-debug-symb.patch |  31 ---
> > > > >  .../connman/connman/no-version-scripts.patch       |  47 -----
> > > > >  meta/recipes-connectivity/connman/connman_1.44.bb  | 154 +++++++++++++-
> > > > >  5 files changed, 147 insertions(+), 332 deletions(-)
> > > > 
> > > > This failed in testing on the first try. I've added:
> > > > 
> > > > diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> > > > index 03f02d14ae8..c5ddea79005 100644
> > > > --- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> > > > +++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> > > > @@ -6,7 +6,7 @@ LICENSE = "MIT"
> > > >  LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
> > > > 
> > > >  IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-self-hosted \
> > > > -                 kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcpcd \
> > > > +                 kernel-dev kernel-devsrc connman dhcpcd \
> > > >                   tzdata python3-pip perl-misc"
> > > > 
> > > >  IMAGE_FEATURES += "x11-base package-management splash"
> > > 
> > > Is keeping all those RPROVIDES (plus doubtless more at this point)
> > > actually useful? I can see it in the traditional distribution world,
> > > but for OE-Core it feels mostly redundant to me.
> > 
> > Short term, it will help fix people's builds and give some level of
> > runtime compatibility. Long term, it would be deadweight we carry. I'm
> > therefore torn.
> > 
> > I did note that meta-agl ran into a similar issue:
> > 
> > https://autobuilder.yoctoproject.org/valkyrie/#/builders/55/builds/1250
> > 
> > With the above tweak and the tweaked nftables, the rest of the build
> > was ok through.
> 
> If you're leaning towards taking it, we can adapt in AGL, though I can't
> guarantee there won't be a brief instance of AB breakage before I push
> a change.  Overall, I'm a bit ambivalent about removing the split out
> packages.  I understand the desire for simplifying it, but I also see
> some benefits to still mirroring what most other distributions do with
> networkmanager packaging since there still seems to be some interest in
> attempting to do binary packagefeeds...

To be honest, I'm torn, I could be persuaded either way. 

I copied more people to collect viewpoionts as well as make them aware
of the potential breakage.

Cheers,

Richard
Adrian Freihofer April 7, 2025, 4:44 p.m. UTC | #6
On Thu, 2025-04-03 at 17:52 +0100, Richard Purdie via
lists.openembedded.org wrote:
> On Thu, 2025-04-03 at 12:46 -0400, Scott Murray wrote:
> > On Thu, 3 Apr 2025, Richard Purdie wrote:
> > 
> > > On Thu, 2025-04-03 at 07:42 +0100, Alex Kiernan wrote:
> > > > On Wed, Apr 2, 2025 at 8:33 PM Richard Purdie
> > > > <richard.purdie@linuxfoundation.org> wrote:
> > > > > 
> > > > > On Wed, 2025-04-02 at 16:02 +0000, Alex Kiernan via
> > > > > lists.openembedded.org wrote:
> > > > > > connman has a legacy style, this patch set adds in all the
> > > > > > PACKAGECONFIG
> > > > > > options which the upstream pacakge supports, removes
> > > > > > patches which are no
> > > > > > longer required, explicitly supports operation alongside
> > > > > > systemd-resolved and
> > > > > > reworks the packaging so that PACKAGECONFIG and explicit
> > > > > > package selection for
> > > > > > every VPN is no longer required.
> > > > > > 
> > > > > > Everything up to the final patch should be backward
> > > > > > compatible cleanup of the
> > > > > > existing recipe, with only the final patch reworking the
> > > > > > packaging.
> > > > > > 
> > > > > > Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
> > > > > > ---
> > > > > > Alex Kiernan (5):
> > > > > >       connman: Merge .inc into .bb
> > > > > >       connman: Delete patches for gold and MIPS binutils
> > > > > > fix
> > > > > >       connman: Move ppp from DEPENDS to PACKAGECONFIG
> > > > > >       connman: Add all build options as PACKAGECONFIG
> > > > > >       connman: Rework to avoid splitting into many single
> > > > > > binary packages
> > > > > > 
> > > > > >  meta/recipes-connectivity/connman/connman.inc      | 221 -
> > > > > > --------------------
> > > > > >  ...vice-stop-systemd-resolved-when-we-use-co.patch |  26 -
> > > > > > --
> > > > > >  ...ange-visibility-to-default-for-debug-symb.patch |  31 -
> > > > > > --
> > > > > >  .../connman/connman/no-version-scripts.patch       |  47 -
> > > > > > ----
> > > > > >  meta/recipes-connectivity/connman/connman_1.44.bb  | 154
> > > > > > +++++++++++++-
> > > > > >  5 files changed, 147 insertions(+), 332 deletions(-)
> > > > > 
> > > > > This failed in testing on the first try. I've added:
> > > > > 
> > > > > diff --git a/meta/recipes-core/images/build-appliance-
> > > > > image_15.0.0.bb b/meta/recipes-core/images/build-appliance-
> > > > > image_15.0.0.bb
> > > > > index 03f02d14ae8..c5ddea79005 100644
> > > > > --- a/meta/recipes-core/images/build-appliance-
> > > > > image_15.0.0.bb
> > > > > +++ b/meta/recipes-core/images/build-appliance-
> > > > > image_15.0.0.bb
> > > > > @@ -6,7 +6,7 @@ LICENSE = "MIT"
> > > > >  LIC_FILES_CHKSUM =
> > > > > "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
> > > > > 361b4de20420"
> > > > > 
> > > > >  IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-
> > > > > ssh-openssh packagegroup-self-hosted \
> > > > > -                 kernel-dev kernel-devsrc connman connman-
> > > > > plugin-ethernet dhcpcd \
> > > > > +                 kernel-dev kernel-devsrc connman dhcpcd \
> > > > >                   tzdata python3-pip perl-misc"
> > > > > 
> > > > >  IMAGE_FEATURES += "x11-base package-management splash"
> > > > 
> > > > Is keeping all those RPROVIDES (plus doubtless more at this
> > > > point)
> > > > actually useful? I can see it in the traditional distribution
> > > > world,
> > > > but for OE-Core it feels mostly redundant to me.
> > > 
> > > Short term, it will help fix people's builds and give some level
> > > of
> > > runtime compatibility. Long term, it would be deadweight we
> > > carry. I'm
> > > therefore torn.
> > > 
> > > I did note that meta-agl ran into a similar issue:
> > > 
> > > https://autobuilder.yoctoproject.org/valkyrie/#/builders/55/builds/1250
> > > 
> > > With the above tweak and the tweaked nftables, the rest of the
> > > build
> > > was ok through.
> > 
> > If you're leaning towards taking it, we can adapt in AGL, though I
> > can't
> > guarantee there won't be a brief instance of AB breakage before I
> > push
> > a change.  Overall, I'm a bit ambivalent about removing the split
> > out
> > packages.  I understand the desire for simplifying it, but I also
> > see
> > some benefits to still mirroring what most other distributions do
> > with
> > networkmanager packaging since there still seems to be some
> > interest in
> > attempting to do binary packagefeeds...
> 
> To be honest, I'm torn, I could be persuaded either way. 
> 
> I copied more people to collect viewpoionts as well as make them
> aware
> of the potential breakage.
> 
> Cheers,
> 
> Richard

I don't use conman, so my opinion is not really relevant here.

But I think that PACKAGECONFIGS are of course the big advantage of
Yocto compared to binary distributions. But one should also not forget
why binary distributions are very successful in many areas: You can
address many different use cases with one distribution without having
to recompile different packages just to put together slightly different
firmware variants. With systemd or NetworkManager, for example, we have
the option of using PACAKGECONFGS as well as splitting it up into small
packages. This is very useful, at least for us, which is why I think
removing package splitting would also be a disadvantage for connman.

Regards,
Adrian

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#214329):
> https://lists.openembedded.org/g/openembedded-core/message/214329
> Mute This Topic: https://lists.openembedded.org/mt/112049312/4454582
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe:
> https://lists.openembedded.org/g/openembedded-core/unsub [
> adrian.freihofer@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Alex Kiernan April 8, 2025, 9:33 a.m. UTC | #7
On Mon, Apr 7, 2025 at 5:44 PM Adrian Freihofer
<adrian.freihofer@gmail.com> wrote:
>
> On Thu, 2025-04-03 at 17:52 +0100, Richard Purdie via
> lists.openembedded.org wrote:
> > On Thu, 2025-04-03 at 12:46 -0400, Scott Murray wrote:
> > > On Thu, 3 Apr 2025, Richard Purdie wrote:
> > >
> > > > On Thu, 2025-04-03 at 07:42 +0100, Alex Kiernan wrote:
> > > > > On Wed, Apr 2, 2025 at 8:33 PM Richard Purdie
> > > > > <richard.purdie@linuxfoundation.org> wrote:
> > > > > >
> > > > > > On Wed, 2025-04-02 at 16:02 +0000, Alex Kiernan via
> > > > > > lists.openembedded.org wrote:
> > > > > > > connman has a legacy style, this patch set adds in all the
> > > > > > > PACKAGECONFIG
> > > > > > > options which the upstream pacakge supports, removes
> > > > > > > patches which are no
> > > > > > > longer required, explicitly supports operation alongside
> > > > > > > systemd-resolved and
> > > > > > > reworks the packaging so that PACKAGECONFIG and explicit
> > > > > > > package selection for
> > > > > > > every VPN is no longer required.
> > > > > > >
> > > > > > > Everything up to the final patch should be backward
> > > > > > > compatible cleanup of the
> > > > > > > existing recipe, with only the final patch reworking the
> > > > > > > packaging.
> > > > > > >
> > > > > > > Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
> > > > > > > ---
> > > > > > > Alex Kiernan (5):
> > > > > > >       connman: Merge .inc into .bb
> > > > > > >       connman: Delete patches for gold and MIPS binutils
> > > > > > > fix
> > > > > > >       connman: Move ppp from DEPENDS to PACKAGECONFIG
> > > > > > >       connman: Add all build options as PACKAGECONFIG
> > > > > > >       connman: Rework to avoid splitting into many single
> > > > > > > binary packages
> > > > > > >
> > > > > > >  meta/recipes-connectivity/connman/connman.inc      | 221 -
> > > > > > > --------------------
> > > > > > >  ...vice-stop-systemd-resolved-when-we-use-co.patch |  26 -
> > > > > > > --
> > > > > > >  ...ange-visibility-to-default-for-debug-symb.patch |  31 -
> > > > > > > --
> > > > > > >  .../connman/connman/no-version-scripts.patch       |  47 -
> > > > > > > ----
> > > > > > >  meta/recipes-connectivity/connman/connman_1.44.bb  | 154
> > > > > > > +++++++++++++-
> > > > > > >  5 files changed, 147 insertions(+), 332 deletions(-)
> > > > > >
> > > > > > This failed in testing on the first try. I've added:
> > > > > >
> > > > > > diff --git a/meta/recipes-core/images/build-appliance-
> > > > > > image_15.0.0.bb b/meta/recipes-core/images/build-appliance-
> > > > > > image_15.0.0.bb
> > > > > > index 03f02d14ae8..c5ddea79005 100644
> > > > > > --- a/meta/recipes-core/images/build-appliance-
> > > > > > image_15.0.0.bb
> > > > > > +++ b/meta/recipes-core/images/build-appliance-
> > > > > > image_15.0.0.bb
> > > > > > @@ -6,7 +6,7 @@ LICENSE = "MIT"
> > > > > >  LIC_FILES_CHKSUM =
> > > > > > "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384
> > > > > > 361b4de20420"
> > > > > >
> > > > > >  IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-
> > > > > > ssh-openssh packagegroup-self-hosted \
> > > > > > -                 kernel-dev kernel-devsrc connman connman-
> > > > > > plugin-ethernet dhcpcd \
> > > > > > +                 kernel-dev kernel-devsrc connman dhcpcd \
> > > > > >                   tzdata python3-pip perl-misc"
> > > > > >
> > > > > >  IMAGE_FEATURES += "x11-base package-management splash"
> > > > >
> > > > > Is keeping all those RPROVIDES (plus doubtless more at this
> > > > > point)
> > > > > actually useful? I can see it in the traditional distribution
> > > > > world,
> > > > > but for OE-Core it feels mostly redundant to me.
> > > >
> > > > Short term, it will help fix people's builds and give some level
> > > > of
> > > > runtime compatibility. Long term, it would be deadweight we
> > > > carry. I'm
> > > > therefore torn.
> > > >
> > > > I did note that meta-agl ran into a similar issue:
> > > >
> > > > https://autobuilder.yoctoproject.org/valkyrie/#/builders/55/builds/1250
> > > >
> > > > With the above tweak and the tweaked nftables, the rest of the
> > > > build
> > > > was ok through.
> > >
> > > If you're leaning towards taking it, we can adapt in AGL, though I
> > > can't
> > > guarantee there won't be a brief instance of AB breakage before I
> > > push
> > > a change.  Overall, I'm a bit ambivalent about removing the split
> > > out
> > > packages.  I understand the desire for simplifying it, but I also
> > > see
> > > some benefits to still mirroring what most other distributions do
> > > with
> > > networkmanager packaging since there still seems to be some
> > > interest in
> > > attempting to do binary packagefeeds...
> >
> > To be honest, I'm torn, I could be persuaded either way.
> >
> > I copied more people to collect viewpoionts as well as make them
> > aware
> > of the potential breakage.
> >
> > Cheers,
> >
> > Richard
>
> I don't use conman, so my opinion is not really relevant here.
>
> But I think that PACKAGECONFIGS are of course the big advantage of
> Yocto compared to binary distributions. But one should also not forget
> why binary distributions are very successful in many areas: You can
> address many different use cases with one distribution without having
> to recompile different packages just to put together slightly different
> firmware variants. With systemd or NetworkManager, for example, we have
> the option of using PACAKGECONFGS as well as splitting it up into small
> packages. This is very useful, at least for us, which is why I think
> removing package splitting would also be a disadvantage for connman.
>

For this case, you literally have to add the PACKAGECONFIG and then
pull the resulting package into the image, the defaults are such that
you end up with a minimal package and no plugins.

But my sense here is that the consensus is to keep the splitting.