Patchwork image.bbclass: Allow creation of meta-packages for images

login
register
mail settings
Submitter David Nyström
Date Dec. 11, 2013, 2:46 p.m.
Message ID <1386773181-24944-1-git-send-email-david.nystrom@enea.com>
Download mbox | patch
Permalink /patch/63225/
State New
Headers show

Comments

David Nyström - Dec. 11, 2013, 2:46 p.m.
No packages were created for core-image-minimal et.c. which
is a known top level interface for Yocto/OE users.

When installing from a repo, it would be good if these interfaces
were common. If not, users are left with
packagegroup-core-*, which names are not always easy to parse.

Signed-off-by: David Nyström <david.nystrom@enea.com>
---
 meta/classes/image.bbclass | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)
Richard Purdie - Dec. 11, 2013, 3:18 p.m.
On Wed, 2013-12-11 at 15:46 +0100, David Nyström wrote:
> No packages were created for core-image-minimal et.c. which
> is a known top level interface for Yocto/OE users.
> 
> When installing from a repo, it would be good if these interfaces
> were common. If not, users are left with
> packagegroup-core-*, which names are not always easy to parse.
> 
> Signed-off-by: David Nyström <david.nystrom@enea.com>
> ---
>  meta/classes/image.bbclass | 12 ++++--------
>  1 file changed, 4 insertions(+), 8 deletions(-)

I'm not sure we can do this since there isn't one magic package group
which represents a given image. The problem is it needs to account for
IMAGE_FEATURES as well and I think this could end up confusing users
more than helping them.

Cheers,

Richard

> diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
> index cc65e35..e875b8a 100644
> --- a/meta/classes/image.bbclass
> +++ b/meta/classes/image.bbclass
> @@ -8,11 +8,12 @@ POPULATE_SDK_POST_TARGET_COMMAND += "rootfs_install_complementary populate_sdk;
>  
>  inherit gzipnative
>  
> +ALLOW_EMPTY_${PN} = "1"
> +PACKAGES = "${PN}"
>  LICENSE = "MIT"
> -PACKAGES = ""
>  DEPENDS += "${MLPREFIX}qemuwrapper-cross ${MLPREFIX}depmodwrapper-cross"
> -RDEPENDS += "${PACKAGE_INSTALL} ${LINGUAS_INSTALL}"
> -RRECOMMENDS += "${PACKAGE_INSTALL_ATTEMPTONLY}"
> +RDEPENDS_${PN} += "${PACKAGE_INSTALL} ${LINGUAS_INSTALL}"
> +RRECOMMENDS_${PN} += "${PACKAGE_INSTALL_ATTEMPTONLY}"
>  
>  INHIBIT_DEFAULT_DEPS = "1"
>  
> @@ -659,11 +660,6 @@ do_configure[noexec] = "1"
>  do_compile[noexec] = "1"
>  do_install[noexec] = "1"
>  do_populate_sysroot[noexec] = "1"
> -do_package[noexec] = "1"
> -do_packagedata[noexec] = "1"
> -do_package_write_ipk[noexec] = "1"
> -do_package_write_deb[noexec] = "1"
> -do_package_write_rpm[noexec] = "1"
>  
>  addtask rootfs before do_build
>  # Allow the kernel to be repacked with the initramfs and boot image file as a single file
David Nyström - Dec. 12, 2013, 9:11 a.m.
On ons 11 dec 2013 16:18:30, Richard Purdie wrote:
> On Wed, 2013-12-11 at 15:46 +0100, David Nyström wrote:
>> No packages were created for core-image-minimal et.c. which
>> is a known top level interface for Yocto/OE users.
>>
>> When installing from a repo, it would be good if these interfaces
>> were common. If not, users are left with
>> packagegroup-core-*, which names are not always easy to parse.
>>
>> Signed-off-by: David Nyström <david.nystrom@enea.com>
>> ---
>>   meta/classes/image.bbclass | 12 ++++--------
>>   1 file changed, 4 insertions(+), 8 deletions(-)
>
> I'm not sure we can do this since there isn't one magic package group
> which represents a given image. The problem is it needs to account for
> IMAGE_FEATURES as well and I think this could end up confusing users
> more than helping them.
>
> Cheers,
>
> Richard

Hi Richard,

Yes, the package contents may vary, but should this not be up to the 
distro to be able
to configure meta-packages with a common top-level api ?

I suppose we can create our own ALLOW_EMPTY meta-package recipes, where 
items are RDEPEND:ed,
which in turn mirrors the contents of selected IMAGEs.

DISTRO_FEATURES and in some degree PACKAGE_CONFIG also alters package 
dependencies,
and contents. I can't really see how this is different.

Br,
David

Patch

diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index cc65e35..e875b8a 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -8,11 +8,12 @@  POPULATE_SDK_POST_TARGET_COMMAND += "rootfs_install_complementary populate_sdk;
 
 inherit gzipnative
 
+ALLOW_EMPTY_${PN} = "1"
+PACKAGES = "${PN}"
 LICENSE = "MIT"
-PACKAGES = ""
 DEPENDS += "${MLPREFIX}qemuwrapper-cross ${MLPREFIX}depmodwrapper-cross"
-RDEPENDS += "${PACKAGE_INSTALL} ${LINGUAS_INSTALL}"
-RRECOMMENDS += "${PACKAGE_INSTALL_ATTEMPTONLY}"
+RDEPENDS_${PN} += "${PACKAGE_INSTALL} ${LINGUAS_INSTALL}"
+RRECOMMENDS_${PN} += "${PACKAGE_INSTALL_ATTEMPTONLY}"
 
 INHIBIT_DEFAULT_DEPS = "1"
 
@@ -659,11 +660,6 @@  do_configure[noexec] = "1"
 do_compile[noexec] = "1"
 do_install[noexec] = "1"
 do_populate_sysroot[noexec] = "1"
-do_package[noexec] = "1"
-do_packagedata[noexec] = "1"
-do_package_write_ipk[noexec] = "1"
-do_package_write_deb[noexec] = "1"
-do_package_write_rpm[noexec] = "1"
 
 addtask rootfs before do_build
 # Allow the kernel to be repacked with the initramfs and boot image file as a single file