Respinning Fedora Core 6
My favorite distro updates its packages frequently. If I wanted to install a new FC6 system, I would have to do updates all over again. So I decided to try the respins, which are distributions that contain the latest updates from the official repositories.
However, Fedora Unity, which packages the respins, currently only offer torrents. It's not that I don't like torrents, it's just that I can't use them. There was mention of Jigdo for the respins, but I can't find the .jigdo nor .template files. Update: Jigdo files are available now.
I was left with no option but do my own respin. Enter pungi:
So here's what I did:
I hit a few snags. Sometimes, because of connectivity issues, pungi failed to download some RPMs. When I reran pungi, it would fail because there are already existing RPMs in the cache and destination directories. That meant I had to start all over again: delete all previously downloaded packages and run pungi again. Pungi also failed when there were no associated source RPMs for certain packages -- weird, that one. I had to turn off downloading of the sources in the config file (
Through all that, I was finally able to get DVD as well as CD ISOs.
However, Fedora Unity, which packages the respins, currently only offer torrents. It's not that I don't like torrents, it's just that I can't use them. There was mention of Jigdo for the respins, but I can't find the .jigdo nor .template files. Update: Jigdo files are available now.
I was left with no option but do my own respin. Enter pungi:
The pungi project is two things. First and foremost it is a free opensource tool to spin Fedora installation trees / isos. It will be used to produce Fedora releases from Fedora 7 on until it is replaced by something better. Secondly pungi is a set of python libraries to build various compose like tools on top of. Pungi provides a library with various funtions to find, depsolve, and gather packages into a given location. It provides a second library with various functions to run various Anaconda tools on the gathered packages and create isos from the results.
So here's what I did:
- Install pungi. Since it's in Fedora Extras, it was a simple
yum install pungi. - Create my own configuration file:
# Pungi config file
[default]
product_name = Fedora Core
product_path = Fedora
iso_basename = FC
comps = /home/d3m/pungi/comps-fc6.xml
yumconf = /etc/yum.conf
destdir = /home/d3m/pungi/i386
cachedir = /home/d3m/pungi/cache
arch = i386
version = 6
discs = 5
getsource = No
Note that I used my Fedora box'syum.confto get packages from the repos I set there. - Create a working directory for the pungi files, and in it, two subdirectories for the destination and cache:
$ mkdir -p ~/pungi/i386; mkdir -p ~/pungi/cache
- In the working directory, I placed the
comps.xmlandconfig file. - Run pungi as root:
$ sudo pungi -c pungi.fc6.i386
- If all goes well, there would be ISOs under
~/pungi/i386/6/isos.
I hit a few snags. Sometimes, because of connectivity issues, pungi failed to download some RPMs. When I reran pungi, it would fail because there are already existing RPMs in the cache and destination directories. That meant I had to start all over again: delete all previously downloaded packages and run pungi again. Pungi also failed when there were no associated source RPMs for certain packages -- weird, that one. I had to turn off downloading of the sources in the config file (
getsource = No).Through all that, I was finally able to get DVD as well as CD ISOs.
I love your article, as I have the same requirements, to create an install image once a week.
ReplyDeleteThat way, if Fedora screws up, as they have, I can rebuild easily.
Tried to follow your instructions. Where does the config file go.
I could not follow, and since pungi has no man pages, I am a little stuck
Leslie
Hi, Leslie:
ReplyDeleteThanks for dropping by.
You can place the config file anywhere. Just invoke the whole path when running pungi:
$ sudo pungi -c /path/to/pungi.conf
What if I have already downloaded the RPMS and just need to
ReplyDeletecreate an appropriate bootable ISO with an updated Installer to
work on my problematic [new P965 with Jmicron 361 PATA controller]
that just wouldn't install on the default FC6 installer, "CDROM not Found" prob...
I already tried updating the ../Fedora/RPMS files from the web,
and the /repodata it just won't recognize the source "DVD" when I
tried installing, not sure if its the Joliet thing...
that when I did the recompiling using mkisofs:
"mkisofs -o /FC-6.20070425-i386-DVD.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -T -joliet-long -J /FC-6.20070425-i386-DVD"
it wouldn't work ---how about using pungi...
need help, Thanks!
Hey, Razz:
ReplyDeleteHmmm... Pungi also uses mkisofs when creating the disc. In https://hosted.fedoraproject.org/projects/pungi/browser/pypungi/pungi.py, it uses the following flags:
mkisofs = ['/usr/bin/mkisofs']
mkisofs.extend(['-v', '-U', '-J', '-R', '-T']) # common mkisofs flags
x86bootargs = ['-b', 'isolinux/isolinux.bin', '-c', 'isolinux/boot.cat', '-no-emul-boot', '-boot-load-size', '4', '-boot-info-table']
Not sure if this helps, but you may want to mount the ISO as loopback on a separate hard disk partition and install by pointing to that image. Or, if you have a spare machine, set up the source tree there and do an anaconda install. That doesn't address the issue of why Fedora doesn't recognize your drive, though.
Good luck and thanks for dropping by.
Hmmm.. yeah the question is when is the anaconda installer being updated.
ReplyDeleteI mean I just updated the packages in the distro but it seems that it is still using the same old installer that can't recognize my PATA IDE controller... I have options though like trying to boot from a USB drive to probably using another hardisk for installation purposes... but the
best way to go is to solve the problem with the installer not able to detect the CDROM that boots the installer on the first place...
It's the anaconda installer that is responsible for the initial
detection of storage devices right? Anyway I'm still not that well versed
in linux installation, I'm trying to work my way on installing FC6
on my new machine... but anyway thanks for the help, now I know that its not the mkisofs options that are wrong probably because the anaconda installer isn't being updated on the first place...