Sunday, October 18, 2009

SBR600: Building Fedora LiveCD - Success Finally -- Failure

After some more troubleshooting with my professor Chris Tyler. I finally managed to create my very own Fedora LiveCd.

Template for my KickStart File: anaconda-ks.cfg
Can be found in the /root/ directory, copy that and place it in your home directory
and change the owner of the file so you can edit it.
chown 'username':'groupname' anaconda-ks.cfg

In my case
chown bchao:bchao anaconda-ks.cfg

Here are the problems I came across when incorporating my package into the KickStart file.

1. Forgot how to add my package and repo information into the kickstart
2. The Architecture of my package is different
3. Repo Directory Config.

Solutions
1. My professor advised me to add the following line in my kickstart file

repo --name="Repo Name" --baseurl='repo url'
in my case
repo --name="Boris Chao Repo" --baseurl=http://scotland.proximity.on.ca/bchaorepo/

and place your package in the packages section.
%packages
@base
@system-tools
@text-internet
@base-x
...
irssi <-- my package 2. Because the CDOT machine HongKong is running Fedora 11, and my package was made under Fedora 10, the dependencies for the my package would be different for both machines. Thanks to my professor for realizing my mistake, he advised me to grab the source rpm and rebuild it. Here is the snippet of my conversation on irc. 22:52 <> this is what i get when i run the livecdcreator command
22:52 <> Error creating Live CD : Failed to build transaction : Missing
Dependency: libcrypto.so.7()(64bit) is needed by package
irssi-0.8.14-1.fc10.x86_64 (Boris Chao Repo)
22:53 <@ctyler> where are you building?
22:53 <> When i checked which package that file belonged to it referred
to the openssl package
22:53 <> hongkong
22:53 <> i checked hongkong and the openssl package was installed
22:54 <@ctyler> you're probably building an F11 live CD then, and your irssi
package was build for f10, so it may be looking for a version
of that library that doesn't exist in F11.
22:54 <@ctyler> just to a quick rebuild of the srpm on hongkong to update it
for F11, and then use that.
22:54 <> oh..ok thanks...didn't think of that
22:55 <@ctyler> rpmbuild --rebuild irssi*src.rpm
22:55 <@ctyler> (make sure you've done the rpmdev-setuptree thing first)
22:57 <> ok

After following those steps, I was on my way to building my LiveCD

3. Since I added New RPMs in my repository directory, I would have had to re-create the repo data for that directory and sign the files. Of course, I forgot recreate the repo data, after my 2 attempt to create my LiveCd, I realized it was still grabbing from my old repo data. Luckily this was only a simple command away.

rpm --addsign *.rpm <- to sign the rpm packages createrepo . <- to create repo data After this little bump, my LiveCd became a LiveDVD as the final product as the size was 1.2GB wow... I will later on try with QEMU ( virtual machine ) to see if my DVD works or not. My Files Boris-LiveDVD = Here
Kickstart File = Here

1 comments:

Chris said...

Hi Boris --

You might want to do this using the LiveCD kickstarts as a starting point rather than the Anaconda kickstart. The LiveCD kickstarts contain some optimizations that keep the image size down (to fit on a CD) and to allow automatic login etc. in the live environment.

-Chris

Post a Comment