[yocto] [Openembedded-architecture] Standalone image writer

Paul Eggleton paul.eggleton at linux.intel.com
Sun Feb 28 23:12:26 PST 2016


On Mon, 29 Feb 2016 04:48:57 Gary Thomas wrote:
> On 02/29/2016 04:31 AM, Trevor Woerner wrote:
> > On 02/28/16 20:46, Khem Raj wrote:
> >>> On Feb 28, 2016, at 4:17 PM, Paul Eggleton
> >>> <paul.eggleton at linux.intel.com> wrote:
> >>> 
> >>> (changing subject line so people don't miss this slight tangent)
> >>> 
> >>> I'd almost completely forgotten, but the part of what we wrote for Hob
> >>> to
> >>> write images to a USB stick or SD card (bitbake/bin/image-writer) is
> >>> actually a standalone application. There's not a lot to it - pick your
> >>> image file and then the device you want to write it to; it has some
> >>> logic in it to not let you accidentally write to devices that aren't
> >>> USB sticks.
> >>> 
> >>> A few points:
> >>> 
> >>> - I'm not sure very many people know this tool exists, so it's likely
> >>> it's not being widely used. Having said that it is a nice simple UI
> >>> that does the job.
> >>> 
> >>> - It shares some code with Hob, but mostly not the bits with code
> >>> quality
> >>> issues, though it is still GTK+ 2 based.
> >>> 
> >>> - It doesn't support the advanced SD card writing functionality that has
> >>> been implented within wic over the last few releases, which is pretty
> >>> important for devices where a special partition layout is expected by
> >>> the bootloader.
> >>> 
> >>> - Toaster can't really have this functionality in it because it's web
> >>> based
> >>> and the web server might not be running locally, so writing to a local
> >>> USB
> >>> stick or SD card isn't going to be practical from there; about all it
> >>> could do is provide instructions on how to write the image once you've
> >>> downloaded it.
> >>> 
> >>> - I believe there are other equivalent tools out there that various
> >>> distros
> >>> use for taking a downloadable ISO image and writing it to a USB stick. I
> >>> haven't done a survey to find out if if any of them work in quite the
> >>> same way; I know some of them actually unpack the image and then
> >>> re-create a filesystem on the device, which isn't the right thing for
> >>> our images.
> >>> 
> >>> - We do have a command-line equivalent in the form of
> >>> scripts/contrib/ddimage in OE-Core. Of course it's command-line and
> >>> thus less friendly but it does the job (and also has some safeguards
> >>> against writing to the wrong device).
> >>> 
> >>> So what do we do with this? We have two choices really:
> >>> 
> >>> A) Drop bitbake/bin/imagewriter along with Hob; we could potentially
> >>> resurrect it again later if desired
> >>> 
> >>> B) Preserve it along with the shared modules that it requires
> >>> 
> >>> Thoughts?
> >> 
> >> Option A. There are USB writer tool in your favorite distros and OSes,
> >> and I have seen people use those tools more often.
> > 
> > Some platforms, e.g. Minnow, use their own image writing script (i.e.
> > mkefidisk.sh). If there are other platforms which need some special tool
> > that isn't generically available from the host and the hob tool could be
> > made to accommodate them all, I'd prefer to see one tool that can do all
> > of them instead of a bunch of tools, one for each platform.
>
> As Paul mentioned, each platform seems to want to do this "their
> own way" which is troublesome at best for embedded systems.  I think
> it would be much better to maintain one way that works with what we
> are building (OE based embedded devices) rather than relying on the
> whims of others.  So, if it's not too hard, I'd prefer that this
> ability be kept, even as a stand-alone script.

Well, arguably the "one way that works" is supposed to be wic as far as the 
actual image writing is concerned. There's a bug open to ensure we support all 
of the reference platforms [1], and I'd encourage anyone developing a BSP with 
unusual partition/formatting requirements to work out how those can be 
supported in wic if they aren't already so we can get away from these BSP-
specific classes and scripts.

There isn't a frontend UI for wic that I am aware of though - as I mentioned 
earlier image-writer has no support for it, it's just doing a straight dd to 
the device.

Cheers,
Paul

[1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=8719

-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the yocto mailing list