diff mbox series

[1/2] package_manager: ipk: add OPKG_MAKE_INDEX_EXTRA_PARAMS variable

Message ID 20240202132434.1787053-1-martin.jansa@gmail.com
State Accepted, archived
Commit 6dc772fd9d5c2d90a6e32cfa4bc46ca0221f1b7f
Headers show
Series [1/2] package_manager: ipk: add OPKG_MAKE_INDEX_EXTRA_PARAMS variable | expand

Commit Message

Martin Jansa Feb. 2, 2024, 1:24 p.m. UTC
* can be used to pass e.g. -f param to preserve user-defined fields
  in the index as added in:
  https://git.yoctoproject.org/opkg-utils/commit/opkg-make-index?id=13f6281d24e17199e0fef6c2984419372ea0f86f

* otherwise it will show a lot of messages like:
  "Lost field Author <value>"
  for every package in the feed

Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
---
 meta/lib/oe/package_manager/ipk/__init__.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

Comments

Alex Stewart Feb. 2, 2024, 3:40 p.m. UTC | #1
ACK from me.

It's a little strange that we wouldn't just have a 
PACKAGE_FEED_PRESERVE_USER_FIELDS variable. But I understand that 
wouldn't work as well for how the RPM version of this parameter is defined.

On 2/2/24 08:24, Martin Jansa via lists.openembedded.org wrote:
> * can be used to pass e.g. -f param to preserve user-defined fields
>    in the index as added in:
>    https://git.yoctoproject.org/opkg-utils/commit/opkg-make-index?id=13f6281d24e17199e0fef6c2984419372ea0f86f
>
> * otherwise it will show a lot of messages like:
>    "Lost field Author <value>"
>    for every package in the feed
>
> Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
> ---
>   meta/lib/oe/package_manager/ipk/__init__.py | 5 +++--
>   1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/meta/lib/oe/package_manager/ipk/__init__.py b/meta/lib/oe/package_manager/ipk/__init__.py
> index 8fcbad56aa..c35c90ce42 100644
> --- a/meta/lib/oe/package_manager/ipk/__init__.py
> +++ b/meta/lib/oe/package_manager/ipk/__init__.py
> @@ -16,6 +16,7 @@ class OpkgIndexer(Indexer):
>                        ]
>   
>           opkg_index_cmd = bb.utils.which(os.getenv('PATH'), "opkg-make-index")
> +        opkg_index_cmd_extra_params = self.d.getVar('OPKG_MAKE_INDEX_EXTRA_PARAMS')
>           if self.d.getVar('PACKAGE_FEED_SIGN') == '1':
>               signer = get_signer(self.d, self.d.getVar('PACKAGE_FEED_GPG_BACKEND'))
>           else:
> @@ -41,8 +42,8 @@ class OpkgIndexer(Indexer):
>                   if not os.path.exists(pkgs_file):
>                       open(pkgs_file, "w").close()
>   
> -                index_cmds.add('%s --checksum md5 --checksum sha256 -r %s -p %s -m %s' %
> -                                  (opkg_index_cmd, pkgs_file, pkgs_file, pkgs_dir))
> +                index_cmds.add('%s --checksum md5 --checksum sha256 -r %s -p %s -m %s %s' %
> +                                  (opkg_index_cmd, pkgs_file, pkgs_file, pkgs_dir, opkg_index_cmd_extra_params))
>   
>                   index_sign_files.add(pkgs_file)
>   
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#194795): https://lists.openembedded.org/g/openembedded-core/message/194795
> Mute This Topic: https://lists.openembedded.org/mt/104118971/3616788
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.stewart@ni.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Martin Jansa Feb. 2, 2024, 4:06 p.m. UTC | #2
Alex: thanks for review

I'll send v2 shortly, because now while testing without this variable set
at all it fails with:
opkg-make-index: error: unrecognized arguments: None
so will add weak assignment to empty before the use.

On Fri, Feb 2, 2024 at 4:40 PM Alex Stewart <alex.stewart@ni.com> wrote:

> ACK from me.
>
> It's a little strange that we wouldn't just have a
> PACKAGE_FEED_PRESERVE_USER_FIELDS variable. But I understand that
> wouldn't work as well for how the RPM version of this parameter is defined.
>
> On 2/2/24 08:24, Martin Jansa via lists.openembedded.org wrote:
> > * can be used to pass e.g. -f param to preserve user-defined fields
> >    in the index as added in:
> >
> https://git.yoctoproject.org/opkg-utils/commit/opkg-make-index?id=13f6281d24e17199e0fef6c2984419372ea0f86f
> >
> > * otherwise it will show a lot of messages like:
> >    "Lost field Author <value>"
> >    for every package in the feed
> >
> > Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
> > ---
> >   meta/lib/oe/package_manager/ipk/__init__.py | 5 +++--
> >   1 file changed, 3 insertions(+), 2 deletions(-)
> >
> > diff --git a/meta/lib/oe/package_manager/ipk/__init__.py
> b/meta/lib/oe/package_manager/ipk/__init__.py
> > index 8fcbad56aa..c35c90ce42 100644
> > --- a/meta/lib/oe/package_manager/ipk/__init__.py
> > +++ b/meta/lib/oe/package_manager/ipk/__init__.py
> > @@ -16,6 +16,7 @@ class OpkgIndexer(Indexer):
> >                        ]
> >
> >           opkg_index_cmd = bb.utils.which(os.getenv('PATH'),
> "opkg-make-index")
> > +        opkg_index_cmd_extra_params =
> self.d.getVar('OPKG_MAKE_INDEX_EXTRA_PARAMS')
> >           if self.d.getVar('PACKAGE_FEED_SIGN') == '1':
> >               signer = get_signer(self.d,
> self.d.getVar('PACKAGE_FEED_GPG_BACKEND'))
> >           else:
> > @@ -41,8 +42,8 @@ class OpkgIndexer(Indexer):
> >                   if not os.path.exists(pkgs_file):
> >                       open(pkgs_file, "w").close()
> >
> > -                index_cmds.add('%s --checksum md5 --checksum sha256 -r
> %s -p %s -m %s' %
> > -                                  (opkg_index_cmd, pkgs_file,
> pkgs_file, pkgs_dir))
> > +                index_cmds.add('%s --checksum md5 --checksum sha256 -r
> %s -p %s -m %s %s' %
> > +                                  (opkg_index_cmd, pkgs_file,
> pkgs_file, pkgs_dir, opkg_index_cmd_extra_params))
> >
> >                   index_sign_files.add(pkgs_file)
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#194795):
> https://lists.openembedded.org/g/openembedded-core/message/194795
> > Mute This Topic: https://lists.openembedded.org/mt/104118971/3616788
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> alex.stewart@ni.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
>
> --
> Alex Stewart
> Software Engineer - NI Real-Time OS
> NI (National Instruments)
>
> alex.stewart@ni.com
>
>
Alexandre Belloni Feb. 2, 2024, 11:17 p.m. UTC | #3
On 02/02/2024 17:06:12+0100, Martin Jansa wrote:
> Alex: thanks for review
> 
> I'll send v2 shortly, because now while testing without this variable set
> at all it fails with:
> opkg-make-index: error: unrecognized arguments: None
> so will add weak assignment to empty before the use.

Yes, I just hit that one too..

> 
> On Fri, Feb 2, 2024 at 4:40 PM Alex Stewart <alex.stewart@ni.com> wrote:
> 
> > ACK from me.
> >
> > It's a little strange that we wouldn't just have a
> > PACKAGE_FEED_PRESERVE_USER_FIELDS variable. But I understand that
> > wouldn't work as well for how the RPM version of this parameter is defined.
> >
> > On 2/2/24 08:24, Martin Jansa via lists.openembedded.org wrote:
> > > * can be used to pass e.g. -f param to preserve user-defined fields
> > >    in the index as added in:
> > >
> > https://git.yoctoproject.org/opkg-utils/commit/opkg-make-index?id=13f6281d24e17199e0fef6c2984419372ea0f86f
> > >
> > > * otherwise it will show a lot of messages like:
> > >    "Lost field Author <value>"
> > >    for every package in the feed
> > >
> > > Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
> > > ---
> > >   meta/lib/oe/package_manager/ipk/__init__.py | 5 +++--
> > >   1 file changed, 3 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/meta/lib/oe/package_manager/ipk/__init__.py
> > b/meta/lib/oe/package_manager/ipk/__init__.py
> > > index 8fcbad56aa..c35c90ce42 100644
> > > --- a/meta/lib/oe/package_manager/ipk/__init__.py
> > > +++ b/meta/lib/oe/package_manager/ipk/__init__.py
> > > @@ -16,6 +16,7 @@ class OpkgIndexer(Indexer):
> > >                        ]
> > >
> > >           opkg_index_cmd = bb.utils.which(os.getenv('PATH'),
> > "opkg-make-index")
> > > +        opkg_index_cmd_extra_params =
> > self.d.getVar('OPKG_MAKE_INDEX_EXTRA_PARAMS')
> > >           if self.d.getVar('PACKAGE_FEED_SIGN') == '1':
> > >               signer = get_signer(self.d,
> > self.d.getVar('PACKAGE_FEED_GPG_BACKEND'))
> > >           else:
> > > @@ -41,8 +42,8 @@ class OpkgIndexer(Indexer):
> > >                   if not os.path.exists(pkgs_file):
> > >                       open(pkgs_file, "w").close()
> > >
> > > -                index_cmds.add('%s --checksum md5 --checksum sha256 -r
> > %s -p %s -m %s' %
> > > -                                  (opkg_index_cmd, pkgs_file,
> > pkgs_file, pkgs_dir))
> > > +                index_cmds.add('%s --checksum md5 --checksum sha256 -r
> > %s -p %s -m %s %s' %
> > > +                                  (opkg_index_cmd, pkgs_file,
> > pkgs_file, pkgs_dir, opkg_index_cmd_extra_params))
> > >
> > >                   index_sign_files.add(pkgs_file)
> > >
> > >
> > > 
> > >
> >
> > --
> > Alex Stewart
> > Software Engineer - NI Real-Time OS
> > NI (National Instruments)
> >
> > alex.stewart@ni.com
> >
> >

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#194806): https://lists.openembedded.org/g/openembedded-core/message/194806
> Mute This Topic: https://lists.openembedded.org/mt/104118971/3617179
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alexandre.belloni@bootlin.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
diff mbox series

Patch

diff --git a/meta/lib/oe/package_manager/ipk/__init__.py b/meta/lib/oe/package_manager/ipk/__init__.py
index 8fcbad56aa..c35c90ce42 100644
--- a/meta/lib/oe/package_manager/ipk/__init__.py
+++ b/meta/lib/oe/package_manager/ipk/__init__.py
@@ -16,6 +16,7 @@  class OpkgIndexer(Indexer):
                      ]
 
         opkg_index_cmd = bb.utils.which(os.getenv('PATH'), "opkg-make-index")
+        opkg_index_cmd_extra_params = self.d.getVar('OPKG_MAKE_INDEX_EXTRA_PARAMS')
         if self.d.getVar('PACKAGE_FEED_SIGN') == '1':
             signer = get_signer(self.d, self.d.getVar('PACKAGE_FEED_GPG_BACKEND'))
         else:
@@ -41,8 +42,8 @@  class OpkgIndexer(Indexer):
                 if not os.path.exists(pkgs_file):
                     open(pkgs_file, "w").close()
 
-                index_cmds.add('%s --checksum md5 --checksum sha256 -r %s -p %s -m %s' %
-                                  (opkg_index_cmd, pkgs_file, pkgs_file, pkgs_dir))
+                index_cmds.add('%s --checksum md5 --checksum sha256 -r %s -p %s -m %s %s' %
+                                  (opkg_index_cmd, pkgs_file, pkgs_file, pkgs_dir, opkg_index_cmd_extra_params))
 
                 index_sign_files.add(pkgs_file)