On Mon, 2006-12-04 at 11:29 +0800, Zhang, Yanmin wrote:
> On Sun, 2006-12-03 at 22:11 -0500, Jesse Keating wrote:
> > On Sunday 03 December 2006 20:25, Zhang, Yanmin wrote:
> > > I used below command line:
> > >
> > > pungi --comps /mnt/tmp2/tmp/repodata/comps.xml --yumconf /etc/yum.conf
> > > --destdir /mnt/tmp2/soft/pungi-0.1.0/work/iso --cachedir
> > > /mnt/tmp2/soft/pungi-0.1.0/work/cache --arch ia64 --version
> > > FedoraCore-test
> > > --discs 1
> >
> > Perhaps I have a logic flaw. I'll test this tomorrow with the current code
> > base.
> target_size is always 640.0 * 1024.0 * 1024. If bin_discs==1,
> it should be 640.0 * 1024.0 * 1024 * 5.
I worked out a patch to fix it. BTW, the patch also added bootargs to create cd
on ia64.
I succeeded in creating DVD and CD. But installation failed because libbdev
doesn't match
rpm parted's shared object. The ia64 mkinitrd under the development tree need
to be rebuilt.
Prarit,
Could you rebuild rpm mkinitrd?
Yanmin
---
diff -Nraup pungi-0.1.0/pypungi/pungi.py pungi-0.1.0_fix/pypungi/pungi.py
--- pungi-0.1.0/pypungi/pungi.py 2006-11-09 09:35:39.000000000 +0800
+++ pungi-0.1.0_fix/pypungi/pungi.py 2006-12-04 08:55:40.000000000 +0800
@@ -51,6 +51,9 @@ class Pungi:
timber.product_path = self.prodpath
#timber.reserve_size =
+ if timber.bin_discs == 1:
+ timber.target_size = timber.target_size*5
+
output = timber.main()
for line in output:
print line
@@ -68,27 +71,7 @@ class Pungi:
bootargs = ''
isodir = os.path.join(self.opts.destdir, self.opts.version,
self.opts.arch, 'iso')
os.makedirs(isodir)
- for disc in range(1, self.opts.discs + 1): # cycle through the CD isos
- volname = '"%s %s %s Disc %s"' % ('Fedora', self.opts.version,
self.opts.arch, disc) # hacky :/
- isoname = 'Fedora-%s-%s-disc%s.iso' % (self.opts.version,
self.opts.arch, disc)
- if disc == 1: # if this is the first disc, we want to set boot
flags
- if self.opts.arch == 'i386' or self.opts.arch == 'x86_64':
- bootargs = '-b isolinux/isolinux.bin -c isolinux/boot.cat
-no-emul-boot -boot-load-size 4 -boot-info-table'
- elif self.opts.arch == 'ppc':
- # Boy, it would be nice if somebody who understood ppc
helped out here...
- bootargs = ''
- else:
- bootargs = '' # clear out any existing bootargs
-
- os.system('mkisofs %s %s %s -o %s/%s %s' % (mkisofsargs,
- volname,
- bootargs,
- isodir,
- isoname,
-
os.path.join('%s-disc%s' % (self.topdir, disc))))
- os.system('cd %s; sha1sum %s >> SHA1SUM' % (isodir, isoname))
-
- if self.opts.discs > 1: # We've asked for more than one disc, make a
DVD image
+ if self.opts.discs == 1: # make a DVD image
# backup the main .discinfo to use a split one. This is an ugly
hack :/
content = open(discinfofile, 'r').readlines()
shutil.move(discinfofile, os.path.join(self.opts.destdir,
'.discinfo-%s' % self.opts.arch))
@@ -104,6 +87,8 @@ class Pungi:
isoname = 'Fedora-%s-%s-DVD.iso' % (self.opts.version,
self.opts.arch)
if self.opts.arch == 'i386' or self.opts.arch == 'x86_64':
bootargs = '-b isolinux/isolinux.bin -c isolinux/boot.cat
-no-emul-boot -boot-load-size 4 -boot-info-table'
+ elif self.opts.arch == 'ia64':
+ bootargs = '-b images/boot.img -no-emul-boot'
elif self.opts.arch == 'ppc':
# Boy, it would be nice if somebody who understood ppc helped
out here...
bootargs = ''
@@ -120,7 +105,28 @@ class Pungi:
os.unlink(os.path.join(self.topdir, 'repodata')) # remove our temp
symlink and move the orig repodata back
shutil.move(os.path.join(self.opts.destdir, 'repodata-%s' %
self.opts.arch), os.path.join(self.topdir, 'repodata'))
-
+ else: # We've asked for more than one disc
+ for disc in range(1, self.opts.discs + 1): # cycle through the CD
isos
+ volname = '"%s %s %s Disc %s"' % ('Fedora', self.opts.version,
self.opts.arch, disc) # hacky :/
+ isoname = 'Fedora-%s-%s-disc%s.iso' % (self.opts.version,
self.opts.arch, disc)
+ if disc == 1: # if this is the first disc, we want to set boot
flags
+ if self.opts.arch == 'i386' or self.opts.arch == 'x86_64':
+ bootargs = '-b isolinux/isolinux.bin -c
isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table'
+ elif self.opts.arch == 'ia64':
+ bootargs = '-b images/boot.img -no-emul-boot'
+ elif self.opts.arch == 'ppc':
+ # Boy, it would be nice if somebody who understood ppc
helped out here...
+ bootargs = ''
+ else:
+ bootargs = '' # clear out any existing bootargs
+
+ os.system('mkisofs %s %s %s -o %s/%s %s' % (mkisofsargs,
+ volname,
+ bootargs,
+ isodir,
+ isoname,
+
os.path.join('%s-disc%s' % (self.topdir, disc))))
+ os.system('cd %s; sha1sum %s >> SHA1SUM' % (isodir, isoname))
def main():
# This is used for testing the module
--
Fedora-buildsys-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/fedora-buildsys-list