summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--system/virtualbox-ose-addons/README25
-rw-r--r--system/virtualbox-ose-addons/README.SLACKWARE35
-rw-r--r--system/virtualbox-ose-addons/doinst.sh7
-rw-r--r--system/virtualbox-ose-addons/rc.vboxadd.diff144
-rw-r--r--system/virtualbox-ose-addons/slack-desc8
-rw-r--r--system/virtualbox-ose-addons/virtualbox-ose-addons.SlackBuild74
-rw-r--r--system/virtualbox-ose-addons/virtualbox-ose-addons.info12
7 files changed, 246 insertions, 59 deletions
diff --git a/system/virtualbox-ose-addons/README b/system/virtualbox-ose-addons/README
index 5c6b2bfc9c..dc61b13938 100644
--- a/system/virtualbox-ose-addons/README
+++ b/system/virtualbox-ose-addons/README
@@ -2,30 +2,9 @@ This is the userspace part of the VirtualBox Guest Additions.
Together with virtualbox-kernel-addons they enable shared folders,
shared clipboard, etcetera, inside your Slackware guest machines.
-You'll probably want to add the following lines to your rc.local:
- # Start vboxadd
- if [ -x /etc/rc.d/rc.vboxadd ]; then
- /etc/rc.d/rc.vboxadd start
- fi
+See README.SLACKWARE for setup information.
- # Start vboxvfs
- if [ -x /etc/rc.d/rc.vboxvfs ]; then
- /etc/rc.d/rc.vboxvfs start
- fi
-
- # Start vboxadd-timesync
- if [ -x /etc/rc.d/rc.vboxadd-timesync ]; then
- /etc/rc.d/rc.vboxadd-timesync start
- fi
-
-This will load the support kernel module and will setup the network
-configuration for VirtualBox. You should add similar "stop" lines to
-your rc.local_shutdown.
-
-You might want to add
- /usr/bin/VBoxClient
-to your xinitrc file if you use a desktop environment that doesn't
-respect /etc/xdg/autostart or /usr/share/autostart
+NOTE: This will not build on x86_64
This package is intended to be used on GUEST / VIRTUAL MACHINES running
Slackware, NOT the host system.
diff --git a/system/virtualbox-ose-addons/README.SLACKWARE b/system/virtualbox-ose-addons/README.SLACKWARE
new file mode 100644
index 0000000000..da28c0fd41
--- /dev/null
+++ b/system/virtualbox-ose-addons/README.SLACKWARE
@@ -0,0 +1,35 @@
+You'll need to add the following lines to /etc/rc.d/rc.local:
+
+ # Start vboxadd
+ if [ -x /etc/rc.d/rc.vboxadd ]; then
+ /etc/rc.d/rc.vboxadd start
+ fi
+
+ # Start vboxadd-service
+ if [ -x /etc/rc.d/rc.vboxadd-service ]; then
+ /etc/rc.d/rc.vboxadd-service start
+ fi
+
+This will load the support kernel module and will setup the network
+configuration for VirtualBox.
+
+You should then add the following to /etc/rc.d/rc.local_shutdown:
+
+ # Stop vboxadd
+ if [ -x /etc/rc.d/rc.vboxadd ]; then
+ /etc/rc.d/rc.vboxadd stop
+ fi
+
+ # Stop vboxadd-service
+ if [ -x /etc/rc.d/rc.vboxadd-service ]; then
+ /etc/rc.d/rc.vboxadd-service stop
+ fi
+
+You might want to add "/usr/bin/VBoxClient"
+to your xinitrc file if you use a desktop environment that doesn't
+respect /etc/xdg/autostart or /usr/share/autostart
+
+To use the vboxvideo xorg driver, you have to create an xorg.conf
+and specifiy to use that driver in there. Xorg will NOT pick that
+driver by default.
+
diff --git a/system/virtualbox-ose-addons/doinst.sh b/system/virtualbox-ose-addons/doinst.sh
index a19270331f..9b1e606f30 100644
--- a/system/virtualbox-ose-addons/doinst.sh
+++ b/system/virtualbox-ose-addons/doinst.sh
@@ -12,7 +12,7 @@ config() {
}
# Prepare the new configuration files
-for file in etc/rc.d/rc.vboxadd.new etc/rc.d/rc.vboxadd-timesync.new; do
+for file in etc/rc.d/rc.vboxadd.new etc/rc.d/rc.vboxadd-service.new; do
if [ -e $(dirname $file)/$(basename $file .new) -a -x $(dirname $file)/$(basename $file .new) ]; then
chmod 0755 $file
else
@@ -21,3 +21,8 @@ for file in etc/rc.d/rc.vboxadd.new etc/rc.d/rc.vboxadd-timesync.new; do
config $file
done
+# remove existing fdi cache to recognize newly installed fdi files
+# and restart hal to regenerate the cache
+rm -f var/cache/hald/fdi-cache
+chroot . /etc/rc.d/rc.hald restart
+
diff --git a/system/virtualbox-ose-addons/rc.vboxadd.diff b/system/virtualbox-ose-addons/rc.vboxadd.diff
new file mode 100644
index 0000000000..209c606f98
--- /dev/null
+++ b/system/virtualbox-ose-addons/rc.vboxadd.diff
@@ -0,0 +1,144 @@
+--- vboxadd.sh 2009-12-17 15:25:34.000000000 +0100
++++ vboxadd.sh 2009-12-24 11:20:10.750796198 +0100
+@@ -305,139 +305,13 @@
+ # setup_script
+ setup()
+ {
+- # don't stop the old modules here -- they might be in use
+- if find /lib/modules/`uname -r` -name "vboxvideo\.*" 2>/dev/null|grep -q vboxvideo; then
+- begin "Removing old VirtualBox vboxvideo kernel module"
+- find /lib/modules/`uname -r` -name "vboxvideo\.*" 2>/dev/null|xargs rm -f 2>/dev/null
+- succ_msg
+- fi
+- if find /lib/modules/`uname -r` -name "vboxvfs\.*" 2>/dev/null|grep -q vboxvfs; then
+- begin "Removing old VirtualBox vboxvfs kernel module"
+- find /lib/modules/`uname -r` -name "vboxvfs\.*" 2>/dev/null|xargs rm -f 2>/dev/null
+- succ_msg
+- fi
+- if find /lib/modules/`uname -r` -name "vboxguest\.*" 2>/dev/null|grep -q vboxguest; then
+- begin "Removing old VirtualBox vboxguest kernel module"
+- find /lib/modules/`uname -r` -name "vboxguest\.*" 2>/dev/null|xargs rm -f 2>/dev/null
+- succ_msg
+- fi
+- begin "Building the VirtualBox Guest Additions kernel modules"
+- if ! sh /usr/share/$PACKAGE/test/build_in_tmp \
+- --no-dkms --no-print-directory > $LOG 2>&1; then
+- fail "`printf "Your system does not seem to be set up to build kernel modules.\nLook at $LOG to find out what went wrong"`"
+- fi
+- echo
+- if ! sh /usr/share/$PACKAGE/test_drm/build_in_tmp \
+- --no-dkms --no-print-directory >> $LOG 2>&1; then
+- printf "\nYour guest system does not seem to have sufficient OpenGL support to enable\naccelerated 3D effects (this requires Linux 2.6.27 or later in the guest\nsystem). This Guest Additions feature will be disabled.\n\n"
+- BUILDVBOXVIDEO=""
+- fi
+- begin "Building the main Guest Additions module"
+- if ! $BUILDVBOXGUEST \
+- --save-module-symvers /tmp/vboxguest-Module.symvers \
+- --no-print-directory install >> $LOG 2>&1; then
+- fail "Look at $LOG to find out what went wrong"
+- fi
+- succ_msg
+- if [ -n "$BUILDVBOXVFS" ]; then
+- begin "Building the shared folder support module"
+- if ! $BUILDVBOXVFS \
+- --use-module-symvers /tmp/vboxguest-Module.symvers \
+- --no-print-directory install >> $LOG 2>&1; then
+- fail "Look at $LOG to find out what went wrong"
+- fi
+- succ_msg
+- fi
+- if [ -n "$BUILDVBOXVIDEO" ]; then
+- begin "Building the OpenGL support module"
+- if ! $BUILDVBOXVIDEO \
+- --use-module-symvers /tmp/vboxguest-Module.symvers \
+- --no-print-directory install >> $LOG 2>&1; then
+- fail "Look at $LOG to find out what went wrong"
+- fi
+- succ_msg
+- fi
+- depmod
+-
+- begin "Doing non-kernel setup of the Guest Additions"
+- echo "Creating user for the Guest Additions." >> $LOG
+- # This is the LSB version of useradd and should work on recent
+- # distributions
+- useradd -d /var/run/vboxadd -g 1 -r -s /bin/false vboxadd >/dev/null 2>&1
+- # And for the others, we choose a UID ourselves
+- useradd -d /var/run/vboxadd -g 1 -u 501 -o -s /bin/false vboxadd >/dev/null 2>&1
+-
+- # Create udev description file
+- if [ -d /etc/udev/rules.d ]; then
+- echo "Creating udev rule for the Guest Additions kernel module." >> $LOG
+- udev_call=""
+- udev_app=`which udevadm 2> /dev/null`
+- if [ $? -eq 0 ]; then
+- udev_call="${udev_app} version 2> /dev/null"
+- else
+- udev_app=`which udevinfo 2> /dev/null`
+- if [ $? -eq 0 ]; then
+- udev_call="${udev_app} -V 2> /dev/null"
+- fi
+- fi
+- udev_fix="="
+- if [ "${udev_call}" != "" ]; then
+- udev_out=`${udev_call}`
+- udev_ver=`expr "$udev_out" : '[^0-9]*\([0-9]*\)'`
+- if [ "$udev_ver" = "" -o "$udev_ver" -lt 55 ]; then
+- udev_fix=""
+- fi
+- fi
+- ## @todo 60-vboxadd.rules -> 60-vboxguest.rules ?
+- echo "KERNEL=${udev_fix}\"vboxguest\", NAME=\"vboxguest\", OWNER=\"vboxadd\", MODE=\"0660\"" > /etc/udev/rules.d/60-vboxadd.rules
+- echo "KERNEL=${udev_fix}\"vboxuser\", NAME=\"vboxuser\", OWNER=\"vboxadd\", MODE=\"0666\"" >> /etc/udev/rules.d/60-vboxadd.rules
+- fi
+-
+- # Put mount.vboxsf in the right place
+- ln -sf "$lib_path/$PACKAGE/mount.vboxsf" /sbin
+-
+- succ_msg
+- if running_vboxguest || running_vboxadd; then
+- printf "You should restart your guest to make sure the new modules are actually used\n\n"
+- else
+- start
+- fi
++ echo "Not implemented! Please use the virtualbox-kernel-addons.SlackBuild available at SlackBuilds.org instead."
+ }
+
+ # cleanup_script
+ cleanup()
+ {
+- # Delete old versions of VBox modules.
+- DKMS=`which dkms 2>/dev/null`
+- if [ -n "$DKMS" ]; then
+- echo "Attempt to remove old DKMS modules..."
+- for mod in vboxadd vboxguest vboxvfs vboxvideo; do
+- $DKMS status -m $mod | while read line; do
+- if echo "$line" | grep -q added > /dev/null ||
+- echo "$line" | grep -q built > /dev/null ||
+- echo "$line" | grep -q installed > /dev/null; then
+- version=`echo "$line" | sed "s/$mod,\([^,]*\)[,:].*/\1/;t;d"`
+- echo " removing module $mod version $version"
+- $DKMS remove -m $mod -v $version --all 1>&2
+- fi
+- done
+- done
+- echo "Done."
+- fi
+-
+- # Remove old installed modules
+- find /lib/modules -name vboxadd\* | xargs rm 2>/dev/null
+- find /lib/modules -name vboxguest\* | xargs rm 2>/dev/null
+- find /lib/modules -name vboxvfs\* | xargs rm 2>/dev/null
+- find /lib/modules -name vboxvideo\* | xargs rm 2>/dev/null
+- depmod
+-
+- # Remove old module sources
+- rm -rf /usr/src/vboxadd-* /usr/src/vboxguest-* /usr/src/vboxvfs-* /usr/src/vboxvideo-*
+-
+- # Remove other files
+- rm /sbin/mount.vboxsf 2>/dev/null
+- rm /etc/udev/rules.d/60-vboxadd.rules 2>/dev/null
++ echo "Not implemented! Please use removepkg or pkgtool to remove virtualbox-{ose,kernel}-addons instead."
+ }
+
+ dmnstatus()
diff --git a/system/virtualbox-ose-addons/slack-desc b/system/virtualbox-ose-addons/slack-desc
index edd5412ae6..0eb89a65f7 100644
--- a/system/virtualbox-ose-addons/slack-desc
+++ b/system/virtualbox-ose-addons/slack-desc
@@ -5,12 +5,12 @@
# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
- |-----handy-ruler---------------------------------------|
+ |-----handy-ruler------------------------------------------------------|
virtualbox-ose-addons: virtualbox-ose-addons (VirtualBox Guest Additions)
virtualbox-ose-addons:
-virtualbox-ose-addons: This is the userspace part of the VirtualBox Guest
-virtualbox-ose-addons: Additions. Together with virtualbox-kernel-addons
-virtualbox-ose-addons: they enable shared folders, shared clipboard, etc
+virtualbox-ose-addons: This is the userspace part of the VirtualBox Guest Additions.
+virtualbox-ose-addons: Together with virtualbox-kernel-addons, they enable shared folders,
+virtualbox-ose-addons: folders, shared clipboard, etcetera usage inside guest machines.
virtualbox-ose-addons:
virtualbox-ose-addons: Homepage: http://www.virtualbox.org
virtualbox-ose-addons:
diff --git a/system/virtualbox-ose-addons/virtualbox-ose-addons.SlackBuild b/system/virtualbox-ose-addons/virtualbox-ose-addons.SlackBuild
index fd89237eae..940f13e940 100644
--- a/system/virtualbox-ose-addons/virtualbox-ose-addons.SlackBuild
+++ b/system/virtualbox-ose-addons/virtualbox-ose-addons.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for virtualbox-ose-addons
-# Copyright 2008-2009 Heinz Wiesinger <pprkut@liwjatan.at>
+# Copyright 2008-2009 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,9 +24,9 @@
PRGNAM=virtualbox-ose-addons
SRCNAM=VirtualBox
-VERSION=2.1.4
+VERSION=3.1.2
ARCH=${ARCH:-i486}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
CWD=$(pwd)
@@ -45,10 +45,16 @@ JOBS=${JOBS:-3}
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+ TARGET="x86"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+ TARGET="x86"
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+ TARGET="amd64"
fi
set -e
@@ -57,16 +63,16 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-${VERSION}_OSE
-tar xvf $CWD/$SRCNAM-${VERSION}-3-OSE.tar.bz2
+tar xvf $CWD/$SRCNAM-${VERSION}-OSE.tar.bz2
cd $SRCNAM-${VERSION}_OSE
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
-# We set the environment variables manually to avoid dependency on dev86 and acpica
+# We set the environment variables manually to avoid dependency on acpica
export BUILD_PLATFORM="linux"
-export BUILD_PLATFORM_ARCH="x86"
+export BUILD_PLATFORM_ARCH="$TARGET"
export BUILD_TARGET="linux"
-export BUILD_TARGET_ARCH="x86"
+export BUILD_TARGET_ARCH="$TARGET"
export BUILD_TARGET_CPU="$ARCH"
export BUILD_TYPE="release"
export PATH_KBUILD="$TMP/$SRCNAM-${VERSION}_OSE/kBuild"
@@ -81,38 +87,54 @@ unset path_kbuild_bin path_dev_bin
kmk -j ${JOBS} LOCALCFG=$CWD/LocalConfig.kmk
-mkdir -p $PKG/sbin \
- $PKG/usr/{src,bin,sbin,share/autostart} \
+mkdir -p $PKG/lib/udev/rules.d $PKG/sbin \
$PKG/etc/{xdg/autostart,rc.d} \
- $PKG/usr/lib/xorg/modules/{drivers,input} \
- $PKG/lib/udev/rules.d
+ $PKG/usr/{src,bin,sbin,share/autostart} \
+ $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/{drivers,input} \
+ $PKG/usr/share/hal/fdi/policy/20thirdparty
+patch -d src/VBox/Additions/linux/installer/ -i $CWD/rc.vboxadd.diff
cp -f src/VBox/Additions/linux/installer/vboxadd.sh $PKG/etc/rc.d/rc.vboxadd.new
-cp -f src/VBox/Additions/linux/installer/vboxadd-timesync.sh $PKG/etc/rc.d/rc.vboxadd-timesync.new
+cp -f src/VBox/Additions/linux/installer/vboxadd-service.sh $PKG/etc/rc.d/rc.vboxadd-service.new
-cp -f src/VBox/Additions/x11/installer/vboxclient.desktop $PKG/etc/xdg/autostart/
-cp -f src/VBox/Additions/x11/installer/vboxclient.desktop $PKG/usr/share/autostart/
-install -m 755 src/VBox/Additions/x11/installer/VBoxRandR.sh $PKG/usr/bin/VBoxRandR
+cp -f src/VBox/Additions/x11/Installer/vboxclient.desktop $PKG/etc/xdg/autostart/
+cp -f src/VBox/Additions/x11/Installer/vboxclient.desktop $PKG/usr/share/autostart/
+install -m 755 src/VBox/Additions/x11/Installer/VBoxRandR.sh $PKG/usr/bin/VBoxRandR
+install -m 755 src/VBox/Additions/x11/Installer/98vboxadd-xclient $PKG/usr/bin/VBoxClient-all
+install -m 644 src/VBox/Additions/linux/installer/90-vboxguest.fdi \
+ $PKG/usr/share/hal/fdi/policy/20thirdparty
-echo "KERNEL==\"vboxadd\", NAME=\"vboxadd\", OWNER=\"vboxadd\", MODE=\"0660\"" \
+echo "KERNEL==\"vboxguest\", NAME=\"vboxguest\", OWNER=\"vboxadd\", MODE=\"0660\"" \
> $PKG/lib/udev/rules.d/60-vboxadd.rules
+echo "KERNEL==\"vboxuser\", NAME=\"vboxuser\", OWNER=\"vboxadd\", MODE=\"0666\"" \
+ >> $PKG/lib/udev/rules.d/60-vboxadd.rules
-cd out/linux.x86/release/bin/additions
- cp -rf src/vboxadd $PKG/usr/src/vboxadd-$VERSION
+cd out/linux.$TARGET/release/bin/additions
+ cp -rf src/vboxguest $PKG/usr/src/vboxguest-$VERSION
cp -rf src/vboxvfs $PKG/usr/src/vboxvfs-$VERSION
+ cp -rf src/vboxvideo $PKG/usr/src/vboxvideo-$VERSION
install -m 755 VBoxControl $PKG/usr/bin/
install -m 755 VBoxClient $PKG/usr/bin/
- install -m 755 vboxadd-timesync $PKG/usr/sbin/
- install -m 4755 mountvboxsf $PKG/sbin/mount.vboxsf
- install -m 644 vboxvideo_drv_14.so $PKG/usr/lib/xorg/modules/drivers/vboxvideo_drv.so
- install -m 644 vboxmouse_drv_14.so $PKG/usr/lib/xorg/modules/input/vboxmouse_drv.so
-
- chown vboxadd:1 $PKG/usr/bin/VBoxClient
- chmod 4755 $PKG/usr/bin/VBoxClient
+ install -m 755 VBoxService $PKG/usr/sbin/
+ install -m 4755 mount.vboxsf $PKG/sbin/mount.vboxsf
+ install -m 644 vboxvideo_drv_16.so $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/drivers/vboxvideo_drv.so
+ install -m 644 vboxmouse_drv_16.so $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/input/vboxmouse_drv.so
+
+ install -m 644 VBoxOGLcrutil.so $PKG/usr/lib$LIBDIRSUFFIX
+ install -m 644 VBoxOGLerrorspu.so $PKG/usr/lib$LIBDIRSUFFIX
+ install -m 644 VBoxOGLarrayspu.so $PKG/usr/lib$LIBDIRSUFFIX
+ install -m 644 VBoxOGLfeedbackspu.so $PKG/usr/lib$LIBDIRSUFFIX
+ install -m 644 VBoxOGLpackspu.so $PKG/usr/lib$LIBDIRSUFFIX
+ install -m 644 VBoxOGLpassthroughspu.so $PKG/usr/lib$LIBDIRSUFFIX
+ install -m 644 VBoxOGL.so $PKG/usr/lib$LIBDIRSUFFIX
+
+ mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/dri
+ ln -s /usr/lib$LIBDIRSUFFIX/VBoxOGL.so $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/dri/vboxvideo_dri.so
cd -
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -f COPYING COPYING.CDDL $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/README.SLACKWARE > $PKG/usr/doc/$PRGNAM-$VERSION/README.SLACKWARE
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
@@ -120,4 +142,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/virtualbox-ose-addons/virtualbox-ose-addons.info b/system/virtualbox-ose-addons/virtualbox-ose-addons.info
index ddfa3d83a6..6a3cb04bf8 100644
--- a/system/virtualbox-ose-addons/virtualbox-ose-addons.info
+++ b/system/virtualbox-ose-addons/virtualbox-ose-addons.info
@@ -1,8 +1,10 @@
PRGNAM="virtualbox-ose-addons"
-VERSION="2.1.4"
+VERSION="3.1.2"
HOMEPAGE="http://www.virtualbox.org"
-DOWNLOAD="http://download.virtualbox.org/virtualbox/2.1.4/VirtualBox-2.1.4-3-OSE.tar.bz2"
-MD5SUM="54548336d61b33e2a01b210b314927cd"
-MAINTAINER="ppr:kut"
+DOWNLOAD="http://download.virtualbox.org/virtualbox/3.1.2/VirtualBox-3.1.2-OSE.tar.bz2"
+MD5SUM="e7808f16114f5b1a65aa2df1aa33e1a7"
+DOWNLOAD_x86_64="UNTESTED"
+MD5SUM_x86_64=""
+MAINTAINER="Heinz Wiesinger"
EMAIL="pprkut@liwjatan.at"
-APPROVED="dsomero,rworkman"
+APPROVED="rworkman"