Re: [Fedora-livecd-list] [PATCH]: Fix --base-on

2007-10-23 Thread Douglas McClendon

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

2007-10-23 Thread Jeremy Katz
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

2007-10-23 Thread Douglas McClendon

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

2007-10-23 Thread Jeremy Katz
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

2007-10-23 Thread Jeremy Katz
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

2007-10-23 Thread Jeremy Katz
 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

2007-10-23 Thread Douglas McClendon

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

2007-10-23 Thread Chris Lalancette
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

2007-10-23 Thread Jeremy Katz
 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

2007-10-23 Thread Jeremy Katz
 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

2007-10-23 Thread Sebastian Vahl
 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