On April 1, 2010 09:53:20 pm Trent Shea wrote:
>  I'll post a 
> patch when I'm done for anyone interested.

It's ugly, but the hack worked for me, for now; I may clean it up, later... 
zzz...

The install needs to be followed up with /etc/rc.d/init.d/vboxdrv setup to 
install the kernel modules.


-- 
Regards,
Trent.
--- install.sh	2010-03-25 13:04:48.000000000 -0600
+++ ../virtualbox-3.1.6/install.sh	2010-04-01 23:22:36.000000000 -0600
@@ -14,19 +14,25 @@
 
 # Source functions needed by the installer
 . ./routines.sh
-
-LOG="/var/log/vbox-install.log"
+DESTDIR=$PWD/debian/virtualbox
+#DESTDIR=$PWD/virtualbox
+LOGDIR="${DESTDIR}/var/log"
+mkdir -vp $LOGDIR
+mkdir -vp "$DESTDIR/etc/rc.d/init.d"
+mkdir -vp "$DESTDIR/etc/udev/rules.d"
+LOG="${DESTDIR}/var/log/vbox-install.log"
 VERSION="3.1.6"
 SVNREV="59338"
 BUILD="2010-03-25T19:04:25Z"
 ARCH="x86"
 HARDENED="1"
-CONFIG_DIR="/etc/vbox"
+CONFIG_DIR="${DESTDIR}/etc/vbox"
 CONFIG="vbox.cfg"
 CONFIG_FILES="filelist"
 DEFAULT_FILES=`pwd`/deffiles
 GROUPNAME="vboxusers"
-INSTALLATION_DIR="/opt/VirtualBox"
+INSTALLATION_DIR="$DESTDIR/opt/virtualbox"
+INSTALLATION_DIR_1="/opt/virtualbox"
 LICENSE_ACCEPTED=""
 PREV_INSTALLATION=""
 PYTHON="1"
@@ -151,7 +157,7 @@
 
 # Sensible default actions
 ACTION="install"
-BUILD_MODULE="true"
+BUILD_MODULE="false"
 while true
 do
     if [ "$2" = "" ]; then
@@ -364,18 +370,24 @@
     groupadd $GROUPNAME 2> /dev/null
 
     # Create symlinks to start binaries
-    ln -sf $INSTALLATION_DIR/VBox.sh /usr/bin/VirtualBox
-    ln -sf $INSTALLATION_DIR/VBox.sh /usr/bin/VBoxManage
-    ln -sf $INSTALLATION_DIR/VBox.sh /usr/bin/VBoxSDL
-    ln -sf $INSTALLATION_DIR/VBox.sh /usr/bin/VBoxVRDP
-    ln -sf $INSTALLATION_DIR/VBox.sh /usr/bin/VBoxHeadless
-    ln -sf $INSTALLATION_DIR/VBox.sh /usr/bin/vboxwebsrv
-    ln -sf $INSTALLATION_DIR/VBox.png /usr/share/pixmaps/VBox.png
-    ln -sf $INSTALLATION_DIR/virtualbox.desktop /usr/share/applications/virtualbox.desktop
-    ln -sf $INSTALLATION_DIR/rdesktop-vrdp /usr/bin/rdesktop-vrdp
-    ln -sf $INSTALLATION_DIR/src/vboxdrv /usr/src/vboxdrv-3.1.6
-    ln -sf $INSTALLATION_DIR/src/vboxnetflt /usr/src/vboxnetflt-3.1.6
-    ln -sf $INSTALLATION_DIR/src/vboxnetadp /usr/src/vboxnetadp-3.1.6
+    # make sure the folders exist for DESTDIR
+    mkdir -vp ${DESTDIR}/usr/bin
+    mkdir -vp ${DESTDIR}/usr/share/pixmaps
+    mkdir -vp ${DESTDIR}/usr/share/applications
+    mkdir -vp ${DESTDIR}/usr/src
+
+    ln -sf $INSTALLATION_DIR_1/VBox.sh ${DESTDIR}/usr/bin/VirtualBox
+    ln -sf $INSTALLATION_DIR_1/VBox.sh ${DESTDIR}/usr/bin/VBoxManage
+    ln -sf $INSTALLATION_DIR_1/VBox.sh ${DESTDIR}/usr/bin/VBoxSDL
+    ln -sf $INSTALLATION_DIR_1/VBox.sh ${DESTDIR}/usr/bin/VBoxVRDP
+    ln -sf $INSTALLATION_DIR_1/VBox.sh ${DESTDIR}/usr/bin/VBoxHeadless
+    ln -sf $INSTALLATION_DIR_1/VBox.sh ${DESTDIR}/usr/bin/vboxwebsrv
+    ln -sf $INSTALLATION_DIR_1/VBox.png ${DESTDIR}/usr/share/pixmaps/VBox.png
+    ln -sf $INSTALLATION_DIR_1/virtualbox.desktop ${DESTDIR}/usr/share/applications/virtualbox.desktop
+    ln -sf $INSTALLATION_DIR_1/rdesktop-vrdp ${DESTDIR}/usr/bin/rdesktop-vrdp
+    ln -sf $INSTALLATION_DIR_1/src/vboxdrv ${DESTDIR}/usr/src/vboxdrv-3.1.6
+    ln -sf $INSTALLATION_DIR_1/src/vboxnetflt ${DESTDIR}/usr/src/vboxnetflt-3.1.6
+    ln -sf $INSTALLATION_DIR_1/src/vboxnetadp ${DESTDIR}/usr/src/vboxnetadp-3.1.6
 
     # If Python is available, install Python bindings
     if [ -n "$PYTHON" ]; then
@@ -404,11 +416,11 @@
         fi
         # Write udev rules
         echo "KERNEL=${udev_fix}\"vboxdrv\", NAME=\"vboxdrv\", OWNER=\"root\", GROUP=\"$VBOXDRV_GRP\", MODE=\"$VBOXDRV_MODE\"" \
-          > /etc/udev/rules.d/10-vboxdrv.rules
+          > ${DESTDIR}/etc/udev/rules.d/10-vboxdrv.rules
         echo "SUBSYSTEM=${udev_fix}\"usb_device\", GROUP=\"$VBOXUSB_GRP\", MODE=\"$VBOXUSB_MODE\"" \
-          >> /etc/udev/rules.d/10-vboxdrv.rules
+          >> ${DESTDIR}/etc/udev/rules.d/10-vboxdrv.rules
         echo "SUBSYSTEM=${udev_fix}\"usb\", ENV{DEVTYPE}==\"usb_device\", GROUP=\"$VBOXUSB_GRP\", MODE=\"$VBOXUSB_MODE\"" \
-          >> /etc/udev/rules.d/10-vboxdrv.rules
+          >> ${DESTDIR}/etc/udev/rules.d/10-vboxdrv.rules
     fi
     # Remove old udev description file
     if [ -f /etc/udev/rules.d/60-vboxdrv.rules ]; then
--- routines.sh	2010-03-25 13:04:48.000000000 -0600
+++ ../virtualbox-3.1.6/routines.sh	2010-04-01 22:45:05.000000000 -0600
@@ -255,8 +255,8 @@
         copy_install_script "$script" "/etc/rc.d/rc.$name"
         chmod 755 "/etc/rc.d/rc.$name" 2> /dev/null
     elif [ "$ro_INIT_TYPE" = "lfs" ]; then
-        copy_install_script "$script" "/etc/rc.d/init.d/$name"
-        chmod 755 "/etc/rc.d/init.d/$name" 2> /dev/null
+        copy_install_script "$script" "${DESTDIR}/etc/rc.d/init.d/$name"
+        chmod 755 "${DESTDIR}/etc/rc.d/init.d/$name" 2> /dev/null
     elif [ "$ro_INIT_TYPE" = "pardus" ]; then
         copy_install_script "$script" "/usr/sbin/$name"
         chmod 755 "/usr/sbin/$name" 2> /dev/null
@@ -606,7 +606,8 @@
     echo  1>&2 "Python found: $PYTHON, installing bindings..."
     # Pass install path via environment
     export VBOX_INSTALL_PATH
-    $SHELL -c "cd $VBOX_INSTALL_PATH/sdk/installer && $PYTHON vboxapisetup.py install"
+# Trent TODO: if statement so things don't blow up when DESTDIR is not used
+    $SHELL -c "cd $VBOX_INSTALL_PATH/sdk/installer && $PYTHON vboxapisetup.py install --root $DESTDIR"
     # remove files created during build
     rm -rf $VBOX_INSTALL_PATH/sdk/installer/build
 
-- 
http://linuxfromscratch.org/mailman/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page

Reply via email to