Re: [Fedora-livecd-list] [PATCH]: Fix --base-on
Jeremy Katz wrote: On Tue, 2007-10-23 at 20:14 -0500, Douglas McClendon wrote: Jeremy Katz wrote: As for what you said, and Rahul- It sounded like he wanted something akin to the traditional installer. I.e. anaconda fullscreen with no windowmanager or desktop. Right -- the two are different. The main connection is "args coming from the command line". And I'm trying something now which would do Rahul's request. If it works, it might be worth having available and undocumented. Can you give an example or two of things that would be supported in the generic case that you speak of? Are we talking something crazy like a kernel cmdline of "autorun='firefox file:///usr/share/doc/fedora/releasenotes'" Something like that. Or perhaps to run an arbitrary dogtail script after the user logs in. Yes, really crazy. But if we want to get to where the QA is being done in an automated fashion, crazy is probably the only way to get there :-/ Thanks, now it is clear. It all sounds good. Keep in mind the coolness that is- a) use isodump to extract the kernel, initrd, and syslinux.cfg from a recently spun livecd iso b) grab the default append string from the syslinux.cfg c) add your dogtail invocation args to that append string d) launch qemu with -kernel -initrd -append, and -vnc, and using vncrec to record the session e) post the vnc video transcoded to a popular format (mpg, swf) to a website. (for times when an optional visual inspection pass of dogtail test results will be useful in addition to any completely automated pass/fail test scripts) -dmc -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
Re: [Fedora-livecd-list] [PATCH]: Fix --base-on
On Tue, 2007-10-23 at 20:14 -0500, Douglas McClendon wrote: > Jeremy Katz wrote: > > On Tue, 2007-10-23 at 17:58 -0500, Douglas McClendon wrote: > >> TODO: since livecd-tools was added to the dev-spin, it seems like the > >> most obvious minimal QA that should be done is to boot an RC of the > >> dev-livecd, mount some tmpspace, and then run livecd-creator (with > >> --tmpdir) with --base-on pointing at /dev/live, to see if you can easily > >> perform some minimal respin. E.g. perhaps just kickstart that adds a > >> couple new packages, maybe adds a 3rd party repo, and changes the > >> isolinux splash. And as a second QA test, respin itself without the > >> base-on option. > > > > Accepting patches :-) I think the biggest thing is being able to > > (easily) hook in something automated to run as part of the live boot. > > While it's easy enough to add something to run anaconda as Rahul asked > > about, being able to run anything generically is a bit trickier. > > Hmm. I wasn't talking about any patches in the above, unless of course > the QA shows that something doesn't work. > > As for what you said, and Rahul- It sounded like he wanted something > akin to the traditional installer. I.e. anaconda fullscreen with no > windowmanager or desktop. Right -- the two are different. The main connection is "args coming from the command line". And I'm trying something now which would do Rahul's request. If it works, it might be worth having available and undocumented. > Can you give an example or two of things that > would be supported in the generic case that you speak of? Are we > talking something crazy like a kernel cmdline of > "autorun='firefox file:///usr/share/doc/fedora/releasenotes'" Something like that. Or perhaps to run an arbitrary dogtail script after the user logs in. Yes, really crazy. But if we want to get to where the QA is being done in an automated fashion, crazy is probably the only way to get there :-/ Jeremy -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
Re: [Fedora-livecd-list] [PATCH]: Fix --base-on
Jeremy Katz wrote: On Tue, 2007-10-23 at 17:58 -0500, Douglas McClendon wrote: TODO: since livecd-tools was added to the dev-spin, it seems like the most obvious minimal QA that should be done is to boot an RC of the dev-livecd, mount some tmpspace, and then run livecd-creator (with --tmpdir) with --base-on pointing at /dev/live, to see if you can easily perform some minimal respin. E.g. perhaps just kickstart that adds a couple new packages, maybe adds a 3rd party repo, and changes the isolinux splash. And as a second QA test, respin itself without the base-on option. Accepting patches :-) I think the biggest thing is being able to (easily) hook in something automated to run as part of the live boot. While it's easy enough to add something to run anaconda as Rahul asked about, being able to run anything generically is a bit trickier. Hmm. I wasn't talking about any patches in the above, unless of course the QA shows that something doesn't work. As for what you said, and Rahul- It sounded like he wanted something akin to the traditional installer. I.e. anaconda fullscreen with no windowmanager or desktop. Can you give an example or two of things that would be supported in the generic case that you speak of? Are we talking something crazy like a kernel cmdline of "autorun='firefox file:///usr/share/doc/fedora/releasenotes'" I'm just don't quite understand what you were getting at. And I would love it if the dev-livecd could include qemu (space impact?), so that the resulting livecd's could be virtually test booted trivially. The developer config includes the virtualization group and thus should have qemu and kvm as well as virt-manager cool. I was lazy and just did a grep qemu. -dmc -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
Re: [Fedora-livecd-list] [PATCH]: Fix --base-on
On Tue, 2007-10-23 at 17:58 -0500, Douglas McClendon wrote: > TODO: since livecd-tools was added to the dev-spin, it seems like the > most obvious minimal QA that should be done is to boot an RC of the > dev-livecd, mount some tmpspace, and then run livecd-creator (with > --tmpdir) with --base-on pointing at /dev/live, to see if you can easily > perform some minimal respin. E.g. perhaps just kickstart that adds a > couple new packages, maybe adds a 3rd party repo, and changes the > isolinux splash. And as a second QA test, respin itself without the > base-on option. Accepting patches :-) I think the biggest thing is being able to (easily) hook in something automated to run as part of the live boot. While it's easy enough to add something to run anaconda as Rahul asked about, being able to run anything generically is a bit trickier. > And I would love it if the dev-livecd could include qemu (space > impact?), so that the resulting livecd's could be virtually test booted > trivially. The developer config includes the virtualization group and thus should have qemu and kvm as well as virt-manager Jeremy -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
Re: [Fedora-livecd-list] [PATCH]: Fix --base-on
On Tue, 2007-10-23 at 17:45 -0400, Chris Lalancette wrote: > I'm working with the latest version of livecd-creator available in > rawhide, > which is livecd-tools-012-1.fc8. I noticed a bug when using the --base-on > option; basically, it is testing for the existence of the squashfs.img, but > that > path can't possibly exist until the ISO has been loopback mounted. The > attached > patch moves the mounting of the ISO before the check to see if the squashfs > filesystem exists. With this patch, I am able to successfully use the > --base-on > option. Thanks for the patch; applied and will be in 013 (which I'm hoping will be the final build for F8 and that I can build tomorrow) Jeremy -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
[Fedora-livecd-list] creator/livecd-creator
creator/livecd-creator | 10 +- 1 files changed, 5 insertions(+), 5 deletions(-) New commits: commit 14c621362a23f1d8080f535c9cdcdb3c10287602 Author: Chris Lalancette <[EMAIL PROTECTED]> Date: Tue Oct 23 17:45:02 2007 -0400 Fix --base-on I'm working with the latest version of livecd-creator available in rawhide, which is livecd-tools-012-1.fc8. I noticed a bug when using the --base-on option; basically, it is testing for the existence of the squashfs.img, but that path can't possibly exist until the ISO has been loopback mounted. The attached patch moves the mounting of the ISO before the check to see if the squashfs filesystem exists. With this patch, I am able to successfully use the --base-on option. Signed-off-by: Chris Lalancette <[EMAIL PROTECTED]> diff --git a/creator/livecd-creator b/creator/livecd-creator index 8314cfe..b0a2cf4 100755 --- a/creator/livecd-creator +++ b/creator/livecd-creator @@ -418,6 +418,11 @@ class ImageCreator(object): isoloop = LoopbackMount(base_on, "%s/base_on_iso" %(self.build_dir,)) +try: +isoloop.mount() +except MountError, e: +raise InstallationError("Failed to loopback mount '%s' : %s" % (base_on, e)) + # legacy LiveOS filesystem layout support, remove for F9 or F10 if os.path.exists("%s/LiveOS/squashfs.img" %(isoloop.mountdir,)): squashloop = LoopbackMount("%s/LiveOS/squashfs.img" %(isoloop.mountdir,), @@ -429,11 +434,6 @@ class ImageCreator(object): "squashfs") try: -try: -isoloop.mount() -except MountError, e: -raise InstallationError("Failed to loopback mount '%s' : %s" % (base_on, e)) - if not os.path.exists(squashloop.lofile): raise InstallationError("'%s' is not a valid live CD ISO : squashfs.img doesn't exist" % base_on) -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
Re: [Fedora-livecd-list] [PATCH]: Fix --base-on
Chris Lalancette wrote: All, I'm working with the latest version of livecd-creator available in rawhide, which is livecd-tools-012-1.fc8. I noticed a bug when using the --base-on option; basically, it is testing for the existence of the squashfs.img, but that path can't possibly exist until the ISO has been loopback mounted. The attached patch moves the mounting of the ISO before the check to see if the squashfs filesystem exists. With this patch, I am able to successfully use the --base-on option. TODO: since livecd-tools was added to the dev-spin, it seems like the most obvious minimal QA that should be done is to boot an RC of the dev-livecd, mount some tmpspace, and then run livecd-creator (with --tmpdir) with --base-on pointing at /dev/live, to see if you can easily perform some minimal respin. E.g. perhaps just kickstart that adds a couple new packages, maybe adds a 3rd party repo, and changes the isolinux splash. And as a second QA test, respin itself without the base-on option. And I would love it if the dev-livecd could include qemu (space impact?), so that the resulting livecd's could be virtually test booted trivially. -dmc -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
[Fedora-livecd-list] [PATCH]: Fix --base-on
All, I'm working with the latest version of livecd-creator available in rawhide, which is livecd-tools-012-1.fc8. I noticed a bug when using the --base-on option; basically, it is testing for the existence of the squashfs.img, but that path can't possibly exist until the ISO has been loopback mounted. The attached patch moves the mounting of the ISO before the check to see if the squashfs filesystem exists. With this patch, I am able to successfully use the --base-on option. Signed-off-by: Chris Lalancette <[EMAIL PROTECTED]> diff -up livecd-tools-012/creator/livecd-creator.orig livecd-tools-012/creator/livecd-creator --- livecd-tools-012/creator/livecd-creator.orig 2007-10-22 10:38:01.0 -0400 +++ livecd-tools-012/creator/livecd-creator 2007-10-22 10:39:14.0 -0400 @@ -391,6 +391,11 @@ class ImageCreator(object): isoloop = LoopbackMount(base_on, "%s/base_on_iso" %(self.build_dir,)) +try: +isoloop.mount() +except MountError, e: +raise InstallationError("Failed to loopback mount '%s' : %s" % (base_on, e)) + # legacy LiveOS filesystem layout support, remove for F9 or F10 if os.path.exists("%s/LiveOS/squashfs.img" %(isoloop.mountdir,)): squashloop = LoopbackMount("%s/LiveOS/squashfs.img" %(isoloop.mountdir,), @@ -402,11 +407,6 @@ class ImageCreator(object): "squashfs") try: -try: -isoloop.mount() -except MountError, e: -raise InstallationError("Failed to loopback mount '%s' : %s" % (base_on, e)) - if not os.path.exists(squashloop.lofile): raise InstallationError("'%s' is not a valid live CD ISO : squashfs.img doesn't exist" % base_on) -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
[Fedora-livecd-list] config/livecd-fedora-developer.ks
config/livecd-fedora-developer.ks | 24 +++- 1 files changed, 23 insertions(+), 1 deletion(-) New commits: commit 9e40799a24d991ee54b47bf56258f211a7ed Author: Jeremy Katz <[EMAIL PROTECTED]> Date: Tue Oct 23 16:43:48 2007 -0400 enable debuginfo repo by default for developer live image (from overholt) diff --git a/config/livecd-fedora-developer.ks b/config/livecd-fedora-developer.ks index a226b71..9849283 100644 --- a/config/livecd-fedora-developer.ks +++ b/config/livecd-fedora-developer.ks @@ -83,7 +83,29 @@ eclipse-demos %end %post -# TODO: Enable debuginfo repository +# Enable debuginfo repository (useful for frysk, gdb, etc.) +awk ' +BEGIN { + debuginfo = 0 +} + /^\[.*\]/ { + if (/debuginfo/) { +debuginfo = 1 + } else { +debuginfo = 0 + } + print + next +} + /enabled=0/ && debuginfo { + print "enabled=1" + next +} +{ + print + next +}' < /etc/yum.repos.d/fedora.repo > /etc/yum.repos.d/fedora.repo.tmp +mv /etc/yum.repos.d/fedora.repo{.tmp,} cat >> /etc/rc.d/init.d/fedora-live << EOF # Put link to demonstration videos on the desktop -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
[Fedora-livecd-list] creator/livecd-creator
creator/livecd-creator | 24 +++- 1 files changed, 15 insertions(+), 9 deletions(-) New commits: commit 4cbf4002db69898ede94a64bdbf780e25e710d7b Author: Jeremy Katz <[EMAIL PROTECTED]> Date: Tue Oct 23 13:51:20 2007 -0400 don't require anaconda-runtime; new ppc64-utils has all of the pieces needed to boot a cd diff --git a/creator/livecd-creator b/creator/livecd-creator index bc1917f..8314cfe 100755 --- a/creator/livecd-creator +++ b/creator/livecd-creator @@ -1316,6 +1316,17 @@ class ppcImageCreator(ImageCreator): if rc != 0: raise InstallationError("ISO creation failed!") +def _copyBootFile(self, file, dest): +# get the file from either anaconda-runtime or ppc64-utils +if os.path.exists("%s/install_root/usr/share/ppc64-utils/%s" %(self.build_dir, file)): +shutil.copyfile("%s/install_root/usr/share/ppc64-utils/%s" +%(self.build_dir, file), dest) +elif os.path.exists("%s/install_root/usr/lib/anaconda-runtime/boot/%s" %(self.build_dir, file)): +shutil.copyfile("%s/install_root/usr/lib/anaconda-runtime/boot/%s" +%(self.build_dir, file), dest) +else: +raise InstallationError("Unable to find boot file %s" %(file,)) + def configureBootloader(self): """configure the boot loader""" havekernel = { 32: False, 64: False } @@ -1323,20 +1334,17 @@ class ppcImageCreator(ImageCreator): os.makedirs(self.build_dir + "/out/ppc") # copy the mapping file to somewhere we can get to it later - shutil.copyfile("%s/install_root/usr/lib/anaconda-runtime/boot/mapping" %(self.build_dir,), -"%s/out/ppc/mapping" %(self.build_dir,)) +self._copyBootFile("mapping", "%s/out/ppc/mapping" %(self.build_dir,)) # Copy yaboot and ofboot.b in to mac directory os.makedirs(self.build_dir + "/out/ppc/mac") - shutil.copyfile("%s/install_root/usr/lib/anaconda-runtime/boot/ofboot.b" %(self.build_dir), -"%s/out/ppc/mac/ofboot.b" %(self.build_dir,)) +self._copyBootFile("ofboot.b", "%s/out/ppc/mac/ofboot.b" %(self.build_dir,)) shutil.copyfile("%s/install_root/usr/lib/yaboot/yaboot" %(self.build_dir), "%s/out/ppc/mac/yaboot" %(self.build_dir,)) # Copy yaboot and ofboot.b in to chrp directory os.makedirs(self.build_dir + "/out/ppc/chrp") - shutil.copyfile("%s/install_root/usr/lib/anaconda-runtime/boot/bootinfo.txt" %(self.build_dir), -"%s/out/ppc/bootinfo.txt" %(self.build_dir,)) +self._copyBootFile("bootinfo.txt", "%s/out/ppc/bootinfo.txt" %(self.build_dir,)) shutil.copyfile("%s/install_root/usr/lib/yaboot/yaboot" %(self.build_dir), "%s/out/ppc/chrp/yaboot" %(self.build_dir,)) subprocess.call(["/usr/sbin/addnote", "%s/out/ppc/chrp/yaboot" %(self.build_dir,)]) @@ -1431,9 +1439,7 @@ image=/ppc/ppc32/vmlinuz # TODO: build 'netboot' images with kernel+initrd, like mk-images.ppc def _getRequiredPackages(self): -# For now we need anaconda-runtime, for bits like ofboot.b and -# mapping files. -ret = ["yaboot", "anaconda-runtime"] +ret = ["yaboot"] ret.extend(ImageCreator._getRequiredPackages(self)) return ret -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list
[Fedora-livecd-list] config/livecd-fedora-kde.ks
config/livecd-fedora-kde.ks | 28 ++-- 1 files changed, 2 insertions(+), 26 deletions(-) New commits: commit 1e34eabc7aafbb20f3dd2cc8064ac7a6640df5f8 Author: Sebastian Vahl <[EMAIL PROTECTED]> Date: Tue Oct 23 16:49:38 2007 +0200 re-add knetworkmanager and let it do the workaround for nm-applet diff --git a/config/livecd-fedora-kde.ks b/config/livecd-fedora-kde.ks index 8469e67..b004648 100644 --- a/config/livecd-fedora-kde.ks +++ b/config/livecd-fedora-kde.ks @@ -12,6 +12,7 @@ twinkle filelight krusader + # if it is enough space include koffice-krita (~40 megs) koffice-krita @@ -26,11 +27,7 @@ kpowersave rhgb man-pages smolt-firstboot - -# workaround the fact that knetworkmanager doesn't work with NM 0.7 -#knetworkmanager -NetworkManager-gnome --knetworkmanager +knetworkmanager #some changes that we don't want... -specspo @@ -98,26 +95,4 @@ sed -i 's/Enabled=true/Enabled=false/' /usr/share/kde-settings/kde-profile/defau sed -i 's/NoDisplay=true/NoDisplay=false/' /usr/share/applications/liveinst.desktop EOF -# adding some autostarted applications -#cp /usr/share/applications/fedora-knetworkmanager.desktop /usr/share/autostart/ -sed -i 's/OnlyShowIn=GNOME;XFCE;/OnlyShowIn=GNOME;XFCE;KDE;/' /etc/xdg/autostart/nm-applet.desktop - -# and set up gnome-keyring to startup/shutdown in kde -mkdir -p /etc/skel/.kde/env /etc/skel/.kde/shutdown -cat > /etc/skel/.kde/env/start-custom.sh << EOF -#!/bin/sh -eval \`gnome-keyring-daemon\` -export GNOME_KEYRING_PID -export GNOME_KEYRING_SOCKET -EOF -chmod 755 /etc/skel/.kde/env/start-custom.sh - -cat > /etc/skel/.kde/shutdown/stop-custom.sh << EOF -#/bin/sh -if [-n "$GNOME_KEYRING_PID"];then -kill $GNOME_KEYRING_PID -fi -EOF -chmod 755 /etc/skel/.kde/shutdown/stop-custom.sh - %end -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list