2010-12-23 11:08:49 +01:00
#!/bin/bash
export QT_NO_KDE_INTEGRATION = 1
2020-03-24 03:06:06 +01:00
2017-06-09 00:26:55 +02:00
# make certain that the user/group combination is valid
2010-12-23 11:08:49 +01:00
/usr/bin/id -nG | grep -v -e "root" -e "vboxusers" >/dev/null && /usr/lib/virtualbox/VBoxPermissionMessage && exit
2017-06-09 00:26:55 +02:00
#
# Handle the issue regarding USB passthru
# The following conditions apply:
2020-03-30 06:53:46 +02:00
# 1. If ~/.config/VirtualBox/enable exists, the user accepts the security risk.
# 2. If ~/.config/VirtualBox/disable exists, the user does not accept the risk. That file will contain the inode of /usr/lib/udev/rules.d/60-vboxdrv.rules.
2017-06-09 00:26:55 +02:00
# When that changes, the VBoxUSB_DevRules will again be displayed as that means that VB has been reloaded.
#
devrules( )
{
2017-01-14 03:16:29 +01:00
/usr/lib/virtualbox/VBoxUSB_DevRules
2017-06-09 00:26:55 +02:00
if [ $? -eq 0 ] ; then
# User accepts the risk
2020-03-30 06:53:46 +02:00
touch ~/.config/VirtualBox/enable
rm -f ~/.config/VirtualBox/disable
2017-06-09 00:26:55 +02:00
else
# User declines the risk - save the inode
2020-03-30 06:53:46 +02:00
echo "" > ~/.config/VirtualBox/disable
rm -f ~/.config/VirtualBox/enable
2017-06-09 00:26:55 +02:00
fi
}
2020-03-24 03:06:06 +01:00
2017-06-09 00:26:55 +02:00
# Start of main routine
#
2020-03-30 06:53:46 +02:00
# Ensure that ~/.config/VirtualBox exists
mkdir -p ~/.config/VirtualBox
2019-04-05 16:49:14 +02:00
# Get the inode for /usr/lib/udev/rules.d/60-vboxdrv.rules
INODE = $( stat /usr/lib/udev/rules.d/60-vboxdrv.rules | grep Inode | cut -d' ' -f3)
2020-03-30 06:53:46 +02:00
if [ ! -f ~/.config/VirtualBox/enable ] && [ ! -f ~/.config/VirtualBox/disable ] ; then
2017-06-09 00:26:55 +02:00
# Neither file exists - find what the user wants
devrules
2017-01-14 03:16:29 +01:00
fi
2017-06-09 00:26:55 +02:00
# Get the original Inode if it exists
2020-03-30 06:53:46 +02:00
if [ -f ~/.config/VirtualBox/disable ] ; then
read LINE < ~/.config/VirtualBox/disable
2017-06-09 00:26:55 +02:00
else
LINE = " "
fi
2019-04-05 16:49:14 +02:00
# If user originally declined, make certain that /usr/lib/udev/rules.d/60-vboxdrv.rules has not been changed
2020-03-30 06:53:46 +02:00
if [ -f ~/.config/VirtualBox/disable ] && [ " $LINE " != " $INODE " ] && [ " $LINE " != "" ] ; then
2017-06-09 00:26:55 +02:00
# disable is selected and the Inode has changed - ask again
devrules
fi
2020-03-30 06:53:46 +02:00
if [ -f ~/.config/VirtualBox/disable ] ; then
echo $INODE > ~/.config/VirtualBox/disable
2017-06-09 00:26:55 +02:00
if [ " $LINE " != " $INODE " ] ; then
if [ -f /usr/bin/kdesu ] ; then
kdesu /sbin/vbox-fix-usb-rules.sh
fi
if [ -f /usr/bin/gnomesu ] ; then
gnomesu /sbin/vbox-fix-usb-rules.sh
fi
fi
fi
2020-03-24 03:06:06 +01:00
# Check if extpack needs to be updated
/usr/bin/update-extpack.sh
Accepting request 696073 from home:lwfinger:branches:openSUSE:Factory
- Updated file "Fixes_for_Leap15.1.patch" to handle one addition problem due to backporting of kernel APIa.
Remove "BuildRequires: quilt" - that package is not needed.
VirtualBox 6.0.6 fixes the following: CVE-2019-2656, CVE-2019-2680, CVE-2019-2696, CVE-2019-2703, CVE-2019-2721,
CVE-2019-2722, CVE-2019-2723, CVE-2019-2657, CVE-2019-2690, CVE-2019-2679,
CVE-2019-2678, and CVE-2019-2574 boo#1132827.
- Version bump to 6.0.6 (released April 17 2019 by Oracle)
The following files in the openSUSE implemetation are removed: "fix_32_bit_builds.patch", "fixes_for_5.0.patch", and
"fixes_for_5.1.patch". These issues are fixed upstream.
OBS-URL: https://build.opensuse.org/request/show/696073
OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=486
2019-04-30 02:56:27 +02:00
# Check that /usr/lib/virtualbox/VirtualBoxVM has SUID permissions
PERM = $( ls -l /usr/lib/virtualbox/VirtualBoxVM | grep rwsr)
if [ -z " $PERM " ]
then
logger -s "Wrong permissions for VirtualBoxVM - use 'sudo chmod 4711 /usr/lib/virtualbox/VirtualBoxVM' to fix"
/usr/lib/virtualbox/VBoxSUIDMessage
exit 1
fi
2017-06-09 00:26:55 +02:00
# Now run the VB GUI
2019-01-28 21:37:13 +01:00
LD_LIBRARY_PATH = " /usr/lib/virtualbox ${ LD_LIBRARY_PATH : + : $LD_LIBRARY_PATH } " /usr/lib/virtualbox/VirtualBox6 $@