1
0
forked from pool/virtualbox
virtualbox/vbox-vboxadd-init-script.diff
Larry Finger e2ddd9b641 - Version bump to 5.1.24 (released 2017-07-18 by Oracle)
This is a maintenance release. The following items were fixed and/or added:
    VMM: mask the VME CPUID capability on AMD Ryzen processors for now to make certain guests works, for example Windows XP
    VMM: emulate more SSE2 instructions
    VMM: properly clear the TF and AC flags when dispatching real-mode interrupts
    GUI: fixes to make the mini-toolbar work with recent versions of KDE / Plasma (bug #16325)
    GUI: fixed a potential crash when a VM with multiple screens is running in full screen / seamless mode and a host screen is removed, for example when connecting to the host via RDP
    GUI: fixed initial size hints for guests which set intermediate sizes before responding (bug #16593)
    GUI: prevent stopped screen updates or black screen on reboot in a multi-screen setup under certain conditions
    Audio: many improvements for Windows 10 guests (bugs #15189, #15925, #16170, #16682, #16794 and others)
    Storage: fixed possible crash when using Intels SPDK
    API: use the correct file name of the VM machine state if the VM settings directory is renamed, for example during grouping / ungrouping a VM (bugs #16075 and #16745)
    API: return the correct error code if powering up a VM fails
    API: video recording did not automatically start at VM start when enabled in the VM settings (bug #16803)
    API: when relocating a medium, check that the target path is fully qualified
    EFI: fix for VMs with more than 3504MB RAM (bug #11103)
    Host-only adapter: correctly determine IPv4 netmasks on Windows hosts (bug #16826)
    NAT network: properly do the refcounting for starting / stopping the NAT / DHCP services if the NAT network is changed while the adapter network connection type is anything else but NAT network
    VBoxManage: fixed controlvm videocapfile (bug #16779)
    Linux / Mac OS X hosts: more fixes for loading shared libraries (5.1.20 regression; bugs #16778, #16693)
    Linux hosts / guests: Linux 4.12 fixes (bugs #16725, #16800)
    Linux hosts / guests: reduce the kernel stack consumption for Linux kernels with CONFIG_CPUMASK_OFFSTACK defined
    Linux hosts / guests: fixes for kernel modules built with gcc-7 (bug #16772)
    Linux hosts / guests: Linux 4.13 fix (bug #16887)
    Linux hosts: don't depend on net-tools on newer distributions as this package is deprecated in favour of iproute (bug #16764)
    Linux hosts: make 2D video acceleration available for older Linux distributions (5.1 regression; bug #16858)
    Linux Additions: fix for dynamic resizing with Oracle Linux 6 with UEK4
    Linux Additions: make Fedora 25 and 26 Alpha work when 3D pass-through is enabled
    Linux Additions: no longer recommend removing distribution- installed Additions if they are updated to our guidelines

OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=351
2017-07-19 04:47:23 +00:00

282 lines
11 KiB
Diff

Index: VirtualBox-5.1.24/src/VBox/Additions/linux/installer/vboxadd.sh
===================================================================
--- VirtualBox-5.1.24.orig/src/VBox/Additions/linux/installer/vboxadd.sh
+++ VirtualBox-5.1.24/src/VBox/Additions/linux/installer/vboxadd.sh
@@ -25,11 +25,14 @@
# Provides: vboxadd
# Required-Start:
# Required-Stop:
-# Default-Start: 2 3 4 5
+# Should-Start: $remote_fs
+# Should-Stop: $remote_fs
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# X-Start-Before: display-manager
# X-Service-Type: oneshot
# Description: VirtualBox Linux Additions kernel modules
+# Short-Description: VirtualBox Linux Additions kernel modules
### END INIT INFO
## @todo This file duplicates a lot of script with vboxdrv.sh. When making
@@ -112,18 +115,9 @@ fail()
dev=/dev/vboxguest
userdev=/dev/vboxuser
-config=/var/lib/VBoxGuestAdditions/config
owner=vboxadd
group=1
-if test -r $config; then
- . $config
-else
- fail "Configuration file $config not found"
-fi
-test -n "$INSTALL_DIR" -a -n "$INSTALL_VER" ||
- fail "Configuration file $config not complete"
-
running_vboxguest()
{
lsmod | grep -q "vboxguest[^_-]"
@@ -166,12 +160,6 @@ do_vboxguest_non_udev()
fail "Cannot create device $dev with major $maj and minor $min"
}
fi
- chown $owner:$group $dev 2>/dev/null || {
- rm -f $dev 2>/dev/null
- rm -f $userdev 2>/dev/null
- rmmod vboxguest 2>/dev/null
- fail "Cannot change owner $owner:$group for device $dev"
- }
if [ ! -c $userdev ]; then
maj=10
@@ -182,12 +170,6 @@ do_vboxguest_non_udev()
rmmod vboxguest 2>/dev/null
fail "Cannot create device $userdev with major $maj and minor $min"
}
- chown $owner:$group $userdev 2>/dev/null || {
- rm -f $dev 2>/dev/null
- rm -f $userdev 2>/dev/null
- rmmod vboxguest 2>/dev/null
- fail "Cannot change owner $owner:$group for device $userdev"
- }
fi
fi
}
@@ -197,9 +179,8 @@ start()
begin "Starting the VirtualBox Guest Additions" console;
# If we got this far assume that the slow set-up has been done.
QUICKSETUP=yes
- if test -z "${INSTALL_NO_MODULE_BUILDS}"; then
- uname -r | grep -q -E '^2\.6|^3|^4' 2>/dev/null &&
- ps -A -o comm | grep -q '/*udevd$' 2>/dev/null ||
+ uname -r | grep -q -E '^2\.6|^3|^4' 2>/dev/null &&
+ ps -A -o comm | grep -q '/*udevd$' 2>/dev/null ||
no_udev=1
running_vboxguest || {
rm -f $dev || {
@@ -213,7 +194,6 @@ start()
$MODPROBE vboxguest >/dev/null 2>&1 || {
setup
$MODPROBE vboxguest >/dev/null 2>&1 || {
- ${INSTALL_DIR}/init/vboxadd-x11 cleanup
fail "modprobe vboxguest failed"
}
}
@@ -238,14 +218,15 @@ start()
fi # INSTALL_NO_MODULE_BUILDS
# Put the X.Org driver in place. This is harmless if it is not needed.
- /sbin/rcvboxadd-x11 setup
+ #/sbin/rcvboxadd-x11 setup
# Install the guest OpenGL drivers. For now we don't support
# multi-architecture installations
rm -f /etc/ld.so.conf.d/00vboxvideo.conf
rm -Rf /var/lib/VBoxGuestAdditions/lib
if /usr/bin/VBoxClient --check3d 2>/dev/null; then
mkdir -p /var/lib/VBoxGuestAdditions/lib
- ln -sf "${INSTALL_DIR}/lib/VBoxOGL.so" /var/lib/VBoxGuestAdditions/lib/libGL.so.1
+ ln -sf "/usr/lib64/VBoxOGL.so" /var/lib/VBoxGuestAdditions/lib/libGL.so.1
+ ln -sf "/usr/lib64/VBoxEGL.so" /var/lib/VBoxGuestAdditions/lib/libEGL.so.1
# SELinux for the OpenGL libraries, so that gdm can load them during the
# acceleration support check. This prevents an "Oh no, something has gone
# wrong!" error when starting EL7 guests.
@@ -256,6 +237,15 @@ start()
chcon -h -t lib_t "/var/lib/VBoxGuestAdditions/lib/libGL.so.1"
fi
echo "/var/lib/VBoxGuestAdditions/lib" > /etc/ld.so.conf.d/00vboxvideo.conf
+ # The above code will enable 3D acceleration for Gnome VM desktops. For Plasma 5 (KDE)
+ # VM's almost everything breaks. For that reason, acceleration MUST be disabled here.
+ # Gnome users that want this feature should delete the two 'rm' commands that follow.
+ # You will need to repeat this modification EVERY time the VirtualBox package is
+ # reinstalled
+ # Any KDE user that deletes the two 'rm' commands MUST know how to recover your sustem
+ # from a mode 3 boot. YOU HAVE BEEN WARNED.
+ rm /var/lib/VBoxGuestAdditions/lib/*
+ rm /etc/ld.so.conf.d/00vboxvideo.conf
fi
ldconfig
@@ -396,9 +386,9 @@ create_udev_rule()
echo "KERNEL=${udev_fix}\"vboxuser\", NAME=\"vboxuser\", OWNER=\"vboxadd\", MODE=\"0666\"" >> /etc/udev/rules.d/60-vboxadd.rules
fi
}
-
-create_module_rebuild_script()
-{
+ # And an rc file to re-build the kernel modules and re-set-up the X server.
+ ln -sf "$lib_path/$PACKAGE/vboxadd" /sbin/rcvboxadd
+ #ln -sf "$lib_path/$PACKAGE/vboxadd-x11" /sbin/rcvboxadd-x11
# And a post-installation script for rebuilding modules when a new kernel
# is installed.
mkdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d
@@ -429,47 +419,18 @@ shared_folder_setup()
## @todo It would be nicer if the kernel module just parsed parameters
# itself instead of needing a separate binary to do that.
ln -sf "$lib_path/$PACKAGE/mount.vboxsf" /sbin
- # SELinux security context for the mount helper.
- if test -e /etc/selinux/config; then
- # This is correct. semanage maps this to the real path, and it aborts
- # with an error, telling you what you should have typed, if you specify
- # the real path. The "chcon" is there as a back-up for old guests.
- command -v semanage > /dev/null &&
- semanage fcontext -a -t mount_exec_t "/usr/lib/$PACKAGE/mount.vboxsf"
- chcon -t mount_exec_t "$lib_path/$PACKAGE/mount.vboxsf"
- fi
- succ_msg
-}
-
# setup_script
setup()
{
- export BUILD_TYPE
- export USERNAME
-
- rm -f $LOG
- MODULE_SRC="$INSTALL_DIR/src/vboxguest-$INSTALL_VER"
- BUILDINTMP="$MODULE_SRC/build_in_tmp"
- chcon -t bin_t "$BUILDINTMP" > /dev/null 2>&1
-
- test -z "${INSTALL_NO_MODULE_BUILDS}" && setup_modules
- create_vbox_user
- create_udev_rule
- test -z "${INSTALL_NO_MODULE_BUILDS}" && create_module_rebuild_script
- test -n "${QUICKSETUP}" && return 0
- shared_folder_setup
- if running_vboxguest || running_vboxadd; then
- begin "Running kernel modules will not be replaced until the system is restarted"
- fi
- return 0
+ begin "Recompiling VirtualBox kernel module, NOT. It has been packaged."
+ succ_msg
}
# cleanup_script
cleanup()
{
- if test -z "${INSTALL_NO_MODULE_BUILDS}"; then
- # Delete old versions of VBox modules.
- cleanup_modules
+ # Delete old versions of VBox modules.
+ cleanup_modules
depmod
# Remove old module sources
@@ -479,13 +440,14 @@ cleanup()
fi
# Clean-up X11-related bits
- ${INSTALL_DIR}/init/vboxadd-x11 cleanup
+ #/sbin/rcvboxadd-x11 cleanup
# Remove other files
rm /sbin/mount.vboxsf 2>/dev/null
- if test -z "${INSTALL_NO_MODULE_BUILDS}"; then
- rm -f /etc/kernel/postinst.d/vboxadd /etc/kernel/prerm.d/vboxadd
- rmdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d 2>/dev/null
+ rm /sbin/rcvboxadd 2>/dev/null
+ #rm /sbin/rcvboxadd-x11 2>/dev/null
+ rm -f /etc/kernel/postinst.d/vboxadd /etc/kernel/prerm.d/vboxadd
+ rmdir -p /etc/kernel/postinst.d /etc/kernel/prerm.d 2>/dev/null
fi
rm /etc/udev/rules.d/60-vboxadd.rules 2>/dev/null
}
Index: VirtualBox-5.1.24/src/VBox/Additions/linux/installer/vboxadd-service.sh
===================================================================
--- VirtualBox-5.1.24.orig/src/VBox/Additions/linux/installer/vboxadd-service.sh
+++ VirtualBox-5.1.24/src/VBox/Additions/linux/installer/vboxadd-service.sh
@@ -20,7 +20,7 @@
# Provides: vboxadd-service
# Required-Start: vboxadd
# Required-Stop: vboxadd
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: VirtualBox Additions Service
### END INIT INFO
Index: VirtualBox-5.1.24/src/VBox/Installer/linux/vboxautostart-service.sh
===================================================================
--- VirtualBox-5.1.24.orig/src/VBox/Installer/linux/vboxautostart-service.sh
+++ VirtualBox-5.1.24/src/VBox/Installer/linux/vboxautostart-service.sh
@@ -20,7 +20,7 @@
# Provides: vboxautostart-service
# Required-Start: vboxdrv
# Required-Stop: vboxdrv
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: VirtualBox autostart service
### END INIT INFO
Index: VirtualBox-5.1.24/src/VBox/Installer/linux/vboxballoonctrl-service.sh
===================================================================
--- VirtualBox-5.1.24.orig/src/VBox/Installer/linux/vboxballoonctrl-service.sh
+++ VirtualBox-5.1.24/src/VBox/Installer/linux/vboxballoonctrl-service.sh
@@ -20,7 +20,7 @@
# Provides: vboxballoonctrl-service
# Required-Start: vboxdrv
# Required-Stop: vboxdrv
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: VirtualBox watchdog daemon
### END INIT INFO
Index: VirtualBox-5.1.24/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
===================================================================
--- VirtualBox-5.1.24.orig/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
+++ VirtualBox-5.1.24/src/VBox/ValidationKit/testboxscript/linux/testboxscript-service.sh
@@ -31,7 +31,7 @@
# Provides: testboxscript-service
# Required-Start: $network
# Required-Stop:
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: TestBoxScript service
### END INIT INFO
Index: VirtualBox-5.1.24/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
===================================================================
--- VirtualBox-5.1.24.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
+++ VirtualBox-5.1.24/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs-nat.sh
@@ -31,7 +31,7 @@
# Provides: vboxtxs
# Required-Start: $network
# Required-Stop:
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: VirtualBox Test Execution Service
### END INIT INFO
Index: VirtualBox-5.1.24/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
===================================================================
--- VirtualBox-5.1.24.orig/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
+++ VirtualBox-5.1.24/src/VBox/ValidationKit/utils/TestExecServ/linux/vboxtxs.sh
@@ -31,7 +31,7 @@
# Provides: vboxtxs
# Required-Start: $network
# Required-Stop:
-# Default-Start: 2 3 4 5
+# Default-Start: 2 3 5
# Default-Stop: 0 1 6
# Description: VirtualBox Test Execution Service
### END INIT INFO