[OE-core] Wic and "live" images

Sergey 'Jin' Bostandzhyan jin at mediatomb.cc
Mon May 23 13:00:28 UTC 2016


Hi,

I'm risking to land in the "reinvented the wheel" corner, but basically I
had a task to create images with msdos partitions, while at the same time
some things had to be in areas where parted/fdisk were not able to create a
partition yet (i.e. u-boot had to be at a very early offset in the image).

wic seemed too PC oriented and cumbersome to me, so I came up with
a custom class:

https://git.digitalstrom.org/dss-oe/dss-oe/blob/master/yocto/dS/meta-digitalstrom-devel/classes/msdos_partition_image.bbclass

I have a multimachine configuration which then looks like this (example with
raw image outside a partition):
https://git.digitalstrom.org/dss-oe/dss-oe/blob/master/yocto/dS/meta-digitalstrom-devel/recipes-core/images/dss20-image.inc

Or this (example with extended partition):
https://git.digitalstrom.org/dss-oe/dss-oe/blob/master/yocto/dS/meta-digitalstrom-devel/recipes-core/images/dss11e-image.inc

The DSSIMG_TASK_DEPENDS variable lists all things that will be
written into the final image (i.e. u-boot, rescue fs, root fs).

If someone considers this interesting for OE in general, I can surely tune
a few things and submit a patch for review.

Kind regards,
Jin



On Mon, May 23, 2016 at 08:13:28AM -0400, Ian Geiser wrote:
>  ---- On Mon, 23 May 2016 06:36:23 -0400 Ed Bartosh <ed.bartosh at linux.intel.com> wrote ---- 
>  > On Thu, May 19, 2016 at 05:52:45AM -0400, Ian Geiser wrote: 
>  > > Greetings, I am trying to learn "wic" and have been confused as how to create a "live" style image.  I am following "http://www.yoctoproject.org/docs/1.5.2/dev-manual/dev-manual.html#creating-partitioned-images" but am getting confused on the target to use to create the a file system that has a single squashfs file containing my root file system.   
>  > >  
>  > > My desired partition layout is as follows: 
>  > >       40MiB                 40MiB               300MiB 
>  > > +--------------------+-----------------+-----------------------------+ 
>  > > |      BOOT (esp)    |    DATA (fat)   |          ROOT (live)        |   
>  > > +--------------------+-----------------+-----------------------------+ 
>  > >  
>  > > BOOT - efi boot partition with kernel and initramfs 
>  > > DATA - generic fat filesystem to hold configuration files 
>  > > ROOT - an ext4 filesystem that contains a single os.img, which is a squashfs file. 
>  > >  
>  > > I have ROOT and DATA figured out but I am at a loss as how to generate the os.img file and copy it into ROOT.  If I generate the os.img file with bitbake and then use the "-r" option to manually supply a directory structure it works, but I would rather have it done from a wks file for automation reasons. 
>  > >  
>  > > Any hints? 
>  > I'd suggest to use wic image type and generate your image by bitbake. 
>  > You can find example wic-image-minimal.bb and wic-image-minimal.wks in ../meta-selftest/recipes-test/images/ 
>  >  
> This is where I started.  I was able to make it work but not with my configuration above.  It looks like I can use a type of "fsimage" for my "ROOT" partition, but I have not been able to figure out the syntax there yet.  For "BOOT" I am at a complete loss.  In theory "bootimg-efi" but there doesn't seem to be a way to provide an initramfs.
> 
>  > You can probably do the same by using wic plugins, but I'd not suggest 
>  > to go this way. Using wic image type is simpler, more consistent, easier to do and provides higher level of automation. 
> 
> Is using the wic image type and a plugin mutually exclusive?
> 
> Thanks!
> 
> 
> 
> -- 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



More information about the Openembedded-core mailing list