Re: using isohybrid for usb bootable isos
Thomas Schmitt writes:
> Hi,
>
> i'm the developer of xorriso. (Cc me, please)
>
> Joey Hess wrote:
> > Assuming debian-cd does
> > switch to xorriso, so after it supports jidgo
>
> We should begin to write down an exact specification of the jigdo
> files which xorriso shall produce during the run by which it
> generates an ISO image. (Shall it generate a ready-to-mount image
> at all ?)
>
> I did read
> http://atterer.org/jigdo/debian-jigdo-mini-howto#HOWJIGDOWORKS
> and believe to understand the principles.
> I assume that xorriso shall act like jigdo-file and produce
> at least the .template file. Is there a byte-by-byte specification
> of its format ?
I haven't seen such specification, however, this machinery is already written
and in place. If you pull from cdrkit from svn you can get Steve's code
addition to genisoimage. These files are self-contained, ignoring certain
error-reporting related macros et all:
* md5.c (we have that already in libburnia)
* jte.c and jte.h (main routines, we should learn to use)
* endian.c and rsync.c (supporting routines)
* boot-alpha.c, boot-hppa.c, boot-mips.c boot-mispel.c - we can ignore these
for now, but they add stuff specific to booting on these architectures, instead
of post-process them later.
(so, Steve's code should serve us as specification;-)
> What about the .jigdo file ? Is it prepared by a different tool ?
> Shall xorriso produce parts of it ?
> Or shall xorriso read it in order to learn which files are known ?
image generator should output both *.template and .jigdo files.
The whole thing starts with initializing the *.template by
jte.c:write_template_header(),
Then at all places where data is to be written to the iso image, same data are
passed to jte.c:jtwrite() to be put into *.template or store an entry which
hashsum is to be added later to the *.jigdo file (I haven't completely
deciphered these actions, yet;-).
When *.template is finished, it calls jte.c:write_jigdo_file() to write the
entries (actually their hashsums) not present in template, to the *.jigdo file.
Rf: relevant jigdo options are:
(explained at http://www.einval.com/~steve/software/JTE/)
genisoimage -J -r -o /home/steve/test1.iso \
-jigdo-jigdo /home/steve/test1.jigdo \
-jigdo-template /home/steve/test1.template \
-jigdo-min-file-size 16384 \
-jigdo-ignore "README*" \
-jigdo-force-md5 "/pool/" \
-jigdo-map Debian=/mirror/debian \
-md5-list /home/steve/md5.list \
/mirror/jigdo-test
--
pub 4096R/0E4BD0AB <people.fccf.net/danchev/key pgp.mit.edu>
Reply to: