diff options
Diffstat (limited to 'community-testing/virtualbox-modules')
5 files changed, 158 insertions, 0 deletions
diff --git a/community-testing/virtualbox-modules/60-vboxguest.rules b/community-testing/virtualbox-modules/60-vboxguest.rules new file mode 100644 index 000000000..6285f7249 --- /dev/null +++ b/community-testing/virtualbox-modules/60-vboxguest.rules @@ -0,0 +1,2 @@ +ACTION=="add", KERNEL=="vboxguest", SUBSYSTEM=="misc", OWNER="root", MODE="0600" +ACTION=="add", KERNEL=="vboxuser", SUBSYSTEM=="misc", OWNER="root", MODE="0666" diff --git a/community-testing/virtualbox-modules/LocalConfig.kmk b/community-testing/virtualbox-modules/LocalConfig.kmk new file mode 100644 index 000000000..af79f90cd --- /dev/null +++ b/community-testing/virtualbox-modules/LocalConfig.kmk @@ -0,0 +1,19 @@ +VBOX_WITH_ADDITION_DRIVERS = +VBOX_WITH_INSTALLER = 1 +VBOX_WITH_LINUX_ADDITIONS = 1 +VBOX_WITH_X11_ADDITIONS = +VBOX_WITH_TESTCASES = +VBOX_WITH_TESTSUITE = +VBOX_WITH_ORIGIN := +VBOX_PATH_APP_PRIVATE_ARCH := /usr/lib/virtualbox +VBOX_PATH_SHARED_LIBS := $(VBOX_PATH_APP_PRIVATE_ARCH) +VBOX_WITH_RUNPATH := $(VBOX_PATH_APP_PRIVATE_ARCH) +VBOX_PATH_APP_PRIVATE := /usr/share/virtualbox +VBOX_PATH_APP_DOCS := /usr/share/virtualbox +VBOX_WITH_REGISTRATION_REQUEST = +VBOX_WITH_UPDATE_REQUEST = +VBOX_WITH_VNC := 1 +VBOX_BLD_PYTHON = python2 +VBOX_JAVA_HOME = /usr/lib/jvm/java-6-openjdk +VBOX_GCC_WERR = +VBOX_GCC_WARN = diff --git a/community-testing/virtualbox-modules/PKGBUILD b/community-testing/virtualbox-modules/PKGBUILD new file mode 100644 index 000000000..ced055501 --- /dev/null +++ b/community-testing/virtualbox-modules/PKGBUILD @@ -0,0 +1,101 @@ +# $Id: PKGBUILD 57348 2011-10-26 10:15:54Z ibiru $ +#Maintainer: Ionut Biru <ibiru@archlinux.org> + +pkgbase=virtualbox-modules +pkgname=('virtualbox-modules' 'virtualbox-archlinux-modules') +pkgver=4.1.4 +pkgrel=3 +arch=('i686' 'x86_64') +url='http://virtualbox.org' +license=('GPL') +makedepends=('libstdc++5' 'bin86' 'dev86' 'iasl' 'libxslt' 'libxml2' 'libpng' 'libidl2' 'xalan-c' 'sdl' 'linux-headers') +[[ $CARCH == "x86_64" ]] && makedepends=("${makedepends[@]}" 'gcc-multilib' 'lib32-glibc') +source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}.tar.bz2 + LocalConfig.kmk 60-vboxguest.rules) +md5sums=('dc6e6801b3823332b6ca2e9915221aae' + '4c88bd122677a35f68abd76eb01b378b' + 'ed1341881437455d9735875ddf455fbe') + +_extramodules=extramodules-3.1-ARCH +_kernver="$(cat /lib/modules/${_extramodules}/version)" + +export KERN_DIR=/lib/modules/${_kernver}/build +export KERN_INCL=/usr/src/linux-${_kernver}/include/ + +build() { + cd "$srcdir/VirtualBox-${pkgver}_OSE" + + cp "$srcdir/LocalConfig.kmk" . + + ./configure \ + --with-linux=/usr/src/linux-${_kernver} \ + --disable-java \ + --disable-docs \ + --disable-xpcom \ + --disable-python \ + --disable-sdl-ttf \ + --disable-alsa \ + --disable-pulse \ + --disable-dbus \ + --disable-opengl \ + --build-headless \ + --nofatal + source ./env.sh + kmk all + + make -C "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" + make -C "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" +} + +package_virtualbox-archlinux-modules(){ + pkgdesc="Additions only for Arch Linux guests (kernel modules)" + license=('GPL') + install=virtualbox-archlinux-modules.install + depends=('linux>=3.1' 'linux<3.2') + replaces=('virtualbox-guest-modules') + conflicts=('virtualbox-guest-modules') + + source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" + + cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src" + + for module in vboxguest.ko vboxsf.ko vboxvideo.ko; do + install -D -m644 ${module} \ + "$pkgdir/lib/modules/${_extramodules}/${module}" + done + + install -D -m 0644 "$srcdir/60-vboxguest.rules" \ + "$pkgdir/lib/udev/rules.d/60-vboxguest.rules" + + find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \; + + sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "$startdir/virtualbox-archlinux-modules.install" +} + +package_virtualbox-modules(){ + pkgdesc="Kernel modules for VirtualBox" + license=('GPL') + install=virtualbox-modules.install + depends=('linux>=3.1' 'linux<3.2') + + source "$srcdir/VirtualBox-${pkgver}_OSE/env.sh" + + + cd "$srcdir/VirtualBox-${pkgver}_OSE/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src" + + install -D -m644 vboxdrv.ko \ + "$pkgdir/lib/modules/${_extramodules}/vboxdrv.ko" + + install -D -m644 vboxnetadp.ko \ + "$pkgdir/lib/modules/${_extramodules}/vboxnetadp.ko" + + install -D -m644 vboxnetflt.ko \ + "$pkgdir/lib/modules/${_extramodules}/vboxnetflt.ko" + + install -D -m644 vboxpci.ko \ + "$pkgdir/lib/modules/${_extramodules}/vboxpci.ko" + + find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \; + + sed -i -e "s/EXTRAMODULES='.*'/EXTRAMODULES='${_extramodules}'/" "$startdir/virtualbox-modules.install" +} diff --git a/community-testing/virtualbox-modules/virtualbox-archlinux-modules.install b/community-testing/virtualbox-modules/virtualbox-archlinux-modules.install new file mode 100644 index 000000000..39a0e4063 --- /dev/null +++ b/community-testing/virtualbox-modules/virtualbox-archlinux-modules.install @@ -0,0 +1,17 @@ +post_install() { +cat << EOF +===> You may want to load vboxguest, vboxsf and vboxvideo +EOF + EXTRAMODULES='extramodules-3.1-ARCH' + depmod $(cat /lib/modules/$EXTRAMODULES/version) +} + +post_upgrade() { + EXTRAMODULES='extramodules-3.1-ARCH' + depmod $(cat /lib/modules/$EXTRAMODULES/version) +} + +post_remove() { + EXTRAMODULES='extramodules-3.1-ARCH' + depmod $(cat /lib/modules/$EXTRAMODULES/version) +} diff --git a/community-testing/virtualbox-modules/virtualbox-modules.install b/community-testing/virtualbox-modules/virtualbox-modules.install new file mode 100644 index 000000000..188c1874c --- /dev/null +++ b/community-testing/virtualbox-modules/virtualbox-modules.install @@ -0,0 +1,19 @@ +post_install() { +/bin/cat << EOF +===> You must load vboxdrv module before starting VirtualBox: +===> # modprobe vboxdrv +EOF + EXTRAMODULES='extramodules-3.1-ARCH' + depmod $(cat /lib/modules/$EXTRAMODULES/version) +} + +post_upgrade() { + EXTRAMODULES='extramodules-3.1-ARCH' + depmod $(cat /lib/modules/$EXTRAMODULES/version) + rmmod vboxdrv || echo 'In order to use the new version, reload all virtualbox modules manually.' +} + +post_remove() { + EXTRAMODULES='extramodules-3.1-ARCH' + depmod $(cat /lib/modules/$EXTRAMODULES/version) +} |