forked from pool/virtualbox
17a3ba2102
* Add VBoxVNC as a proper external pack rather than just make the so available (bnc #1037033). Thanks to Michal Nowak for most of this effort. One hack was required to work around a bug in "VBoxManage extpack install" whereby the --accept-license option failed to work. * Improve startup of VirtualBox through use of systemd service files: a. Beginning with Oracle version 5.0.8, the command used to build the kernel modules outside of the RPM packaging code changed; however, the openSUSE version did not implement the new method. That new code is now implemented. b. In Tumbleweed, the SysV init scripts to systemd service files stopped working. Part of the new code also checks to see if the kernel modules are loaded. If not, new script files are called to include the necessary packages and build the necessary modules. c. The hooks are in place to remove the sysv init files and do the complete conversion to systemd. This step will be done at a later time. * New files are "vboxconfig.sh", "vboxguestconfig.sh", "vboxdrv.service", and "vboxadd-service.service". * New sub-packages virtualbox-guest-source and virtualbox-vnc are produced. * Some typos in virtualbox.spec are fixed. - Add libelf-devel to build. Fixes bnc #1037511. Modified the startup files to build the kernel modules if they are missing. Files "vboxconfig.sh" and "vboxguestconfig" added. OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=331
74 lines
2.6 KiB
Diff
74 lines
2.6 KiB
Diff
Index: VirtualBox-5.1.16/src/VBox/Installer/linux/vboxdrv.sh
|
|
===================================================================
|
|
--- VirtualBox-5.1.16.orig/src/VBox/Installer/linux/vboxdrv.sh
|
|
+++ VirtualBox-5.1.16/src/VBox/Installer/linux/vboxdrv.sh
|
|
@@ -19,11 +19,12 @@
|
|
#
|
|
### BEGIN INIT INFO
|
|
# Provides: vboxdrv
|
|
-# Required-Start: $syslog
|
|
-# Required-Stop:
|
|
-# Default-Start: 2 3 4 5
|
|
+# Required-Start: $syslog $remote_fs
|
|
+# Required-Stop: $syslog $remote_fs
|
|
+# Default-Start: 2 3 5
|
|
# Default-Stop: 0 1 6
|
|
-# Short-Description: VirtualBox Linux kernel module
|
|
+# Short-Description: VirtualBox Linux module
|
|
+# Description: VirtualBox Linux kernel module
|
|
### END INIT INFO
|
|
|
|
## @todo This file duplicates a lot of script with vboxadd.sh. When making
|
|
@@ -261,13 +262,6 @@ start()
|
|
fi
|
|
fi
|
|
# ensure permissions
|
|
- if ! chown :"${GROUP}" $DEVICE 2>/dev/null; then
|
|
- rmmod vboxpci 2>/dev/null
|
|
- rmmod vboxnetadp 2>/dev/null
|
|
- rmmod vboxnetflt 2>/dev/null
|
|
- rmmod vboxdrv 2>/dev/null
|
|
- failure "Cannot change group ${GROUP} for device $DEVICE"
|
|
- fi
|
|
if ! $MODPROBE vboxnetflt > /dev/null 2>&1; then
|
|
failure "modprobe vboxnetflt failed. Please use 'dmesg' to find out why"
|
|
fi
|
|
@@ -387,35 +381,8 @@ cleanup()
|
|
# setup_script
|
|
setup()
|
|
{
|
|
- begin_msg "Building VirtualBox kernel modules" console
|
|
- if ! $BUILDINTMP \
|
|
- --save-module-symvers /tmp/vboxdrv-Module.symvers \
|
|
- --module-source "$MODULE_SRC/vboxdrv" \
|
|
- --no-print-directory install >> $LOG 2>&1; then
|
|
- "${INSTALL_DIR}/check_module_dependencies.sh"
|
|
- failure "Look at $LOG to find out what went wrong"
|
|
- fi
|
|
- if ! $BUILDINTMP \
|
|
- --use-module-symvers /tmp/vboxdrv-Module.symvers \
|
|
- --module-source "$MODULE_SRC/vboxnetflt" \
|
|
- --no-print-directory install >> $LOG 2>&1; then
|
|
- failure "Look at $LOG to find out what went wrong"
|
|
- fi
|
|
- if ! $BUILDINTMP \
|
|
- --use-module-symvers /tmp/vboxdrv-Module.symvers \
|
|
- --module-source "$MODULE_SRC/vboxnetadp" \
|
|
- --no-print-directory install >> $LOG 2>&1; then
|
|
- failure "Look at $LOG to find out what went wrong"
|
|
- fi
|
|
- if ! $BUILDINTMP \
|
|
- --use-module-symvers /tmp/vboxdrv-Module.symvers \
|
|
- --module-source "$MODULE_SRC/vboxpci" \
|
|
- --no-print-directory install >> $LOG 2>&1; then
|
|
- failure "Look at $LOG to find out what went wrong"
|
|
- fi
|
|
- rm -f /etc/vbox/module_not_compiled
|
|
- depmod -a
|
|
- succ_msg "VirtualBox kernel modules built"
|
|
+# Try to build the host kernel modules in case prepackaging has failed
|
|
+ /sbin/vboxconfig
|
|
}
|
|
|
|
dmnstatus()
|