diff mbox series

[v1] python3-pyhsslms: Add 2.0.0 recipe

Message ID 20241209084142.939432-1-jamin_lin@aspeedtech.com
State New
Headers show
Series [v1] python3-pyhsslms: Add 2.0.0 recipe | expand

Commit Message

Jamin Lin Dec. 9, 2024, 8:41 a.m. UTC
This recipe was placed in meta-arm meta layer,
https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-devtools/python/python3-pyhsslms_2.0.0.bb

However, users may want to build this python module but do not want to add
"meta-arm" layer. To make this recipe more flexible, move this recipe from
meta-arm to OpenEmbedded-Core/meta layer.

Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
---
 .../python/python3-pyhsslms_2.0.0.bb               | 14 ++++++++++++++
 1 file changed, 14 insertions(+)
 create mode 100644 meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb

Comments

Alexander Kanavin Dec. 9, 2024, 9:24 a.m. UTC | #1
Hello,

I'd like to better understand the use case for this recipe. What makes
it important enough to be included in oe-core, and not, for example,
in meta-python under meta-oe? If it is indeed broadly useful, should
it have tests that ensure it works?

Alex

On Mon, 9 Dec 2024 at 09:41, Jamin Lin via lists.openembedded.org
<jamin_lin=aspeedtech.com@lists.openembedded.org> wrote:
>
> This recipe was placed in meta-arm meta layer,
> https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
>
> However, users may want to build this python module but do not want to add
> "meta-arm" layer. To make this recipe more flexible, move this recipe from
> meta-arm to OpenEmbedded-Core/meta layer.
>
> Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
> ---
>  .../python/python3-pyhsslms_2.0.0.bb               | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
>  create mode 100644 meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
>
> diff --git a/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> new file mode 100644
> index 0000000000..b18d1c8e86
> --- /dev/null
> +++ b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> @@ -0,0 +1,14 @@
> +SUMMARY = "Pure-Python implementation of HSS/LMS Digital Signatures (RFC 8554)"
> +HOMEPAGE ="https://pypi.org/project/pyhsslms"
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=bbc59ef8bf238c2902ca816b87b58571"
> +
> +inherit python_setuptools_build_meta
> +
> +# Maintainer refused to upload source to pypi.org, but said he would in a future release.  In the meantime, do github
> +SRC_URI = "git:///github.com/russhousley/pyhsslms.git;branch=master;protocol=https"
> +SRCREV = "c798728deed6d3f681c9e6bfd7fe8a6705f5638b"
> +
> +S = "${WORKDIR}/git"
> +
> +BBCLASSEXTEND = "native nativesdk"
> --
> 2.25.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#208475): https://lists.openembedded.org/g/openembedded-core/message/208475
> Mute This Topic: https://lists.openembedded.org/mt/110002797/1686489
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Jamin Lin Dec. 9, 2024, 9:43 a.m. UTC | #2
Hi Alex

I followed this recipe, python3-cryptography.bb and send this patch to place pyhsslms into OpeneEmbedded-Core/meta layer
https://github.com/openembedded/openembedded-core/blob/master/meta/recipes-devtools/python/python3-cryptography.bb
I am okay to resend this patch and add this recipe into meta-openembedded/meta-python meta layer.

This python module is used for LMSS algorithm support and it is not a HARDWARE/BOARD specific. This python module use
Software to sign with LMSS algorithm.
I tested it in NATIVE build environment with devshell and my tested steps as following.

1. DEPENDS += "python3-pyhsslms-native" in u-boot_2024.10.bb
2. bitbake -c devshell virtual/bootloader
3. Add mytest.py and the contents of this file as following.
```
import pyhsslms

priv_key = pyhsslms.HssLmsPrivateKey.genkey('mykey', levels=2)
priv_key.signFile('myfile.txt')
```
4. touch myfile.txt
5. python3 mytest.py

Then, it created signing file, myfile.txt.sig.
hexdump myfile.txt.sig
00006a0 9ef9 d537 11c0 9766 4116 cc5c cdcc 0669
00006b0 f7f6 e20f 4c11 e4d8 fbdc bca5 3037 b4c8
00006c0 c8d2 d5f5 1819 ada3 a7b0 ce22 5338 7a54
00006d0 bdf6 7e71 8125 756f daba 4a43 13f3 b69c
00006e0 e702 040f 8e88 ea79 9ed1 ef48 c135 234c

I refer to this README.md to create this test file to test this python module.
https://github.com/russhousley/pyhsslms
https://github.com/russhousley/pyhsslms/blob/master/README.md

Thanks-Jamin

> Subject: Re: [OE-core] [PATCH v1] python3-pyhsslms: Add 2.0.0 recipe
> 
> Hello,
> 
> I'd like to better understand the use case for this recipe. What makes it
> important enough to be included in oe-core, and not, for example, in
> meta-python under meta-oe? If it is indeed broadly useful, should it have tests
> that ensure it works?
> 
> Alex
> 
> On Mon, 9 Dec 2024 at 09:41, Jamin Lin via lists.openembedded.org
> <jamin_lin=aspeedtech.com@lists.openembedded.org> wrote:
> >
> > This recipe was placed in meta-arm meta layer,
> > https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-devtools/p
> > ython/python3-pyhsslms_2.0.0.bb
> >
> > However, users may want to build this python module but do not want to
> > add "meta-arm" layer. To make this recipe more flexible, move this
> > recipe from meta-arm to OpenEmbedded-Core/meta layer.
> >
> > Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
> > ---
> >  .../python/python3-pyhsslms_2.0.0.bb               | 14
> ++++++++++++++
> >  1 file changed, 14 insertions(+)
> >  create mode 100644
> > meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> >
> > diff --git a/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > new file mode 100644
> > index 0000000000..b18d1c8e86
> > --- /dev/null
> > +++ b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > @@ -0,0 +1,14 @@
> > +SUMMARY = "Pure-Python implementation of HSS/LMS Digital Signatures
> (RFC 8554)"
> > +HOMEPAGE ="https://pypi.org/project/pyhsslms"
> > +LICENSE = "MIT"
> > +LIC_FILES_CHKSUM =
> "file://LICENSE.txt;md5=bbc59ef8bf238c2902ca816b87b58571"
> > +
> > +inherit python_setuptools_build_meta
> > +
> > +# Maintainer refused to upload source to pypi.org, but said he would
> > +in a future release.  In the meantime, do github SRC_URI =
> "git:///github.com/russhousley/pyhsslms.git;branch=master;protocol=https"
> > +SRCREV = "c798728deed6d3f681c9e6bfd7fe8a6705f5638b"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +BBCLASSEXTEND = "native nativesdk"
> > --
> > 2.25.1
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#208475):
> > https://lists.openembedded.org/g/openembedded-core/message/208475
> > Mute This Topic: https://lists.openembedded.org/mt/110002797/1686489
> > Group Owner: openembedded-core+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
> > [alex.kanavin@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
Alexander Kanavin Dec. 9, 2024, 9:50 a.m. UTC | #3
Hello,

thanks for the explanation. I'd say it is indeed better placed in
meta-python, can you send a patch to openembedded-devel list?

Also I would recommend testing the module on a target image.
Particularly, it doesn't list any RDEPENDS items, and will likely not
work properly because of it.

Alex

On Mon, 9 Dec 2024 at 10:43, Jamin Lin <jamin_lin@aspeedtech.com> wrote:
>
> Hi Alex
>
> I followed this recipe, python3-cryptography.bb and send this patch to place pyhsslms into OpeneEmbedded-Core/meta layer
> https://github.com/openembedded/openembedded-core/blob/master/meta/recipes-devtools/python/python3-cryptography.bb
> I am okay to resend this patch and add this recipe into meta-openembedded/meta-python meta layer.
>
> This python module is used for LMSS algorithm support and it is not a HARDWARE/BOARD specific. This python module use
> Software to sign with LMSS algorithm.
> I tested it in NATIVE build environment with devshell and my tested steps as following.
>
> 1. DEPENDS += "python3-pyhsslms-native" in u-boot_2024.10.bb
> 2. bitbake -c devshell virtual/bootloader
> 3. Add mytest.py and the contents of this file as following.
> ```
> import pyhsslms
>
> priv_key = pyhsslms.HssLmsPrivateKey.genkey('mykey', levels=2)
> priv_key.signFile('myfile.txt')
> ```
> 4. touch myfile.txt
> 5. python3 mytest.py
>
> Then, it created signing file, myfile.txt.sig.
> hexdump myfile.txt.sig
> 00006a0 9ef9 d537 11c0 9766 4116 cc5c cdcc 0669
> 00006b0 f7f6 e20f 4c11 e4d8 fbdc bca5 3037 b4c8
> 00006c0 c8d2 d5f5 1819 ada3 a7b0 ce22 5338 7a54
> 00006d0 bdf6 7e71 8125 756f daba 4a43 13f3 b69c
> 00006e0 e702 040f 8e88 ea79 9ed1 ef48 c135 234c
>
> I refer to this README.md to create this test file to test this python module.
> https://github.com/russhousley/pyhsslms
> https://github.com/russhousley/pyhsslms/blob/master/README.md
>
> Thanks-Jamin
>
> > Subject: Re: [OE-core] [PATCH v1] python3-pyhsslms: Add 2.0.0 recipe
> >
> > Hello,
> >
> > I'd like to better understand the use case for this recipe. What makes it
> > important enough to be included in oe-core, and not, for example, in
> > meta-python under meta-oe? If it is indeed broadly useful, should it have tests
> > that ensure it works?
> >
> > Alex
> >
> > On Mon, 9 Dec 2024 at 09:41, Jamin Lin via lists.openembedded.org
> > <jamin_lin=aspeedtech.com@lists.openembedded.org> wrote:
> > >
> > > This recipe was placed in meta-arm meta layer,
> > > https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-devtools/p
> > > ython/python3-pyhsslms_2.0.0.bb
> > >
> > > However, users may want to build this python module but do not want to
> > > add "meta-arm" layer. To make this recipe more flexible, move this
> > > recipe from meta-arm to OpenEmbedded-Core/meta layer.
> > >
> > > Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
> > > ---
> > >  .../python/python3-pyhsslms_2.0.0.bb               | 14
> > ++++++++++++++
> > >  1 file changed, 14 insertions(+)
> > >  create mode 100644
> > > meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > >
> > > diff --git a/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > > b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > > new file mode 100644
> > > index 0000000000..b18d1c8e86
> > > --- /dev/null
> > > +++ b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > > @@ -0,0 +1,14 @@
> > > +SUMMARY = "Pure-Python implementation of HSS/LMS Digital Signatures
> > (RFC 8554)"
> > > +HOMEPAGE ="https://pypi.org/project/pyhsslms"
> > > +LICENSE = "MIT"
> > > +LIC_FILES_CHKSUM =
> > "file://LICENSE.txt;md5=bbc59ef8bf238c2902ca816b87b58571"
> > > +
> > > +inherit python_setuptools_build_meta
> > > +
> > > +# Maintainer refused to upload source to pypi.org, but said he would
> > > +in a future release.  In the meantime, do github SRC_URI =
> > "git:///github.com/russhousley/pyhsslms.git;branch=master;protocol=https"
> > > +SRCREV = "c798728deed6d3f681c9e6bfd7fe8a6705f5638b"
> > > +
> > > +S = "${WORKDIR}/git"
> > > +
> > > +BBCLASSEXTEND = "native nativesdk"
> > > --
> > > 2.25.1
> > >
> > >
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > > Links: You receive all messages sent to this group.
> > > View/Reply Online (#208475):
> > > https://lists.openembedded.org/g/openembedded-core/message/208475
> > > Mute This Topic: https://lists.openembedded.org/mt/110002797/1686489
> > > Group Owner: openembedded-core+owner@lists.openembedded.org
> > > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
> > > [alex.kanavin@gmail.com]
> > > -=-=-=-=-=-=-=-=-=-=-=-
> > >
Jamin Lin Dec. 9, 2024, 9:53 a.m. UTC | #4
Hi Alex,

> <troy_lee@aspeedtech.com>
> Subject: Re: [OE-core] [PATCH v1] python3-pyhsslms: Add 2.0.0 recipe
> 
> Hello,
> 
> thanks for the explanation. I'd say it is indeed better placed in meta-python,
> can you send a patch to openembedded-devel list?
> 

Thanks for review and suggestion. I will resend to openembedded-devel.

> Also I would recommend testing the module on a target image.
> Particularly, it doesn't list any RDEPENDS items, and will likely not work
> properly because of it.
> 
Thanks for suggestion. I will test target image such as QEMUARM and ensure it works.
Thanks-Jamin

> Alex
> 
> On Mon, 9 Dec 2024 at 10:43, Jamin Lin <jamin_lin@aspeedtech.com> wrote:
> >
> > Hi Alex
> >
> > I followed this recipe, python3-cryptography.bb and send this patch to
> > place pyhsslms into OpeneEmbedded-Core/meta layer
> >
> https://github.com/openembedded/openembedded-core/blob/master/meta/re
> c
> > ipes-devtools/python/python3-cryptography.bb
> > I am okay to resend this patch and add this recipe into
> meta-openembedded/meta-python meta layer.
> >
> > This python module is used for LMSS algorithm support and it is not a
> > HARDWARE/BOARD specific. This python module use Software to sign with
> LMSS algorithm.
> > I tested it in NATIVE build environment with devshell and my tested steps as
> following.
> >
> > 1. DEPENDS += "python3-pyhsslms-native" in u-boot_2024.10.bb 2.
> > bitbake -c devshell virtual/bootloader 3. Add mytest.py and the
> > contents of this file as following.
> > ```
> > import pyhsslms
> >
> > priv_key = pyhsslms.HssLmsPrivateKey.genkey('mykey', levels=2)
> > priv_key.signFile('myfile.txt')
> > ```
> > 4. touch myfile.txt
> > 5. python3 mytest.py
> >
> > Then, it created signing file, myfile.txt.sig.
> > hexdump myfile.txt.sig
> > 00006a0 9ef9 d537 11c0 9766 4116 cc5c cdcc 0669
> > 00006b0 f7f6 e20f 4c11 e4d8 fbdc bca5 3037 b4c8
> > 00006c0 c8d2 d5f5 1819 ada3 a7b0 ce22 5338 7a54
> > 00006d0 bdf6 7e71 8125 756f daba 4a43 13f3 b69c
> > 00006e0 e702 040f 8e88 ea79 9ed1 ef48 c135 234c
> >
> > I refer to this README.md to create this test file to test this python module.
> > https://github.com/russhousley/pyhsslms
> > https://github.com/russhousley/pyhsslms/blob/master/README.md
> >
> > Thanks-Jamin
> >
> > > Subject: Re: [OE-core] [PATCH v1] python3-pyhsslms: Add 2.0.0 recipe
> > >
> > > Hello,
> > >
> > > I'd like to better understand the use case for this recipe. What
> > > makes it important enough to be included in oe-core, and not, for
> > > example, in meta-python under meta-oe? If it is indeed broadly
> > > useful, should it have tests that ensure it works?
> > >
> > > Alex
> > >
> > > On Mon, 9 Dec 2024 at 09:41, Jamin Lin via lists.openembedded.org
> > > <jamin_lin=aspeedtech.com@lists.openembedded.org> wrote:
> > > >
> > > > This recipe was placed in meta-arm meta layer,
> > > > https://git.yoctoproject.org/meta-arm/tree/meta-arm/recipes-devtoo
> > > > ls/p
> > > > ython/python3-pyhsslms_2.0.0.bb
> > > >
> > > > However, users may want to build this python module but do not
> > > > want to add "meta-arm" layer. To make this recipe more flexible,
> > > > move this recipe from meta-arm to OpenEmbedded-Core/meta layer.
> > > >
> > > > Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
> > > > ---
> > > >  .../python/python3-pyhsslms_2.0.0.bb               | 14
> > > ++++++++++++++
> > > >  1 file changed, 14 insertions(+)
> > > >  create mode 100644
> > > > meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > > >
> > > > diff --git
> > > > a/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > > > b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > > > new file mode 100644
> > > > index 0000000000..b18d1c8e86
> > > > --- /dev/null
> > > > +++ b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
> > > > @@ -0,0 +1,14 @@
> > > > +SUMMARY = "Pure-Python implementation of HSS/LMS Digital
> > > > +Signatures
> > > (RFC 8554)"
> > > > +HOMEPAGE ="https://pypi.org/project/pyhsslms"
> > > > +LICENSE = "MIT"
> > > > +LIC_FILES_CHKSUM =
> > > "file://LICENSE.txt;md5=bbc59ef8bf238c2902ca816b87b58571"
> > > > +
> > > > +inherit python_setuptools_build_meta
> > > > +
> > > > +# Maintainer refused to upload source to pypi.org, but said he
> > > > +would in a future release.  In the meantime, do github SRC_URI =
> > > "git:///github.com/russhousley/pyhsslms.git;branch=master;protocol=https"
> > > > +SRCREV = "c798728deed6d3f681c9e6bfd7fe8a6705f5638b"
> > > > +
> > > > +S = "${WORKDIR}/git"
> > > > +
> > > > +BBCLASSEXTEND = "native nativesdk"
> > > > --
> > > > 2.25.1
> > > >
> > > >
> > > > -=-=-=-=-=-=-=-=-=-=-=-
> > > > Links: You receive all messages sent to this group.
> > > > View/Reply Online (#208475):
> > > > https://lists.openembedded.org/g/openembedded-core/message/208475
> > > > Mute This Topic:
> > > > https://lists.openembedded.org/mt/110002797/1686489
> > > > Group Owner: openembedded-core+owner@lists.openembedded.org
> > > > Unsubscribe:
> > > > https://lists.openembedded.org/g/openembedded-core/unsub
> > > > [alex.kanavin@gmail.com]
> > > > -=-=-=-=-=-=-=-=-=-=-=-
> > > >
diff mbox series

Patch

diff --git a/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
new file mode 100644
index 0000000000..b18d1c8e86
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-pyhsslms_2.0.0.bb
@@ -0,0 +1,14 @@ 
+SUMMARY = "Pure-Python implementation of HSS/LMS Digital Signatures (RFC 8554)"
+HOMEPAGE ="https://pypi.org/project/pyhsslms"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=bbc59ef8bf238c2902ca816b87b58571"
+
+inherit python_setuptools_build_meta
+
+# Maintainer refused to upload source to pypi.org, but said he would in a future release.  In the meantime, do github
+SRC_URI = "git:///github.com/russhousley/pyhsslms.git;branch=master;protocol=https"
+SRCREV = "c798728deed6d3f681c9e6bfd7fe8a6705f5638b"
+
+S = "${WORKDIR}/git"
+
+BBCLASSEXTEND = "native nativesdk"