Index: init.d/checkfs =================================================================== RCS file: /home/cvsroot/gentoo-src/rc-scripts/init.d/checkfs,v retrieving revision 1.32 diff -u -r1.32 checkfs --- init.d/checkfs 5 Jan 2004 23:50:42 -0000 1.32 +++ init.d/checkfs 27 Jan 2004 17:08:25 -0000 @@ -14,7 +14,7 @@ # # EVMS2 summport for /usr, /var .... # - if [ -f /sbin/evms_activate ] + if [ -z "${CDBOOT}" -a -f /sbin/evms_activate ] then ebegin "Activating EVMS2" evms_activate @@ -29,7 +29,7 @@ # NOTE: Add needed modules for LVM or RAID, etc # to /etc/modules.autoload if needed - if [ -x /sbin/vgscan ] && \ + if [ -z "${CDBOOT}" -a -x /sbin/vgscan ] && \ [ -d /proc/lvm -o "$(grep device-mapper /proc/misc 2>/dev/null)" ] then ebegin "Setting up the Logical Volume Manager" @@ -48,7 +48,7 @@ # properly configured /etc/mdadm.conf for mdadm usage. Devices in # /etc/mdadm.conf are initialized first, so any duplicate devices in # /etc/raidtab will not get initialized. - if [ -f /proc/mdstat ] + if [ -z "${CDBOOT}" -a -f /proc/mdstat ] then local mdadm_devices= local raidtools_devices= Index: init.d/halt.sh =================================================================== RCS file: /home/cvsroot/gentoo-src/rc-scripts/init.d/halt.sh,v retrieving revision 1.46 diff -u -r1.46 halt.sh --- init.d/halt.sh 26 Nov 2003 19:16:18 -0000 1.46 +++ init.d/halt.sh 27 Jan 2004 17:08:26 -0000 @@ -48,7 +48,8 @@ # Unmount file systems, killing processes if we have to. # Unmount loopback stuff first # Use `umount -d` to detach the loopback device -remaining="`awk '!/^#/ && $1 ~ /^\/dev\/loop/ && $2 != "/" {print $2}' /proc/mounts | sort -r`" +remaining="`awk '!/^#/ && $1 ~ /^\/dev\/loop/ && $2 != "/" {print $2}' /proc/mounts | \ + sort -r | grep -v '/newroot' | grep -v '/mnt/livecd'`" [ -n "${remaining}" ] && { sig= retry=3 @@ -66,7 +67,8 @@ eend $? "Failed to unmount filesystems" fi - remaining="`awk '!/^#/ && $1 ~ /^\/dev\/loop/ && $2 != "/" {print $2}' /proc/mounts | sort -r`" + remaining="`awk '!/^#/ && $1 ~ /^\/dev\/loop/ && $2 != "/" {print $2}' /proc/mounts | \ + sort -r | grep -v '/newroot' | grep -v '/mnt/livecd'`" [ -z "${remaining}" ] && break /bin/fuser -k -m ${sig} ${remaining} &>/dev/null @@ -95,7 +97,8 @@ [ "${x}" = "${y}" ] && do_unmount="no" done - if [ "${do_unmount}" = "yes" -a "${x}" != "/mnt/livecd" ] + if [ "${do_unmount}" = "yes" -a \ + "${x}" != "/newroot" -a "${x}" != "/mnt/livecd" ] then umount ${x} &>/dev/null || { Index: init.d/modules =================================================================== RCS file: /home/cvsroot/gentoo-src/rc-scripts/init.d/modules,v retrieving revision 1.28 diff -u -r1.28 modules --- init.d/modules 11 Aug 2003 01:27:16 -0000 1.28 +++ init.d/modules 27 Jan 2004 17:08:26 -0000 @@ -82,9 +82,12 @@ return 1 fi - ebegin "Calculating module dependencies" - /sbin/modules-update &>/dev/null - eend $? "Failed to calculate dependencies" + if [ -z "${CDBOOT}" ] + then + ebegin "Calculating module dependencies" + /sbin/modules-update &>/dev/null + eend $? "Failed to calculate dependencies" + fi if [ -f /etc/modules.autoload -a ! -L /etc/modules.autoload ] then Index: sbin/rc =================================================================== RCS file: /home/cvsroot/gentoo-src/rc-scripts/sbin/rc,v retrieving revision 1.71 diff -u -r1.71 rc --- sbin/rc 21 Jan 2004 18:03:11 -0000 1.71 +++ sbin/rc 27 Jan 2004 17:08:26 -0000 @@ -168,7 +168,7 @@ # Read off the kernel commandline to see if there's any special settings # especially check to see if we need to set the CDBOOT environment variable # Note: /proc MUST be mounted - livecd_read_commandline + [ -f /sbin/livecd-functions.sh ] && livecd_read_commandline if [ -d /sys -a "$(get_KV)" -ge "$(KV_to_int '2.6.0')" ] then @@ -418,7 +418,7 @@ fi # If booting off CD, we want to update inittab before setting the runlevel - if [ "${CDBOOT}" != "" ] + if [ -f "/sbin/livecd-functions.sh" -a -n "${CDBOOT}" ] then ebegin "Updating inittab" livecd_fix_inittab Index: src/awk/gendepends.awk =================================================================== RCS file: /home/cvsroot/gentoo-src/rc-scripts/src/awk/gendepends.awk,v retrieving revision 1.19 diff -u -r1.19 gendepends.awk --- src/awk/gendepends.awk 29 Dec 2003 01:00:27 -0000 1.19 +++ src/awk/gendepends.awk 27 Jan 2004 17:08:26 -0000 @@ -466,14 +466,14 @@ print "" >> (CACHEDTREE) } - print "export RC_DEPEND_TREE" >> (CACHEDTREE) - print "export RC_GOT_DEPTREE_INFO=\"yes\"" >> (CACHEDTREE) + # Do not export these, as we want them local + print "RC_GOT_DEPTREE_INFO=\"yes\"" >> (CACHEDTREE) print "" >> (CACHEDTREE) if (check_provide("logger")) - print "export LOGGER_SERVICE=\"" get_provide("logger") "\"" >> (CACHEDTREE) + print "LOGGER_SERVICE=\"" get_provide("logger") "\"" >> (CACHEDTREE) else - print "export LOGGER_SERVICE=" >> (CACHEDTREE) + print "LOGGER_SERVICE=" >> (CACHEDTREE) close(CACHEDTREE) }