diff --git a/system/virtualbox-ose/LocalConfig.kmk b/system/virtualbox-ose/LocalConfig.kmk index d5412c5205..ab31757f4e 100644 --- a/system/virtualbox-ose/LocalConfig.kmk +++ b/system/virtualbox-ose/LocalConfig.kmk @@ -19,3 +19,6 @@ VBOX_PATH_APP_PRIVATE := /usr/share/virtualbox VBOX_PATH_APP_DOCS = $(VBOX_PATH_PACKAGE_DOCS) VBOX_WITH_VNC = 1 + +# disable showing registration window on startup +VBOX_WITH_REGISTRATION = diff --git a/system/virtualbox-ose/doinst.sh b/system/virtualbox-ose/doinst.sh index 64d9e36d68..33be91fa14 100644 --- a/system/virtualbox-ose/doinst.sh +++ b/system/virtualbox-ose/doinst.sh @@ -11,6 +11,17 @@ config() { # Otherwise, we leave the .new copy for the admin to consider... } +preserve_perms() { + NEW="$1" + OLD="$(dirname $NEW)/$(basename $NEW .new)" + if [ -e $OLD ]; then + cp -a $OLD ${NEW}.incoming + cat $NEW > ${NEW}.incoming + mv ${NEW}.incoming $NEW + fi + config $NEW +} + if [ -x /usr/bin/update-desktop-database ]; then /usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1 fi @@ -18,12 +29,5 @@ fi # Prepare the new configuration files config etc/vbox/vbox.cfg.new config etc/default/virtualbox.new -for file in etc/rc.d/rc.vboxdrv.new ; do - if [ -e $(dirname $file)/$(basename $file .new) -a -x $(dirname $file)/$(basename $file .new) ]; then - chmod 0755 $file - else - chmod 0644 $file - fi - config $file -done +preserve_perms etc/rc.d/rc.vboxdrv.new diff --git a/system/virtualbox-ose/patch-src-VBox-Devices-PC-vbox.dsl b/system/virtualbox-ose/patch-src-VBox-Devices-PC-vbox.dsl deleted file mode 100644 index bfbd0a59de..0000000000 --- a/system/virtualbox-ose/patch-src-VBox-Devices-PC-vbox.dsl +++ /dev/null @@ -1,20 +0,0 @@ ---- src/VBox/Devices/PC/vbox.dsl.orig 2010-03-25 15:56:03.000000000 -0400 -+++ src/VBox/Devices/PC/vbox.dsl 2010-04-29 19:14:38.000000000 -0400 -@@ -1064,7 +1064,7 @@ - // (all of low memory space) - ResourceProducer, // bit 0 of general flags is 0 - PosDecode, // positive Decode -- MinFixed, // Range is fixed -+ MinNotFixed, // Range is not fixed - MaxFixed, // Range is fixed - Cacheable, - ReadWrite, -@@ -1073,7 +1073,7 @@ - - 0xffdfffff, // Max = 4GB - 2MB - 0x00000000, // Translation -- 0xdfdfffff, // Range Length (calculated -+ 0x00000000, // Range Length (calculated - // dynamically) - , // Optional field left blank - , // Optional field left blank diff --git a/system/virtualbox-ose/vboxdrv.sh-setup.diff b/system/virtualbox-ose/vboxdrv.sh-setup.diff index 99e3275a8e..56f0e61b35 100644 --- a/system/virtualbox-ose/vboxdrv.sh-setup.diff +++ b/system/virtualbox-ose/vboxdrv.sh-setup.diff @@ -1,25 +1,30 @@ ---- vboxdrv.sh.in.orig 2009-08-04 19:18:41.000000000 +0200 -+++ vboxdrv.sh.in 2009-08-05 15:07:09.311051154 +0200 -@@ -37,14 +37,8 @@ +--- mnt/progs/slack/test/VirtualBox-3.2.10_OSE/src/VBox/Installer/linux/vboxdrv.sh.in 2010-10-08 22:10:25.000000000 +0200 ++++ tmp/vboxdrv.sh.in 2010-10-14 17:43:18.545000084 +0200 +@@ -43,16 +43,8 @@ if [ -n "$INSTALL_DIR" ]; then VBOXMANAGE="$INSTALL_DIR/VBoxManage" -- BUILDVBOXDRV="$INSTALL_DIR/src/vboxdrv/build_in_tmp" -- BUILDVBOXNETFLT="$INSTALL_DIR/src/vboxnetflt/build_in_tmp" -- BUILDVBOXNETADP="$INSTALL_DIR/src/vboxnetadp/build_in_tmp" +- DODKMS="$INSTALL_DIR/src/vboxhost/do_dkms" +- BUILDVBOXDRV="$INSTALL_DIR/src/vboxhost/vboxdrv/build_in_tmp" +- BUILDVBOXNETFLT="$INSTALL_DIR/src/vboxhost/vboxnetflt/build_in_tmp" +- BUILDVBOXNETADP="$INSTALL_DIR/src/vboxhost/vboxnetadp/build_in_tmp" else VBOXMANAGE="/usr/lib/%PACKAGE%/VBoxManage" -- BUILDVBOXDRV="/usr/share/%PACKAGE%/src/vboxdrv/build_in_tmp" -- BUILDVBOXNETFLT="/usr/share/%PACKAGE%/src/vboxnetflt/build_in_tmp" -- BUILDVBOXNETADP="/usr/share/%PACKAGE%/src/vboxnetadp/build_in_tmp" +- DODKMS="/usr/share/%PACKAGE%/src/vboxhost/do_dkms" +- BUILDVBOXDRV="/usr/share/%PACKAGE%/src/vboxhost/vboxdrv/build_in_tmp" +- BUILDVBOXNETFLT="/usr/share/%PACKAGE%/src/vboxhost/vboxnetflt/build_in_tmp" +- BUILDVBOXNETADP="/usr/share/%PACKAGE%/src/vboxhost/vboxnetadp/build_in_tmp" fi - if [ -n "$NOLSB" ]; then -@@ -271,41 +265,7 @@ - + # silently exit if the package was uninstalled but not purged, +@@ -284,48 +276,7 @@ + # setup_script setup() { - stop +- begin_msg "Uninstalling old VirtualBox DKMS kernel modules" +- $DODKMS uninstall > $LOG +- succ_msg - if find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|grep -q vboxnetadp; then - begin_msg "Removing old VirtualBox netadp kernel module" - find /lib/modules/`uname -r` -name "vboxnetadp\.*" 2>/dev/null|xargs rm -f 2>/dev/null @@ -35,21 +40,25 @@ - find /lib/modules/`uname -r` -name "vboxdrv\.*" 2>/dev/null|xargs rm -f 2>/dev/null - succ_msg - fi -- begin_msg "Recompiling VirtualBox kernel module" -- if ! $BUILDVBOXDRV \ -- --save-module-symvers /tmp/vboxdrv-Module.symvers \ -- --no-print-directory install > $LOG 2>&1; then -- failure "Look at $LOG to find out what went wrong" -- fi -- if ! $BUILDVBOXNETFLT \ -- --use-module-symvers /tmp/vboxdrv-Module.symvers \ +- begin_msg "Trying to register the VirtualBox kernel modules using DKMS" +- if ! $DODKMS install >> $LOG; then +- fail_msg "Failed, trying without DKMS" +- begin_msg "Recompiling VirtualBox kernel modules" +- if ! $BUILDVBOXDRV \ +- --save-module-symvers /tmp/vboxdrv-Module.symvers \ +- --no-print-directory install >> $LOG 2>&1; then +- failure "Look at $LOG to find out what went wrong" +- fi +- if ! $BUILDVBOXNETFLT \ +- --use-module-symvers /tmp/vboxdrv-Module.symvers \ +- --no-print-directory install >> $LOG 2>&1; then +- failure "Look at $LOG to find out what went wrong" +- fi +- if ! $BUILDVBOXNETADP \ +- --use-module-symvers /tmp/vboxdrv-Module.symvers \ - --no-print-directory install >> $LOG 2>&1; then -- failure "Look at $LOG to find out what went wrong" -- fi -- if ! $BUILDVBOXNETADP \ -- --use-module-symvers /tmp/vboxdrv-Module.symvers \ -- --no-print-directory install >> $LOG 2>&1; then -- failure "Look at $LOG to find out what went wrong" +- failure "Look at $LOG to find out what went wrong" +- fi - fi - rm -f /etc/vbox/module_not_compiled - succ_msg diff --git a/system/virtualbox-ose/virtualbox-ose.SlackBuild b/system/virtualbox-ose/virtualbox-ose.SlackBuild index 19fcc98cf0..3da203a768 100644 --- a/system/virtualbox-ose/virtualbox-ose.SlackBuild +++ b/system/virtualbox-ose/virtualbox-ose.SlackBuild @@ -25,11 +25,18 @@ PRGNAM=virtualbox-ose SRCNAM=VirtualBox -VERSION=3.2.6 -ARCH=${ARCH:-i486} +VERSION=3.2.10 BUILD=${BUILD:-1} TAG=${TAG:-_SBo} +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + CWD=$(pwd) TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM @@ -55,12 +62,17 @@ else harden="--disable-hardening" fi -if [ "${WEBSERVICE:-no}" = "yes" ]; then - web_service="--enable-webservice" - vboxwebsrv="vboxwebsrv" -else +if [ "${WEBSERVICE:-no}" = "no" ]; then web_service="" vboxwebsrv="" +else + web_service="--enable-webservice" + vboxwebsrv="vboxwebsrv" + if ! grep ^vboxweb: /etc/passwd 2>&1 > /dev/null; then + echo " You must have a vboxweb user to run this script." + echo " # useradd -u 240 -g 215 -d /var/lib/vboxweb vboxweb" + exit 1 + fi fi if [ "$ARCH" = "i486" ]; then @@ -110,9 +122,6 @@ else guiapp="" fi -# Fix issues with newer acpica versions -patch -p0 -i $CWD/patch-src-VBox-Devices-PC-vbox.dsl - CFLAGS="$SLKCFLAGS" \ CXXFLAGS="$SLKCFLAGS" \ ./configure \ @@ -166,6 +175,16 @@ for i in VBoxManage VBoxSDL VBoxHeadless VBoxVRDP $guiapp $vboxwebsrv; do ln -s /usr/lib$LIBDIRSUFFIX/virtualbox/VBox $PKG/usr/bin/$i ; done +if [ "$vboxwebsrv" = "vboxwebsrv" ]; then + mkdir -p $PKG/var/{lib,log}/vboxweb + chown vboxweb:vboxusers $PKG/var/{lib,log}/vboxweb + cp -f src/VBox/Installer/linux/vboxweb-service.sh.in $PKG/etc/rc.d/rc.vboxweb-service.new + sed -i "s/%PACKAGE%/virtualbox/g" $PKG/etc/rc.d/rc.vboxweb-service.new + sed -i "s/%NOLSB%/yes/" $PKG/etc/rc.d/rc.vboxweb-service.new + sed -i "s/%DEBIAN%/no/" $PKG/etc/rc.d/rc.vboxweb-service.new + sed -i "s/\[ -z \"\$DEBIAN\"/#\[ -z \"\$DEBIAN\"/" $PKG/etc/rc.d/rc.vboxweb-service.new +fi + if [ "$harden" = "--enable-hardening" ]; then for i in VBoxSDL VBoxHeadless $guiapp; do chmod 4${MODE} $PKG/usr/lib$LIBDIRSUFFIX/virtualbox/$i @@ -182,6 +201,9 @@ cp -f $CWD/VBoxGuestAdditions_$VERSION.iso \ cp -f $CWD/UserManual.pdf \ $PKG/usr/share/virtualbox/UserManual.pdf +cp -f $CWD/SDKRef.pdf \ + $PKG/usr/share/virtualbox/SDKRef.pdf + # install profile.d scripts for 3rd party apps mkdir -p $PKG/etc/profile.d/ cat << EOF > $PKG/etc/profile.d/vbox.csh @@ -205,5 +227,9 @@ mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/doinst.sh > $PKG/install/doinst.sh +if [ "$vboxwebsrv" = "vboxwebsrv" ]; then + echo "preserve_perms etc/rc.d/rc.vboxweb-service.new" >> $PKG/install/doinst.sh +fi + cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/system/virtualbox-ose/virtualbox-ose.info b/system/virtualbox-ose/virtualbox-ose.info index c392571f7b..90e6e279b9 100644 --- a/system/virtualbox-ose/virtualbox-ose.info +++ b/system/virtualbox-ose/virtualbox-ose.info @@ -1,12 +1,14 @@ PRGNAM="virtualbox-ose" -VERSION="3.2.6" +VERSION="3.2.10" HOMEPAGE="http://www.virtualbox.org" -DOWNLOAD="http://213.239.192.22/download/3.2.6/VirtualBox-3.2.6-OSE.tar.bz2 \ - http://213.239.192.22/download/3.2.6/VBoxGuestAdditions_3.2.6.iso \ - http://213.239.192.22/download/3.2.6/UserManual.pdf" -MD5SUM="65b822ab3c08ff882d9621101996dc14 \ - 9542cf2fb93e1921a860930ac2a1d0de \ - 8891557360f816f7604d26aac7503489" +DOWNLOAD="http://download.virtualbox.org/virtualbox/3.2.10/VirtualBox-3.2.10-OSE.tar.bz2 \ + http://download.virtualbox.org/virtualbox/3.2.10/VBoxGuestAdditions_3.2.10.iso \ + http://download.virtualbox.org/virtualbox/3.2.10/UserManual.pdf \ + http://download.virtualbox.org/virtualbox/3.2.10/SDKRef.pdf" +MD5SUM="5aad764cd4e886f9d80d7bde42163c7a \ + 4fde0f279854334b84c01972fbed2874 \ + 370bb3e893acffa584536c8f9e966c79 \ + cde5db6f23580a575791374b5e58d098" DOWNLOAD_x86_64="UNTESTED" MD5SUM_x86_64="" MAINTAINER="Heinz Wiesinger" diff --git a/system/virtualbox-ose/virtualbox.default b/system/virtualbox-ose/virtualbox.default index 9fec56908f..bcc3c08e16 100644 --- a/system/virtualbox-ose/virtualbox.default +++ b/system/virtualbox-ose/virtualbox.default @@ -7,4 +7,19 @@ SHUTDOWN_USERS="" # The default shutdown method "/etc/rc.d/rc.vboxdrv stop_vms" should use SHUTDOWN="savestate" #SHUTDOWN="acpibutton" -#SHUTDOWN="savestate" \ No newline at end of file +#SHUTDOWN="savestate" + +## vboxwebsrv options + +# user to run vboxwebsrv (required) +VBOXWEB_USER="vboxweb" + +#VBOXWEB_HOST= +#VBOXWEB_PORT= +#VBOXWEB_TIMEOUT= +#VBOXWEB_CHECK_INTERVAL= +#VBOXWEB_THREADS= +#VBOXWEB_KEEPALIVE= + +# Logfile location +VBOXWEB_LOGFILE="/var/log/vboxweb/vboxweb.log"