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
Message-Id: 65345.68.105.173.45.1074379977.squirrel@mail.mainstreetsoftworks.com
1 Hello all.
2 I have completed the livecd support for the remaining components
3 (genkernel, baselayout, and some catalyst changes)
4
5 Quick notes on how to get started:
6 - sync your latest portage tree
7 - grab the latest catalyst cvs gentoo/src/catalyst
8 - tag baselayout-1.8.6.12-r4.ebuild stable for your arch, as it has
9 _necessary_ fixes for livecds, and make sure your livecd-stage1
10 spec file has it as a dependancy.
11 - create an arch runscript 'archscript' for your system arch if you're not
12 on x86. This entails primarily setting up the bootloader portion of
13 your livecd. Please refer to examples/livecd/runscript/x86-runscript.sh
14 if you have any questions. The
15 examples/livecd/runscript/default-runscript.sh
16 should be used as your standard 'runscript' setting in your spec files
17 as it should be totally arch-independant.
18 - You should base your spec files on the ones available in
19 examples/livecd/x86/x86-livecd-stage?-20040114.spec
20 - Assuming you have a fairly current standard stage3 build, you can build
21 an x86 livecd by doing this from the catalyst directory:
22 ./catalyst -f examples/generic/snapshot.spec && ./catalyst -f
23 examples/livecd/x86/x86-livecd-stage1-20040114.spec && ./catalyst -f
24 examples/livecd/x86/x86-livecd-stage2-20040114.spec && ./catalyst -f
25 examples/livecd/x86/x86-livecd-stage3-20040114.spec
26 - Once a livecd stage3 is built, you can take that and simply run mkisofs
27 on it, or if you're on x86, you cat use x86-isogen.sh provided in
28 the root of catalyst. You must be within the 'cdroot' directory of
29 the stage 3 to run it. It will create ../gentoo.iso
30
31
32 NOTES:
33 - We currently support 3 loop types which the same type must be
34 passed to the livecd-stage2 and livecd-stage3 spec files in the
35 'looptype' parameter.
36 * zisofs - Compresses each file in the filesystem. Creates this
37 filesystem in the /zisofs directory in the root of the
38 livecd. You must pass 'looptype=zisofs loop=/zisofs'
39 to the kernel during boot so the initrd knows what to do.
40 You must also emerge app-misc/zisofs-tools in your system
41 not on the livecd in order to make use of the mkzftree
42 utility. A second requirement is to have transparent
43 decompression extension compiled into your kernel under
44 'ISO 9660 CDROM file system support', you will get
45 binfmt errors otherwise during boot, and it will not
46 work at all.
47 * normal - Creates a standard non-compressed loop filesystem. It
48 creates a /livecd.loop file in the root of the livecd.
49 You must pass 'looptype=normal loop=/livecd.loop' to the
50 kernel during boot so the initrd knows what to do.
51 * noloop - Copies the entire filesystem into the root of the cd,
52 totally uncompressed. You must pass 'looptype=noloop'
53 to the kernel during boot so the initrd knows what to
54 do.
55 * In the future we'll have more options, this should be a good start.
56 currently zisofs creates the smallest livecds as it is the only one
57 that uses compression
58 - 2 new required fields in livecd-stage2 and livecd-stage3
59 * looptype
60 * archscript
61 they are discussed above
62
63 TODO:
64 - create an ebuild for autoconfig (to automatically configure
65 nics, run dhcpcd, etc). Going to pull the existing script
66 out of the old livecd, as it seems to work well.
67
68 Waiting on:
69 - Azarah to commit baselayout changes I've submitted, I have them
70 in the -r4 build, but they're not committed to the rc-scripts
71 cvs tree.
72
73 -Brad
74
75 --
76 gentoo-releng@g.o mailing list