I'm replying via Yahoo web, so sorry about formatting... text option is nowhere to be found.

A solution that almost worked is "memdisk" from Syslinux.  Essentially, you configure the usual "syslinux.cfg", but your kernel is "memdisk" and your initrd is the ISO image you want.  I say "almost worked", because
    - it boots the ISO you want -- you see dots filling up the screen
    - ISO boots -- you see its boot splash
    - then, it complains that it can't find the live filesystem that it just loaded.

All other solutions I tried or read about, extracts ISO and puts the content into partition.  That's not what I want.  Also, you forget which partition is what OS, and end up putting new release ISO into wrong partition.
I want to keep the downloaded ISO as is.

Old ISO designed for pure CD/DVD will not boot off USB, because it doesn't have harddisk emulation layer.  You can tell by 'fdisk -l'.  If it shows partition, then it has harddisk emulation.  You can turn those old ISO into bootable ISO using 'isohybrid', but this modifies the ISO file.

Nowdays, all Linux/Windows ISO can boot off USB.  You can even install Windows onto USB stick and boot off it, but few things doesn't work, like "Windows Update". :-)

Still looking...  Heck, time I spent on this, it would be cheaper to just buy a pack of USB sticks.
--
William

On Tuesday, September 29, 2015 9:42 AM, D. Hugh Redelmeier <hugh@mimosa.com> wrote:

| And the dd of one ISO also only works in the case that it is actually
| and image capable of working from USB instead of a CD/DVD, which is
| certainly true for many these days but is also not generic.

I have found that creating bootable USB sticks from dd-ing .iso files
to work very well for those distros that intend it.

This mechanism doesn't allow you to store other goodies on the stick.

I would like to have a convenient place to store my customization
data: some packages I always install, some updates to avoid repeated
fetching from the internet, some public keys, etc.  Only the
unetbootin-like processes seem to support this.