Gentoo Archives: gentoo-releng

From: Brad House <brad_mssw@g.o>
To: gentoo-releng@l.g.o, base-system@g.o
Cc: drobbins@g.o, beejay@g.o, gentoo-core@l.g.o
Subject: [gentoo-releng] catalyst+genkernel livecd support ready for testing
Date: Sat, 17 Jan 2004 22:53:19
Hello all.
I have completed the livecd support for the remaining components
(genkernel, baselayout, and some catalyst changes)

Quick notes on how to get started:
- sync your latest portage tree
- grab the latest catalyst cvs    gentoo/src/catalyst
- tag baselayout- stable for your arch, as it has
  _necessary_ fixes for livecds, and make sure your livecd-stage1
  spec file has it as a dependancy.
- create an arch runscript 'archscript' for your system arch if you're not
  on x86.  This entails primarily setting up the bootloader portion of
  your livecd.  Please refer to examples/livecd/runscript/
  if you have any questions.  The
  should be used as your standard 'runscript' setting in your spec files
  as it should be totally arch-independant.
- You should base your spec files on the ones available in
- Assuming you have a fairly current standard stage3 build, you can build
  an x86 livecd by doing this from the catalyst directory:
  ./catalyst -f examples/generic/snapshot.spec && ./catalyst -f
examples/livecd/x86/x86-livecd-stage1-20040114.spec && ./catalyst -f
examples/livecd/x86/x86-livecd-stage2-20040114.spec && ./catalyst -f
- Once a livecd stage3 is built, you can take that and simply run mkisofs
  on it, or if you're on x86, you cat use  provided in
  the root of catalyst.  You must be within the 'cdroot' directory of
  the stage 3 to run it.  It will create ../gentoo.iso

  - We currently support 3 loop types which the same type must be
    passed to the livecd-stage2 and livecd-stage3 spec files in the
    'looptype' parameter.
    * zisofs - Compresses each file in the filesystem.  Creates this
               filesystem in the  /zisofs directory in the root of the
               livecd.  You must pass 'looptype=zisofs loop=/zisofs'
               to the kernel during boot so the initrd knows what to do.
               You must also emerge app-misc/zisofs-tools  in your system
               not on the livecd in order to make use of the mkzftree
               utility.  A second requirement is to have transparent
               decompression extension compiled into your kernel under
               'ISO 9660 CDROM file system support', you will get
               binfmt errors otherwise during boot, and it will not
               work at all.
    * normal - Creates a standard non-compressed loop filesystem.  It
               creates a /livecd.loop file in the root of the livecd.
               You must pass 'looptype=normal loop=/livecd.loop' to the
               kernel during boot so the initrd knows what to do.
    * noloop - Copies the entire filesystem into the root of the cd,
               totally uncompressed.  You must pass 'looptype=noloop'
               to the kernel during boot so the initrd knows what to
    * In the future we'll have more options, this should be a good start.
      currently zisofs creates the smallest livecds as it is the only one
      that uses compression
  - 2 new required fields in livecd-stage2 and livecd-stage3
    * looptype
    * archscript
    they are discussed above

  - create an ebuild for autoconfig (to automatically configure
    nics, run dhcpcd, etc).  Going to pull the existing script
    out of the old livecd, as it seems to work well.

Waiting on:
  - Azarah to commit baselayout changes I've submitted, I have them
    in the -r4 build, but they're not committed to the rc-scripts
    cvs tree.


gentoo-releng@g.o mailing list