forked from pool/virtualbox
52 lines
1.4 KiB
Bash
52 lines
1.4 KiB
Bash
|
#!/bin/bash
|
||
|
#
|
||
|
# Script to build VirtualBox guest kernel modules
|
||
|
# Copyright C 2017 by Larry Finger
|
||
|
#
|
||
|
# This script is part of the openSUSE VirtualBox package
|
||
|
#
|
||
|
SOURCE="/usr/src/kernel-modules/virtualbox"
|
||
|
LOGFILE="/var/log/virtualbox.log"
|
||
|
INCLUDE="/lib/modules/`uname -r`/build/include"
|
||
|
|
||
|
# Force installation of VB guest sources. Zypper will install all the prerequisies
|
||
|
echo "Installing all required packages..."
|
||
|
killproc PackageKit
|
||
|
zypper install -y virtualbox-guest-source > /dev/null 2>&1
|
||
|
if [ ! $? ] ; then
|
||
|
echo "Installation of required packages failed."
|
||
|
echo "Use 'sudo zypper install virtualbox-guest-source' to see the reason."
|
||
|
exit 1
|
||
|
fi
|
||
|
# Prerequisites are available, start build
|
||
|
pushd $SOURCE > /dev/null 2>&1
|
||
|
echo "Building kernel modules..."
|
||
|
tar jxf guest_src.tar.bz2 > /dev/null 2>&1
|
||
|
cd additions/src
|
||
|
make > $LOGFILE 2>&1
|
||
|
if [ ! $? ] ; then
|
||
|
echo ""
|
||
|
echo "Build of VirtualBox guest 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 [ ! $? ] ; then
|
||
|
echo ""
|
||
|
echo "Installation of VirtualBox guest kernel modules failed."
|
||
|
echo "Look at $LOGFILE to find reasons."
|
||
|
popd > /dev/null 2>&1
|
||
|
exit 1
|
||
|
fi
|
||
|
depmod -a
|
||
|
modprobe -av vboxguest vboxvideo vboxsf
|
||
|
cd ../..
|
||
|
rm -rf additions
|
||
|
popd > /dev/null 2>&1
|
||
|
echo "Kernel modules are installed and loaded."
|
||
|
exit 0
|
||
|
|