1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
# Eric Thibodeau
# 01 Jul 2008
# Google Summer of Code 2008: Gentoo Clustering LiveCD
## The build environment ##
If you want to be able to create liveCDs with as little hassle as possible you will need the following:
- The loop module, it's required for the licecd-stage2 creation of the kernel
modprobe loop
- dev-util/subversion
- dev-util/git
- dev-util/catalyst (am using CVS version which is close to 2.0.6)
** for some reason, catalyst won't create the skeleton dirs so here is the sequence to get you started
emerge dev-util/catalyst
mkdir -p /var/tmp/catalyst/ /var/tmp/catalyst/snapshots /var/tmp/catalyst/tmp/default
# edit /etc/catalyst/catalystrc and add relevant options such as:
export MAKEOPTS="-j6"
export FEATURES="parallel-fetch"
# you can set CFLAGS here but it's not recommended
# NOTE, don't try to use distcc, it's broken, the distcc user is not being created in the catalyst build
- http://sources.gentoo.org/viewcvs.py/releng/ pulled in as /var/svnroot/releng
mkdir -p /var/svnroot/
cd /var/svnroot/
svn co svn://anonsvn.gentoo.org/releng
- A recent snapshot (last one used was portage-20080629.tar.bz2), you have to modify the catalyst .spec files accordingly
** as soon as we get an official 2008.0 release, I will adapt the spect files to that official, nailed down reference **
So get a snapshot and place it in /var/tmp/catalyst/snapshots (we are doing something evil here...):
wget ftp://mirrors.tera-byte.com/pub/gentoo/snapshots/portage-latest.tar.bz2 -O /var/tmp/catalyst/snapshots/portage-20080629.tar.bz2
- A recent stage3, this eliminates many problems related to circular dependancies and collisions. We used drobbin's packages from funtoo.org
mkdir -p /var/tmp/catalyst/builds/drobbins/
cd /var/tmp/catalyst/builds/drobbins/
wget http://www.funtoo.org/linux/amd64/funtoo-amd64-2008.06.27/stage3-amd64-2008.06.27.tar.bz2
- This git checked out into /var/git/:
mkdir -p /var/git/
cd /var/git/
git clone git://git.overlays.gentoo.org/proj/clustering-livecd.git
- The abovementionned snapshot suffers from the following bugs (whch have been fixed if you take something more recent):
http://bugs.gentoo.org/show_bug.cgi?id=229103 "www-client/mozilla-firefox-bin-2.0.0.14 missing pango-dependency"
http://bugs.gentoo.org/show_bug.cgi?id=206753 "gnome-base/gnome-desktop-2.20.3 - parser errors during emerge"
** This bug isn't going to be resolved any time soon:
http://bugs.gentoo.org/show_bug.cgi?id=142637 "missing dependency in eutils.eclass"
So you have to edit the openldap ebuild (currently the setup pulls in 2.4.10) and add DEPEND="sys-apps/shadow":
vi /var/tmp/catalyst/snapshot_cache/20080629/portage/net-nds/openldap/openldap-2.4.10.ebuild
ebuild /var/tmp/catalyst/snapshot_cache/20080629/portage/net-nds/openldap/openldap-2.4.10.ebuild digest
- We also need (some) overlays:
# NOTE!!! I set up my layman to put all files into /usr/local/portage/ (and not de thefault of /usr/portage/local)
layman -a sunrise
## Before you can build the LiveCD/DVD, you have to build the nfsroot which is to be included in the iso...so skip to the NFSroot-HOWTO and come back here when you're done ;)
## Actually building the CD ##
** NOTE: if you have lots of RAM: **
You can build everything in RAM with no problems as long as tmpfs has at least 6Gigs (for the LiveCD stages)
alias mnttmp='mount -t tmpfs -o size=6G,noatime catalystbuild /var/tmp/catalyst/tmp/default'
**
# Barring the bugs 229103 and 206753, the following sequence should get you down to a LiveCD (haha...HAHA...HAHAHAHAHA)
cd clustering-livecd/catalyst/releases/2008.0/specs/amd64/
for I in stage*
do
mnttmp
catalyst -f $I
# we empty out stuff we don't need anymore ;)
umount /var/tmp/catalyst/tmp/default
done
mnttmp
catalyst -f livecd-stage1.spec
catalyst -f livecd-stage2.spec
# At the end, an iso image should be waiting for you as /tmp/livecd-amd64-installer-2008.0.iso ;)
|