Customised Fedora DVD using new Kernel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

 For a number of reasons we are trying to build our own customised
dvd (based on Fedora) using the latest kernel (2.6.20).  Currently we 
are running with
Fedora 3.  I know this is very old, and it is our intention to upgrade to a
newer release in the near future.  Unfortunately, for various reasons we 
are
being forced to run with Fedora 3 a little longer.  For future reference we
would very much like the ability to personalize our own Fedora distro to 
take account
for example of the ever changing hardware requirements and special 
software requirements.

 We can successfully build and install the kernel rpm using the tar ball
from .org (linux-2.6.20.tar.bz2). Using the commands
tar xfvj linux-2.6.20.tar.bz2
Edited the Makefile for
EXTRAVERSION = -1
make mrproper
make defconfig
make rpm

This works fine; we have to edit the /etc/grub.conf and run mkinitrd after
the rpm has been installed.

We have succesfully replicated the original distro DVD's by performing the
following commands:-

Step 1
export PYTHONPATH=/usr/lib/anaconda
export PATH="$PATH:/usr/lib/anaconda-runtime"
export FCBASE=`pwd`
mkdir -p $FCBASE/fc3/i386

Step 2 (In this case I copied the original individual Fedora 3 CD's)
mount -o ro,loop ../FC3-i386-disc1.iso /mnt
cp -a /mnt/* $FCBASE/fc3/i386/
umount /mnt/
mount -o ro,loop ../FC3-i386-disc2.iso /mnt
cp -a /mnt/* $FCBASE/fc3/i386/
umount /mnt/
mount -o ro,loop ../FC3-i386-disc3.iso /mnt
cp -a /mnt/* $FCBASE/fc3/i386/
umount /mnt/
mount -o ro,loop ../FC3-i386-disc4.iso /mnt
cp -a /mnt/* $FCBASE/fc3/i386/
umount /mnt/
mount -o ro,loop ../FC3-i386-SRPMS-disc1.iso /mnt
cp -a /mnt/* $FCBASE/fc3/i386/
umount /mnt/
mount -o ro,loop ../FC3-i386-SRPMS-disc2.iso /mnt
cp -a /mnt/* $FCBASE/fc3/i386/
umount /mnt/
mount -o ro,loop ../FC3-i386-SRPMS-disc3.iso /mnt
cp -a /mnt/* $FCBASE/fc3/i386/
umount /mnt/
mount -o ro,loop ../FC3-i386-SRPMS-disc4.iso /mnt
cp -a /mnt/* $FCBASE/fc3/i386/
umount /mnt/

Step 3
find $FCBASE/fc3 -name TRANS.TBL -exec rm -f {} \;
find $FCBASE/fc3 -name boot.cat -exec rm -f {} \;

Step 4
genhdlist --productpath=Fedora $FCBASE/fc3/i386

pkgorder $FCBASE/fc3/i386 i386 Fedora | tee $FCBASE/fc3/pkgfile

buildinstall --pkgorder $FCBASE/fc3/pkgfile --version 3 --product 
"Redora Core" --release "Fedora Core 3" --prodpath Fedora $FCBASE/fc3/i386

Step 5 I used a slightly modifed splittree.py script to handle the 
generation of the dvd's.
./splittree.py --arch=i386 --total-discs=2 --bin-discs=1 --src-discs=1
--release-string="Fedora Core 3" --pkgorderfile=$FCBASE/fc3/pkgfile
--distdir=$FCBASE/fc3/i386 --srcdir=$FCBASE/fc3/i386/SRPMS 
--productpath=Fedora

Step 6
rm -rf $FCBASE/fc3/i386-disc1/Fedora/base/hdlist
genhdlist --productpath=Fedora --withnumbers --fileorder 
$FCBASE/fc3/pkgfile
$FCBASE/fc3/i386-disc1

Step 7
mkisofs -R -J -T -v -no-emul-boot -boot-load-size 4 -boot-info-table -V
"Fedora Core 3" -b isolinux/isolinux.bin -c isolinux/boot.cat -x "lost+found"
-o FC3-i386-dvd1.iso i386-disc1

The above process works fine for the Fedora 3 kernel-2.6.9-1.667.src.rpm
The rpm has a version of 2.6.9 and a release of 1.667.

We added an EXTRAVERSION of -1 to the kernel Makefile, built the kernel 
and ended up with an rpm called
kernel-2.6.201-1.i386.rpm(???strange name???).  If this rpm is installed 
we get a kernel (uname) 2.6.20-1 and a /lib/modules
directory of 2.6.20-1 (which is what we expected)

However if we put this new rpm in the RPMS area before step 4 above and 
continue with the above build
process we get the message
$KERNELROOT/lib/modules/2.6.201-1 is not a valid modules directory. 
(which we can see would be true).

This is because the rpm has been built with a VERSION of 2.6.21(???) and 
a RELEASE of 1,
(See script mk-images(anaconda-runtime-10.1.0.2-1):- 
rpm --nodigest --nosignature --qf  '%{VERSION}-%{RELEASE}' -qp 
kernel-2.6.201-1.i386.rpm)

We have hacked a Makefiles and a script in the kernel rpm build area and 
forced the above build to
complete....(did not install for other reasons we have yet to understand).

Our first concern here is why does the buildinstall script fall 
over.....or more to the point
how do we stop the rpm from being built with the wrong VERSION number?

Does anybody know or have any ideas??

Thanks


[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux