<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugzilla.yoctoproject.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugzilla.yoctoproject.org/"
          
          maintainer="it-coreprojects-helpdesk@linuxfoundation.org"
>

    <bug>
          <bug_id>3351</bug_id>
          
          <creation_ts>2012-10-29 17:11:20 +0000</creation_ts>
          <short_desc>Reimplement RPM rootfs generation using smart</short_desc>
          <delta_ts>2013-02-08 12:28:21 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>7</classification_id>
          <classification>Build System, Metadata &amp; Runtime</classification>
          <product>OE-Core</product>
          <component>core</component>
          <version>1.4</version>
          <rep_platform>All</rep_platform>
          <op_sys>Multiple</op_sys>
          <bug_status>VERIFIED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard>Patches sent for review (4 Dec)</status_whiteboard>
          <keywords></keywords>
          <priority>Medium+</priority>
          <bug_severity>enhancement</bug_severity>
          <target_milestone>1.4 M2</target_milestone>
          <dependson>3350</dependson>
          <blocked>3182</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Paul Eggleton">bluelightning</reporter>
          <assigned_to name="Paul Eggleton">bluelightning</assigned_to>
          <cc>alexandru.damian</cc>
    
    <cc>corneliux.stoicescu</cc>
    
    <cc>meta.mr.watcher</cc>
    
    <cc>meta.watcher</cc>
    
    <cc>n3npq</cc>
    
    <cc>sgw</cc>
          
          
          <cf_os>---</cf_os>
          <cf_regression_type>---</cf_regression_type>
          
          <cf_docchange>---</cf_docchange>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>27014</commentid>
    <comment_count>0</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2012-10-29 17:11:20 +0000</bug_when>
    <thetext>Assuming feed generation is handled under bug #3346 and recommends in bug #3350, separately we can implement the rest of image generation using smart. This will involve the following tasks:

* Automatically constructing smart configuration files
* Verifying/extending smart to be able to pass necessary &quot;root&quot; parameter to RPM (done, patches pending)
* Modify package_rpm.bbclass and rootfs_rpm.bbclass to call smart instead of using internal logic for package resolution and installation

Some initial setup hints can be found here:
https://wiki.yoctoproject.org/wiki/Smart

We will need to ensure after this change that the following still work:

* Building standard images (eg. core-image-minimal, core-image-lsb-sdk)
* Building for one machine target then another in the same tree, ensuring correct architectures are used
* Building multilib images - may currently be broken anyway though (see bug 2918)
* Incremental image generation

Buildhistory can be used to verify that the image contents are the same with the old code and the new smart implementation.

It would be useful to get some idea of the performance difference between the two implementations - hopefully this change will result in an improvement.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>27969</commentid>
    <comment_count>1</comment_count>
    <who name="Jeff Johnson">n3npq</who>
    <bug_when>2012-12-04 17:36:21 +0000</bug_when>
    <thetext>Here is a chroot creator based on smart used in Unity Linux:

    https://github.com/dillj/Unity-Linux/blob/master/pkgutils/scripts/create-basesystem</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>28346</commentid>
    <comment_count>2</comment_count>
    <who name="Paul Eggleton">bluelightning</who>
    <bug_when>2012-12-18 10:46:31 +0000</bug_when>
    <thetext>Implementation has now been merged to master:

http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=019ba25654cd3ae63a6b6c0f2d67da520bf10bc6
(together with commits following this one)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>29678</commentid>
    <comment_count>3</comment_count>
    <who name="Stoicescu Cornel">corneliux.stoicescu</who>
    <bug_when>2013-02-08 12:28:21 +0000</bug_when>
    <thetext>Verified in master: b07759a20221de575da98d221feb9ea9295f7e6f

-bitbake core-image-minimal produced a working image

-creating 2 core-image-minimal with qemux86-64 and qemuarm targets  produced the correct output:

cornel@NODE1:~/SSD/poky/build$ ls tmp/deploy/images/
bzImage
bzImage--3.4.28+gitAUTOINC+f697e099bc76d5df3a307a5bc0cc25021dd6dfe0_13809f2cfd9be0ce86bd486e1643f9b90bed6f4f-r4.3-qemux86-64-20130206222050.bin
bzImage-qemux86-64.bin
core-image-minimal-qemuarm-20130208123547.rootfs.ext3
core-image-minimal-qemuarm-20130208123547.rootfs.tar.bz2
core-image-minimal-qemuarm.ext3
core-image-minimal-qemuarm.tar.bz2
core-image-minimal-qemux86-64-20130208111914.rootfs.ext3
core-image-minimal-qemux86-64-20130208111914.rootfs.tar.bz2
core-image-minimal-qemux86-64.ext3
core-image-minimal-qemux86-64.tar.bz2
modules--3.4.28+gitAUTOINC+f697e099bc76d5df3a307a5bc0cc25021dd6dfe0_13809f2cfd9be0ce86bd486e1643f9b90bed6f4f-r4.3-qemux86-64-20130206222050.tgz
modules--3.4.28+gitAUTOINC+f697e099bc76d5df3a307a5bc0cc25021dd6dfe0_a720acacc415b3323a3ee9076bf9a621a964af2f-r4.3-qemuarm-20130207222211.tgz
README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt
zImage
zImage--3.4.28+gitAUTOINC+f697e099bc76d5df3a307a5bc0cc25021dd6dfe0_a720acacc415b3323a3ee9076bf9a621a964af2f-r4.3-qemuarm-20130207222211.bin
zImage-qemuarm.bin

cornel@NODE1:~/SSD/poky/build$ ls tmp/deploy/rpm/
all  armv5te  qemuarm  qemux86_64  x86_64

-incremental image generation works as intended
-multilib images is broken atm, this will be covered in bug 2918</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>