adding package management


Tim Coote <tim+yoctoproject.org@...>
 

Hullo
I'm new to yocto, so I'm probably not going about this in the optimum way.

I'm trying to add package management to a yocto build. My preference would be yum/rpm on a rh/centos/fedora distro (as that's the distro used elsewhere), but I don't think that's feasible.

I've added:
[code]
IMAGE_FEATURES += "package-management"
IMAGE_INSTALL_append += " apt perl"
[/code]

to the bottom of …conf/local.conf (I started without the perl, which I added to fix this specific issue). However, when I run
[code]
bitbake core-image-minimal
[/code]
I get the following error
[code]
[tim@mercury mybuilds]$ less /opt/poky/mybuilds/tmp/work/qemuarm-poky-linux-gnueabi/core-image-minimal-1.0-r0/temp/log.do_rootfs.18707
DEBUG: Executing shell function do_rootfs
Generating solve db for /opt/poky/mybuilds/tmp/deploy/rpm/qemuarm...
Generating solve db for /opt/poky/mybuilds/tmp/deploy/rpm/armv5te...
Generating solve db for /opt/poky/mybuilds/tmp/deploy/rpm/all...
Generating solve db for /opt/poky/mybuilds/tmp/deploy/rpm/all...
Processing rpm...
Processing zypper...
Processing packagegroup-core-boot...
Processing apt...
Processing perl...
error: Failed dependencies:
/opt/poky/mybuilds/tmp/sysroots/i686-linux/usr/bin/perl-native/perl is needed by dpkg-1.16.8-r18.0.armv5te
ERROR: Function failed: do_rootfs (see /opt/poky/mybuilds/tmp/work/qemuarm-poky-linux-gnueabi/core-image-minimal-1.0-r0/temp/log.do_rootfs.18707 for further information)
[/code]

the rpm for dpkg-1.16.8-r18.0.armv5te does indeed include that dependency. However, the file *is* present:
[code]
[tim@mercury mybuilds]$ ll /opt/poky/mybuilds/tmp/sysroots/i686-linux/usr/bin/perl-native/perl
-rwxr-xr-x 1 tim tim 244 Dec 10 11:04 /opt/poky/mybuilds/tmp/sysroots/i686-linux/usr/bin/perl-native/perl
[/code]

… and since it's a couple of days old, I can see that adding perl after apt to IMAGE_INSTALL_append is pointless.

Have I missed something obvious? Is this a real issue?

Should I add a package manager some other way in any case?

thanks
Tim


Ross Burton
 

On 12 December 2012 11:13, Tim Coote <tim+yoctoproject.org@coote.org> wrote:
I'm trying to add package management to a yocto build. My preference would be yum/rpm on a rh/centos/fedora distro (as that's the distro used elsewhere), but I don't think that's feasible.

I've added:
[code]
IMAGE_FEATURES += "package-management"
IMAGE_INSTALL_append += " apt perl"
[/code]
Why are you adding apt when you said you wanted rpm?

Just ensure IMAGE_FEATURES has package-mangement and set
PACKAGE_CLASSES to "package_rpm".

Ross


Tim Coote <tim+yoctoproject.org@...>
 

Thanks, Ross. That fixed that. Either I had finger trouble before when invoking rpm or I needed to remove the ? from the ?= in PACKAGE_CLASSES ?= "package_rpm"

Am I right in thinking that yum isn't in the standard recipes?

Tim

On 12 Dec 2012, at 11:18, "Burton, Ross" <ross.burton@intel.com> wrote:

On 12 December 2012 11:13, Tim Coote <tim+yoctoproject.org@coote.org> wrote:
I'm trying to add package management to a yocto build. My preference would be yum/rpm on a rh/centos/fedora distro (as that's the distro used elsewhere), but I don't think that's feasible.

I've added:
[code]
IMAGE_FEATURES += "package-management"
IMAGE_INSTALL_append += " apt perl"
[/code]
Why are you adding apt when you said you wanted rpm?

Just ensure IMAGE_FEATURES has package-mangement and set
PACKAGE_CLASSES to "package_rpm".

Ross


Ross Burton
 

On 12 December 2012 11:31, Tim Coote <tim+yoctoproject.org@coote.org> wrote:
Am I right in thinking that yum isn't in the standard recipes?
Yum, no. Zypper is in oe-core and is used when you construct a RPM-based image.

(note that Zypper is being replaced by Smart in oe-core master)

Ross


Tim Coote <tim+yoctoproject.org@...>
 

ok. Thanks.

just spotted the split between rpm / rpm5 and yum. I suppose that the knock on is managing multiple repos for different update managers.

don't suppose you know if there are material differences from a packaging/dependency point of view between rpm4 and rpm5?

is there an eta for smart in the mainstream core?

On 12 Dec 2012, at 11:43, "Burton, Ross" <ross.burton@intel.com> wrote:

On 12 December 2012 11:31, Tim Coote <tim+yoctoproject.org@coote.org> wrote:
Am I right in thinking that yum isn't in the standard recipes?
Yum, no. Zypper is in oe-core and is used when you construct a RPM-based image.

(note that Zypper is being replaced by Smart in oe-core master)

Ross


Ross Burton
 

On 12 December 2012 12:07, Tim Coote <tim+yoctoproject.org@coote.org> wrote:
don't suppose you know if there are material differences from a packaging/dependency point of view between rpm4 and rpm5?
Not sure, I prefer opkg for Yocto and am a Debian user for my desktop.s

is there an eta for smart in the mainstream core?
The patches are being finalised right now.

Ross


Mark Hatle <mark.hatle@...>
 

On 12/12/12 5:43 AM, Burton, Ross wrote:
On 12 December 2012 11:31, Tim Coote <tim+yoctoproject.org@coote.org> wrote:
Am I right in thinking that yum isn't in the standard recipes?
Yum, no. Zypper is in oe-core and is used when you construct a RPM-based image.

(note that Zypper is being replaced by Smart in oe-core master)
See the following for more information on the change:
http://permalink.gmane.org/gmane.comp.handhelds.openembedded.core/29105

The one feature that Smart does not have that Zypper does (that I know people want) is delta-rpm support. Otherwise it seems to be better for our uses in Embedded Systems.

--Mark

Ross
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


Mark Hatle <mark.hatle@...>
 

On 12/12/12 6:07 AM, Tim Coote wrote:
ok. Thanks.

just spotted the split between rpm / rpm5 and yum. I suppose that the knock on is managing multiple repos for different update managers.

don't suppose you know if there are material differences from a packaging/dependency point of view between rpm4 and rpm5?
Generated packages are more or less compatible. The only big difference is that all RPM5 packages are 'self-signed' to integrity purposes. Self-signing is better then simply md5sums. (They of course can also be signed with a specific key to indicate trust as well.)

But the primary difference is in cross compiling and support for the activities that we need when cross-constructing root filesystems and such. There is also an aspect of 'control' behind this. We have input into the RPM5 development, in RPM4 we have absolutely no influence and they have removed everything that helped in a cross-compiled environment after the split.

is there an eta for smart in the mainstream core?
Hopefully the next version of the integration patches should be sent up today. We're really trying to get the code in by next week.

--Mark

On 12 Dec 2012, at 11:43, "Burton, Ross" <ross.burton@intel.com> wrote:

On 12 December 2012 11:31, Tim Coote <tim+yoctoproject.org@coote.org> wrote:
Am I right in thinking that yum isn't in the standard recipes?
Yum, no. Zypper is in oe-core and is used when you construct a RPM-based image.

(note that Zypper is being replaced by Smart in oe-core master)

Ross
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto