iwm-overlay/sys-cluster/util-vserver/files/util-vserver-0.30.214-openr...

127 lines
4.8 KiB
Diff

diff -NurpP util-vserver-0.30.214.orig/distrib/gentoo/initpost util-vserver-0.30.214/distrib/gentoo/initpost
--- util-vserver-0.30.214.orig/distrib/gentoo/initpost 2007-09-02 22:06:42.000000000 +0200
+++ util-vserver-0.30.214/distrib/gentoo/initpost 2008-03-11 10:39:53.955478789 +0100
@@ -51,6 +51,11 @@ $_CHROOT_SH mkdir /usr/portage 2>/dev/nu
$_CHROOT_SH mkdir /usr/portage/distfiles 2>/dev/null || :
+# check if we have openrc
+have_openrc=0
+$_CHROOT_SH testfile /lib/rc/bin/is_older_than && have_openrc=1
+
+
# gentoo initstyle magic
initstyle=sysv
test -e "$cfgdir"/apps/init/style && initstyle=$(<"$cfgdir"/apps/init/style)
@@ -59,8 +64,8 @@ if test "$initstyle" == "gentoo"; then
echo ">>> Installing special init-style magic ... "
$_CAT "$__DISTRIBDIR"/gentoo/init-vserver.sh | \
- $_CHROOT_SH truncate /lib/rcscripts/sh/init-vserver.sh
- $_CHROOT_SH chmod 0755 /lib/rcscripts/sh/init-vserver.sh
+ $_CHROOT_SH truncate /lib/rc/sh/init-vserver.sh
+ $_CHROOT_SH chmod 0755 /lib/rc/sh/init-vserver.sh
$_CAT "$__DISTRIBDIR"/gentoo/reboot.sh | \
$_CHROOT_SH truncate /etc/init.d/reboot.sh
@@ -78,23 +83,29 @@ if test "$initstyle" == "gentoo"; then
echo "!!! Consult the Gentoo Handbook on how to chroot and install"
echo "!!! packages into the guest environment."
echo "!!!"
+else
+ # fix gettys in inittab
+ if $_CHROOT_SH testfile /etc/inittab; then
+ echo ">>> Fixing inittab ... "
+ chrootsed /etc/inittab \
+ -e 's/\(^[^#].*getty.*$\)/#\1/'
+ fi
fi
-
# unneeded runlevel scripts
-echo ">>> Fixing default runlevel scripts ... "
-$_CHROOT_SH rm /etc/runlevels/boot/{clock,consolefont,keymaps,modules,net.lo} 2>/dev/null || :
-$_CHROOT_SH rm /etc/runlevels/default/{hdparm,netmount} 2>/dev/null || :
-
+if test $have_openrc -ne 1; then
+ echo ">>> Fixing default runlevel scripts ... "
+ $_CHROOT_SH rm /etc/runlevels/boot/{clock,consolefont,keymaps,modules,net.lo} 2>/dev/null || :
+ $_CHROOT_SH rm /etc/runlevels/default/{hdparm,netmount} 2>/dev/null || :
+fi
# setting hostname
if test -r "$cfgdir"/uts/nodename && $_CHROOT_SH testfile /etc/conf.d/hostname; then
echo ">>> Setting hostname ... "
chrootsed /etc/conf.d/hostname \
- -e "s:HOSTNAME=\"\(.*\)\":HOSTNAME=\"$(< "$cfgdir"/uts/nodename)\":"
+ -e "s:\(HOSTNAME\)=\"\(.*\)\":\1=\"$(< "$cfgdir"/uts/nodename)\":i"
fi
-
# fix syslog-ng.conf
if $_CHROOT_SH testfile /etc/syslog-ng/syslog-ng.conf; then
echo ">>> Fixing syslog-ng.conf ... "
@@ -103,27 +114,21 @@ if $_CHROOT_SH testfile /etc/syslog-ng/s
-e 's:\(.*console_all.*\):#\1:g'
fi
-
-# fix gettys in inittab
-if $_CHROOT_SH testfile /etc/inittab; then
- echo ">>> Fixing inittab ... "
- chrootsed /etc/inittab \
- -e 's/\(^[^#].*getty.*$\)/#\1/'
-fi
-
-
# fix fstab for checkfs/localmount in baselayout-2
# (does not affect any previous versions)
-echo ">>> Fixing fstab ... "
-echo "/dev/hdv1 / ufs defaults 0 0" | $_CHROOT_SH truncate /etc/fstab
-
+if test $have_openrc -ne 1; then
+ echo ">>> Fixing fstab ... "
+ echo "/dev/hdv1 / ufs defaults 0 0" | $_CHROOT_SH truncate /etc/fstab
+fi
# always satisfy net dependency in baselayout-2
# (does not affect any previous versions)
-echo ">>> Providing dummy net dependency ... "
-$_CAT "$__DISTRIBDIR"/gentoo/net.vserver | \
-$_CHROOT_SH truncate /etc/init.d/net.vserver
-$_CHROOT_SH chmod 0755 /etc/init.d/net.vserver
-$_CHROOT_SH link /etc/init.d/net.vserver /etc/runlevels/boot/net.vserver
+if test $have_openrc -ne 1; then
+ echo ">>> Providing dummy net dependency ... "
+ $_CAT "$__DISTRIBDIR"/gentoo/net.vserver | \
+ $_CHROOT_SH truncate /etc/init.d/net.vserver
+ $_CHROOT_SH chmod 0755 /etc/init.d/net.vserver
+ $_CHROOT_SH link /etc/init.d/net.vserver /etc/runlevels/boot/net.vserver
+fi
popd &>/dev/null
diff -NurpP util-vserver-0.30.214.orig/scripts/vserver.functions util-vserver-0.30.214/scripts/vserver.functions
--- util-vserver-0.30.214.orig/scripts/vserver.functions 2007-09-02 22:06:41.000000000 +0200
+++ util-vserver-0.30.214/scripts/vserver.functions 2008-03-11 10:31:41.758515991 +0100
@@ -314,9 +314,18 @@ function _generateInitOptions
(xgentoo)
test -n "$RUNLEVEL_START" || RUNLEVEL_START="default"
+ RC_PATH=/usr/sbin:/usr/bin:/sbin:/bin
- INITCMD_START=( env TERM=$TERM /lib/rcscripts/sh/init-vserver.sh "$RUNLEVEL_START" )
- INITCMD_STOP=( env -i TERM=$TERM RUNLEVEL=0 /sbin/rc shutdown )
+ if test -x "$vdir/vdir/lib/rcscripts/sh/init-vserver.sh"; then
+ RC_WRAP=/lib/rcscripts/sh/init-vserver.sh
+ elif test -x "$vdir/vdir/lib/rc/sh/init-vserver.sh"; then
+ RC_WRAP=/lib/rc/sh/init-vserver.sh
+ else
+ panic "init-vserver.sh not found; aborting"
+ fi
+
+ INITCMD_START=( env TERM=$TERM $RC_WRAP "$RUNLEVEL_START" )
+ INITCMD_STOP=( env -i PATH=$RC_PATH TERM=$TERM RUNLEVEL=0 /sbin/rc shutdown )
INITCMD_PREPARE=( $_FAKE_RUNLEVEL 3 /var/run/utmp )
;;