[oe] [RFC] move to opkg

Mike (mwester) mwester at dls.net
Sun Mar 23 05:17:17 UTC 2008


Here's what I've found out: There is no such thing as a 
"PREFERRED_VERSION" or "PREFERRED_PROVIDER" solution for this ipkg/opkg 
problem.  A simple grep tells us why (some random lines I picked out of 
the output from grep):

classes/image.bbclass:          echo "src/gz local-$arch 
${FEED_DEPLOYDIR_BASE_URI}/$arch" >> 
${IMAGE_ROOTFS}/etc/opkg/local-$arch-feed.conf
classes/rootfs_ipk.bbclass:                     opkg-cl ${IPKG_ARGS} 
flag unpacked `basename $i .postinst`

etc, etc -- it's pretty clear that opkg is hardcoded all over the place.



So it seems that everyone *MUST* comply, and migrate to opkg -- unless 
you want to just freeze your distro on an old version of OE.

Now after several hours trying to figure out what to do with this opkg 
stuff, it seems that there's something that is supposed to make 
compatability possible, although there are no documents anywhere on this 
.  So I added opkg-ipkg-compat to task-slugos.bb, and bumped the PR.

Here's what it has started to add to the image (there may be more than 
this):

libgpg
libgpg-error
libcrypt
lzo
pth
libassuan
gnutls


We have a grand total of 8 MBytes of flash on this device; space is at a 
premium -- I don't think that ipkg was so bad that we should be adding 
all of this to the image!  What should we remove to make room for these 
libraries?  The kernel?  Maybe we don't need busybox.  I guess if we 
require a soldered-on serial port, we *could* get rid of openssh...

I hope I'm exaggerating and these libraries aren't that huge, but still, 
we fight for every 10KByte chunk of flash we can get back, and opkg 
seems like a huge, and terribly painful loss.

In the short term:

A) Where are the docs on opkg?
B) How does one modify distros to live in the new world order that's 
been decreed?
C) How much "fat" can we trim off of opkg, and how do we do that, so 
that we don't have to throw out other niceties that users appreciate?

And in the long term:
How do we go about setting up fixing all this opkg stuff so that we 
properly abstract it, allowing a distro to select ipkg, opkg, upkg, and 
sometimes-ypkg that they desire?

Thanks
Mike (mwester)




More information about the Openembedded-devel mailing list