inspect: Generic parsing of MAJOR.MINOR in product names.
[libguestfs.git] / appliance / make.sh.in
index 677e995..36bcd6c 100755 (executable)
@@ -26,8 +26,8 @@ set -x
 if [ "@DIST@" = "REDHAT" ]; then
   cd @top_builddir@
   # Decide on names for the final output.  These have to match Makefile.am.
-  output=appliance/initramfs.@REPO@.@host_cpu@.img
-  koutput=appliance/vmlinuz.@REPO@.@host_cpu@
+  output=appliance/initramfs.@host_cpu@.img
+  koutput=appliance/vmlinuz.@host_cpu@
   rm -f $output
   rm -f $koutput
 
@@ -41,6 +41,11 @@ if [ "@DIST@" = "REDHAT" ]; then
 
   @FEBOOTSTRAP@ $packages -u @UPDATES@ @REPO@ initramfs @MIRROR@
 
+  # Create modules.dep.  This is only used in the normal appliance
+  # (not supermin).
+  kversion=$(basename initramfs/lib/modules/*)
+  @FEBOOTSTRAP_RUN@ initramfs -- /sbin/depmod -a $kversion
+
   # /sysroot is where the guest root filesystem will be mounted.
   @FEBOOTSTRAP_RUN@ initramfs -- mkdir -p --mode=0777 /sysroot
 
@@ -52,9 +57,11 @@ if [ "@DIST@" = "REDHAT" ]; then
 
   # Nuke some stuff.  The kernel pulls mkinitrd and plymouth which pulls in
   # all of Python.  Sheez.
+  (cd initramfs && find -name '*python*' -print0) |
+    xargs -0 @FEBOOTSTRAP_RUN@ initramfs -- rm -rf
   (cd initramfs && find -name '*plymouth*' -print0) |
     xargs -0 @FEBOOTSTRAP_RUN@ initramfs -- rm -rf
-  (cd initramfs && find -name '*python*' -print0) |
+  (cd initramfs && find -name 'libply-*' -print0) |
     xargs -0 @FEBOOTSTRAP_RUN@ initramfs -- rm -rf
 
   # In Fedora >= 11, it pulls in all of Perl from somewhere.  Nuke from orbit.
@@ -79,13 +86,15 @@ if [ "@DIST@" = "REDHAT" ]; then
 
   # Remove some unreadable binaries which are incompatible with
   # the supermin appliance.  Since these binaries can't be read
-  # from the host filesystem, they generate warnings like:
-  #   cpio: ./usr/bin/chfn: Cannot open: Permission denied
-  # These binaries are not needed for operation of the appliance.
+  # from the host filesystem, they cannot be added to the supermin
+  # appliance at run time.  XXX Need a better fix for this.
+  # Probably we should change febootstrap-supermin-helper to just
+  # ignore such files.
   @FEBOOTSTRAP_RUN@ initramfs -- rm -f \
     /usr/bin/chfn \
     /usr/bin/chsh \
     /usr/libexec/pt_chown \
+    /usr/libexec/utempter/utempter \
     /usr/sbin/groupdel \
     /usr/sbin/groupadd \
     /usr/sbin/useradd \
@@ -96,6 +105,7 @@ if [ "@DIST@" = "REDHAT" ]; then
     /usr/sbin/groupmems \
     /sbin/unix_update \
     /usr/sbin/tcpd \
+    /usr/share/dbus-1/services/org.selinux.Restorecond.service \
     /lib/dbus-1/dbus-daemon-launch-helper \
     /lib64/dbus-1/dbus-daemon-launch-helper \
     /etc/passwd- \
@@ -115,6 +125,7 @@ if [ "@DIST@" = "REDHAT" ]; then
     /var/log/spooler \
     /var/log/messages \
     /var/log/btmp \
+    /var/log/yum.log \
     $(cd initramfs && echo usr/sbin/glibc_post_upgrade.*)
 
   # Kernel modules take up nearly half of the image.  Only include ones
@@ -152,16 +163,12 @@ __EOF__
       @FEBOOTSTRAP_RUN@ initramfs -- touch /etc/fstab
   fi
 
-  echo nameserver 10.0.2.3 > resolv.conf.new
+  echo nameserver 169.254.2.3 > resolv.conf.new
   @FEBOOTSTRAP_INSTALL@ initramfs resolv.conf.new /etc/resolv.conf 0644 root.root
   rm resolv.conf.new
 
   ls -lh $koutput
 
-  # Now directly run the update script to copy/update the daemon in the
-  # initramfs.
-  cd appliance && bash update.sh
-
 elif [ "@DIST@" = "DEBIAN" ]; then
   cd @top_builddir@/appliance
   debirf make -n debian