1
0
forked from pool/virtualbox
virtualbox/vboxconfig.sh

55 lines
1.5 KiB
Bash
Raw Normal View History

#!/bin/bash
2017-05-10 20:01:46 +02:00
#
# Script to build VirtualBox host kernel modules
# Copyright C 2017 by Larry Finger
#
# This script is part of the openSUSE VirtualBox package
#
SOURCE="/usr/src/kernel-modules/virtualbox/src"
2017-05-10 20:01:46 +02:00
LOGFILE="/var/log/virtualbox.log"
INCLUDE="/lib/modules/`uname -r`/build/include"
#
# Test if vboxpci module loaded. If it is, skip everything else
loaded=$(lsmod | grep vboxpci)
if [ -n "$loaded" ] ; then
echo "Kernel modules available - exiting..."
exit 0
fi
#
2017-05-10 20:01:46 +02:00
# Force installation of VB host sources. Zypper will install all the prerequisies
echo "Installing all required packages..."
killproc PackageKit
zypper install -y virtualbox-host-source > /dev/null 2>&1
if [ "$?" -ne 0 ] ; then
2017-05-10 20:01:46 +02:00
echo "Installation of required packages failed."
echo "Use 'sudo zypper install virtualbox-host-source' to see the reason."
exit 1
fi
# Prerequisites are available, start build
pushd $SOURCE > /dev/null 2>&1
echo "Building kernel modules..."
make > $LOGFILE 2>&1
if [ "$?" -ne 0 ] ; then
2017-05-10 20:01:46 +02:00
echo ""
echo "Build of VirtualBox host kernel modules failed."
echo "Look at $LOGFILE to find reasons."
popd > /dev/null 2>&1
exit 1
else
echo "Kernel modules built correctly. They will now be installed."
fi
make install >> $LOGFILE 2>&1
if [ "$?" -ne 0 ] ; then
2017-05-10 20:01:46 +02:00
echo ""
echo "Installation of VirtualBox host kernel modules failed."
echo "Look at $LOGFILE to find reasons."
popd > /dev/null 2>&1
exit 1
fi
depmod -a
modprobe -av vboxnetflt vboxnetadp vboxpci
popd > /dev/null 2>&1
echo "Kernel modules are installed and loaded."
exit 0