diff options
author | Andrey Rodionov | 2018-01-17 20:25:32 +0300 |
---|---|---|
committer | Andrey Rodionov | 2018-01-17 20:27:24 +0300 |
commit | 6d4b2cd10f4cfeca5b9dc54de8e83dae91819033 (patch) | |
tree | 61cdc989e488c28deffc9f95225ccf5fe7fc8d00 | |
download | aur-6d4b2cd10f4cfeca5b9dc54de8e83dae91819033.tar.gz |
Initial import
-rw-r--r-- | .SRCINFO | 195 | ||||
-rw-r--r-- | 002-dri-driver-path.patch | 28 | ||||
-rw-r--r-- | 003-ogl-include-path.patch | 43 | ||||
-rw-r--r-- | 005-gsoap-build.patch | 11 | ||||
-rw-r--r-- | 006-rdesktop-vrdp-keymap-path.patch | 12 | ||||
-rw-r--r-- | 007-python2-path.patch | 9 | ||||
-rw-r--r-- | 008-no-vboxvideo.patch | 12 | ||||
-rw-r--r-- | 60-vboxdrv.rules | 8 | ||||
-rw-r--r-- | 60-vboxguest.rules | 2 | ||||
-rw-r--r-- | LocalConfig.kmk | 32 | ||||
-rw-r--r-- | PKGBUILD | 388 | ||||
-rwxr-xr-x | build.sh | 3 | ||||
-rw-r--r-- | linux-4.14-host.patch | 13 | ||||
-rwxr-xr-x | vboxreload | 37 | ||||
-rw-r--r-- | vboxservice-nox.service | 11 | ||||
-rw-r--r-- | vboxservice.service | 12 | ||||
-rw-r--r-- | vboxweb.service | 11 | ||||
-rw-r--r-- | virtualbox-ext-vnc.install | 27 | ||||
-rw-r--r-- | virtualbox-guest-dkms.conf | 31 | ||||
-rw-r--r-- | virtualbox-guest-dkms.install | 12 | ||||
-rw-r--r-- | virtualbox-guest-utils.sysusers | 1 | ||||
-rw-r--r-- | virtualbox-host-dkms.conf | 35 | ||||
-rw-r--r-- | virtualbox-host-dkms.install | 12 | ||||
-rw-r--r-- | virtualbox.install | 12 | ||||
-rw-r--r-- | virtualbox.sysusers | 1 |
25 files changed, 958 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..487594dcc50c --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,195 @@ +# Generated by mksrcinfo v8 +# Wed Jan 17 17:26:28 UTC 2018 +pkgbase = virtualbox51 + pkgver = 5.1.32 + pkgrel = 1 + url = http://virtualbox.org + arch = i686 + arch = x86_64 + license = GPL + license = custom + makedepends = alsa-lib + makedepends = bin86 + makedepends = cdrkit + makedepends = curl + makedepends = dev86 + makedepends = device-mapper + makedepends = glu + makedepends = gsoap + makedepends = iasl + makedepends = jdk7-openjdk + makedepends = libidl2 + makedepends = libpulse + makedepends = libstdc++5 + makedepends = libvncserver + makedepends = libvpx + makedepends = libxcomposite + makedepends = libxcursor + makedepends = libxinerama + makedepends = libxml2 + makedepends = libxmu + makedepends = libxrandr + makedepends = libxslt + makedepends = libxtst + makedepends = linux-headers + makedepends = mesa + makedepends = python2 + makedepends = qt5-base + makedepends = qt5-x11extras + makedepends = qt5-tools + makedepends = sdl + makedepends = sdl_ttf + makedepends = vde2 + makedepends = xalan-c + makedepends = xf86driproto + makedepends = xorg-server-devel + source = http://download.virtualbox.org/virtualbox/5.1.32/VirtualBox-5.1.32.tar.bz2 + source = virtualbox-host-dkms.conf + source = virtualbox-guest-dkms.conf + source = virtualbox.sysusers + source = virtualbox-guest-utils.sysusers + source = 60-vboxdrv.rules + source = 60-vboxguest.rules + source = LocalConfig.kmk + source = vboxservice.service + source = vboxservice-nox.service + source = vboxweb.service + source = vboxreload + source = 002-dri-driver-path.patch + source = 003-ogl-include-path.patch + source = 005-gsoap-build.patch + source = 006-rdesktop-vrdp-keymap-path.patch + source = 007-python2-path.patch + source = 008-no-vboxvideo.patch + source = linux-4.14-host.patch + sha256sums = 80383316dd9900c5879a31331c0f853757c53b28ab8d5249e9e4066065a3f229 + sha256sums = deb03efa7ad0376aa55a087f2e882afe00935f10b0e7aa853ba9147090d341ec + sha256sums = 113f9b92141b85df01f1e74d22f01d1f1aa81650eb79b89ceefc3cae20afe2e2 + sha256sums = 2101ebb58233bbfadf3aa74381f22f7e7e508559d2b46387114bc2d8e308554c + sha256sums = da4c49f6ca94e047e196cdbcba2c321199f4760056ea66e0fbc659353e128c9e + sha256sums = 9c5238183019f9ebc7d92a8582cad232f471eab9d3278786225abc1a1c7bf66e + sha256sums = 033c597e0f5285d2ddb0490868e5b6f945f45c7b1b1152a02a9e6fea438b2c95 + sha256sums = 0105ce26b79dbe533085423decf042ac0f5e6aa28edb5e6a9bc713cca2ab04c5 + sha256sums = 94a808f46909a51b2d0cf2c6e0a6c9dea792034943e6413bf9649a036c921b21 + sha256sums = 01dbb921bd57a852919cc78be5b73580a564f28ebab2fe8d6c9b8301265cbfce + sha256sums = e6e875ef186578b53106d7f6af48e426cdaf1b4e86834f01696b8ef1c685787f + sha256sums = 2a9d7748dc58f9d091f791da06b733a696943114f7c0d580fa00a0752eb1d2ac + sha256sums = ee54fe188e27b6e80e2044ea9ba1874db2ca2c026ad04f393be1be69c18d440d + sha256sums = 188014070bce4f6fb9b2535bcd64d066119e182e848c521407ea891ab41a995b + sha256sums = 7d2da8fe10a90f76bbfc80ad1f55df4414f118cd10e10abfb76070326abebd46 + sha256sums = 5d5af2de5b1f1c61ec793503350f2440661cf8fd640f11b8a86f10bce499c0dc + sha256sums = 6bdb017459532537199c399eefd3d84d8dc7f1786e79997caebd3b6eb5c75d9f + sha256sums = 8b7f241107863f82a5b0ae336aead0b3366a40103ff72dbebf33f54b512a0cbc + sha256sums = 80c4173c0bd6fffae7225267ceebe09d26f504dd9544939c3b723b9e6aca345b + makedepends_x86_64 = gcc-multilib + makedepends_x86_64 = lib32-glibc + +pkgname = virtualbox51 + pkgdesc = Powerful x86 virtualization for enterprise as well as home use + install = virtualbox.install + depends = glibc + depends = openssl + depends = curl + depends = gcc-libs + depends = libpng + depends = python2 + depends = sdl + depends = libvpx + depends = libxml2 + depends = procps-ng + depends = shared-mime-info + depends = zlib + depends = libxcursor + depends = libxinerama + depends = libx11 + depends = libxext + depends = libxmu + depends = libxt + depends = qt5-base + depends = qt5-x11extras + depends = VIRTUALBOX-HOST-MODULES + optdepends = vde2: Virtual Distributed Ethernet support + optdepends = virtualbox-guest-iso: Guest Additions CD image + optdepends = virtualbox-ext-vnc: VNC server support + optdepends = virtualbox-sdk: Developer kit + conflicts = virtualbox-ose + conflicts = virtualbox + replaces = virtualbox-ose + replaces = virtualbox + backup = etc/vbox/vbox.cfg + +pkgname = virtualbox51-host-dkms + pkgdesc = VirtualBox Host kernel modules sources + install = virtualbox-host-dkms.install + depends = dkms + depends = gcc + depends = make + optdepends = linux-headers: build modules against Arch kernel + optdepends = linux-lts-headers: build modules against LTS kernel + optdepends = linux-zen-headers: build modules against ZEN kernel + provides = VIRTUALBOX-HOST-MODULES + conflicts = virtualbox-source + conflicts = virtualbox-host-source + replaces = virtualbox-source + replaces = virtualbox-host-source + replaces = virtualbox-host-modules-lts + replaces = virtualbox-host-dkms + +pkgname = virtualbox51-guest-dkms + pkgdesc = VirtualBox Guest kernel modules sources + install = virtualbox-guest-dkms.install + depends = dkms + depends = gcc + depends = make + optdepends = linux-headers: build modules against Arch kernel + optdepends = linux-lts-headers: build modules against LTS kernel + optdepends = linux-zen-headers: build modules against ZEN kernel + provides = VIRTUALBOX-GUEST-MODULES + conflicts = virtualbox-archlinux-source + conflicts = virtualbox-guest-source + conflicts = virtualbox-guest-dkms + replaces = virtualbox-archlinux-source + replaces = virtualbox-guest-source + replaces = virtualbox-guest-modules-lts + replaces = virtualbox-guest-dkms + +pkgname = virtualbox51-sdk + pkgdesc = VirtualBox Software Developer Kit (SDK) + depends = python2 + +pkgname = virtualbox51-guest-utils + pkgdesc = VirtualBox Guest userspace utilities + depends = glibc + depends = pam + depends = libx11 + depends = libxcomposite + depends = libxdamage + depends = libxext + depends = libxfixes + depends = libxmu + depends = libxt + depends = xorg-xrandr + depends = VIRTUALBOX-GUEST-MODULES + conflicts = virtualbox-archlinux-additions + conflicts = virtualbox-guest-additions + conflicts = virtualbox51-guest-utils-nox + conflicts = virtualbox-guest-utils + replaces = virtualbox-archlinux-additions + replaces = virtualbox-guest-additions + replaces = virtualbox-guest-utils + +pkgname = virtualbox51-guest-utils-nox + pkgdesc = VirtualBox Guest userspace utilities without X support + depends = glibc + depends = pam + depends = VIRTUALBOX-GUEST-MODULES + conflicts = virtualbox-guest-utils + conflicts = virtualbox51-guest-utils + +pkgname = virtualbox51-ext-vnc + pkgdesc = VirtualBox VNC extension pack + install = virtualbox-ext-vnc.install + depends = virtualbox + depends = libvncserver + optdepends = tigervnc: vnc client + diff --git a/002-dri-driver-path.patch b/002-dri-driver-path.patch new file mode 100644 index 000000000000..777e8e73b8b2 --- /dev/null +++ b/002-dri-driver-path.patch @@ -0,0 +1,28 @@ +# 2013 © Sébastien Luttringer +--- a/src/VBox/Additions/common/crOpenGL/fakedri_drv.c 2013-09-04 21:03:47.040743507 +0200 ++++ b/src/VBox/Additions/common/crOpenGL/fakedri_drv.c 2013-10-20 23:23:49.705371815 +0200 +@@ -58,23 +58,8 @@ + //#define DEBUG_DRI_CALLS + + //@todo this could be different... +-#ifdef RT_ARCH_AMD64 +-# ifdef RT_OS_FREEBSD +-# define DRI_DEFAULT_DRIVER_DIR "/usr/local/lib/dri" +-# define DRI_XORG_DRV_DIR "/usr/local/lib/xorg/modules/drivers/" +-# else +-# define DRI_DEFAULT_DRIVER_DIR "/usr/lib64/dri:/usr/lib/dri:/usr/lib/x86_64-linux-gnu/dri:/usr/lib/xorg/modules/dri" ++# define DRI_DEFAULT_DRIVER_DIR "/usr/lib/xorg/modules/dri" + # define DRI_XORG_DRV_DIR "/usr/lib/xorg/modules/drivers/" +-# endif +-#else +-# ifdef RT_OS_FREEBSD +-# define DRI_DEFAULT_DRIVER_DIR "/usr/local/lib/dri" +-# define DRI_XORG_DRV_DIR "/usr/local/lib/xorg/modules/drivers/" +-# else +-# define DRI_DEFAULT_DRIVER_DIR "/usr/lib/dri:/usr/lib/i386-linux-gnu/dri:/usr/lib/xorg/modules/dri" +-# define DRI_XORG_DRV_DIR "/usr/lib/xorg/modules/drivers/" +-# endif +-#endif + + #ifdef DEBUG_DRI_CALLS + #define SWDRI_SHOWNAME(pext, func) \ diff --git a/003-ogl-include-path.patch b/003-ogl-include-path.patch new file mode 100644 index 000000000000..0d5cb6d2d9df --- /dev/null +++ b/003-ogl-include-path.patch @@ -0,0 +1,43 @@ +Index: virtualbox/src/VBox/Additions/common/crOpenGL/Makefile.kmk +=================================================================== +--- virtualbox.orig/src/VBox/Additions/common/crOpenGL/Makefile.kmk 2015-04-02 15:44:24.955670965 +0200 ++++ virtualbox/src/VBox/Additions/common/crOpenGL/Makefile.kmk 2015-04-02 15:44:24.955670965 +0200 +@@ -67,18 +67,12 @@ + VBoxOGL_INCS = . + if1of ($(KBUILD_TARGET), linux solaris freebsd) + VBoxOGL_INCS += \ +- $(VBOX_PATH_X11_ROOT)/libXdamage-1.1 \ +- $(VBOX_PATH_X11_ROOT)/libXcomposite-0.4.0 \ +- $(VBOX_PATH_X11_ROOT)/libXext-1.3.1 \ +- $(VBOX_PATH_X11_ROOT)/libXfixes-4.0.3 \ +- $(VBOX_PATH_X11_ROOT)/damageproto-1.1.0 \ +- $(VBOX_PATH_X11_ROOT)/compositeproto-0.4 \ +- $(VBOX_PATH_X11_ROOT)/fixesproto-4.0 \ +- $(VBOX_PATH_X11_ROOT)/libx11-1.1.5-other \ +- $(VBOX_PATH_X11_ROOT)/xextproto-7.1.1 \ +- $(VBOX_PATH_X11_ROOT)/xproto-7.0.18 \ ++ /usr/include/x11 \ ++ /usr/include/xorg \ ++ /usr/include/pixman-1 \ + $(VBOX_MESA_INCS) \ +- $(PATH_ROOT)/src/VBox/Additions/x11/x11include/libdrm-2.4.13 ++ /usr/include/drm \ ++ /usr/include/libdrm + VBoxOGL_DEFS += VBOX_NO_NATIVEGL + endif + +@@ -213,10 +207,10 @@ + + if1of ($(KBUILD_TARGET), linux solaris freebsd) + VBoxOGL_LIBS += \ +- $(PATH_STAGE_LIB)/libXcomposite.so \ +- $(PATH_STAGE_LIB)/libXdamage.so \ +- $(PATH_STAGE_LIB)/libXfixes.so \ +- $(PATH_STAGE_LIB)/libXext.so ++ Xcomposite \ ++ Xdamage \ ++ Xfixes \ ++ Xext + ifdef VBoxOGL_FAKEDRI + ifeq ($(KBUILD_TARGET), freebsd) + VBoxOGL_LIBS += \ diff --git a/005-gsoap-build.patch b/005-gsoap-build.patch new file mode 100644 index 000000000000..bba4f0ec7557 --- /dev/null +++ b/005-gsoap-build.patch @@ -0,0 +1,11 @@ +--- a/src/VBox/Main/webservice/Makefile.kmk 2013-11-21 19:00:46.812761628 +0100 ++++ b/src/VBox/Main/webservice/Makefile.kmk 2016-08-18 15:16:05.803599026 +0100 +@@ -724,7 +724,7 @@ $(VBOXWEB_OUT_DIR)/gsoap_generate_all_ts \ + $(RECOMPILE_ON_MAKEFILE_CURRENT) | $$(dir $$@) + $(call MSG_GENERATE,,lots of files,$(GSOAPH_RELEVANT)) + $(RM) -f $@ +- $(REDIRECT) -C $(VBOXWEB_OUT_DIR) -- $(VBOX_SOAPCPP2) $(VBOXWEB_SOAPCPP2_SKIP_FILES) -L -2 -w -I$(VBOX_PATH_GSOAP_IMPORT) $(GSOAPH_RELEVANT) ++ $(REDIRECT) -C $(VBOXWEB_OUT_DIR) -- $(VBOX_SOAPCPP2) $(VBOXWEB_SOAPCPP2_SKIP_FILES) -z1 -L -2 -w -I$(VBOX_PATH_GSOAP_IMPORT) $(GSOAPH_RELEVANT) + ifeq ($(KBUILD_TARGET),win) # MSC -Wall workaround. + $(CP) -f "$(VBOXWEB_SOAP_CLIENT_H)" "$(VBOXWEB_SOAP_CLIENT_H).tmp" + $(SED) -f $(VBOX_PATH_WEBSERVICE)/stdsoap2.sed --output "$(VBOXWEB_SOAP_CLIENT_H)" "$(VBOXWEB_SOAP_CLIENT_H).tmp" diff --git a/006-rdesktop-vrdp-keymap-path.patch b/006-rdesktop-vrdp-keymap-path.patch new file mode 100644 index 000000000000..46c72c1ccf87 --- /dev/null +++ b/006-rdesktop-vrdp-keymap-path.patch @@ -0,0 +1,12 @@ +# 2015 © Sébastien Luttringer +--- a/src/VBox/RDP/client-1.8.3/Makefile.kmk 2013-02-19 23:12:20.207464901 +0100 ++++ b/src/VBox/RDP/client-1.8.3/Makefile.kmk 2014-01-04 04:17:26.700618600 +0100 +@@ -41,7 +41,7 @@ + EGD_SOCKET=\"/var/run/egd-pool\" WITH_RDPSND=1 HAVE_DIRENT_H=1 \ + HAVE_ICONV=1 HAVE_SYS_STATVFS_H=1 \ + HAVE_SYS_PARAM_H=1 HAVE_SYS_MOUNT_H=1 HAVE_STRUCT_STATVFS_F_NAMEMAX=1 \ +- KEYMAP_PATH=$(if $(findstring RTPATH_APP_PRIVATE,$(CDEFS)),RTPATH_APP_PRIVATE,\"/opt/VirtualBox\")\"/rdesktop-vrdp-keymaps\" \ ++ KEYMAP_PATH=$(if $(findstring RTPATH_APP_PRIVATE,$(CDEFS)),RTPATH_APP_PRIVATE,\"/usr/share/virtualbox\")\"/rdesktop-vrdp-keymaps\" \ + RDESKTOP=1 + ifdef WITH_BIRD_VD_HACKS + rdesktop-vrdp_DEFS += WITH_BIRD_VD_HACKS diff --git a/007-python2-path.patch b/007-python2-path.patch new file mode 100644 index 000000000000..d11e75dd9f40 --- /dev/null +++ b/007-python2-path.patch @@ -0,0 +1,9 @@ +# 2013 © Sébastien Luttringer +--- a/src/VBox/Frontends/VBoxShell/vboxshell.py 2014-01-03 01:38:41.831615590 +0100 ++++ b/src/VBox/Frontends/VBoxShell/vboxshell.py 2014-01-04 04:23:33.884544420 +0100 +@@ -1,4 +1,4 @@ +-#!/usr/bin/env python ++#!/usr/bin/python2 + # -*- coding: utf-8 -*- + # $Id: vboxshell.py 49841 2013-12-09 13:32:33Z vboxsync $ + """ diff --git a/008-no-vboxvideo.patch b/008-no-vboxvideo.patch new file mode 100644 index 000000000000..60b721a8c281 --- /dev/null +++ b/008-no-vboxvideo.patch @@ -0,0 +1,12 @@ +Fix FTBFS by not compile X.org-1.19 drv, we don't use it, just need in el <= 7 +--- ./src/VBox/Additions/x11/vboxvideo/Makefile.kmk.orig 2016-10-11 02:49:23.184986182 +0100 ++++ ./src/VBox/Additions/x11/vboxvideo/Makefile.kmk 2016-10-11 02:49:39.879176964 +0100 +@@ -376,7 +376,7 @@ vboxvideo_drv_118_SOURCES := $(vboxvideo + + ifdef VBOX_USE_SYSTEM_XORG_HEADERS + # Build using local X.Org headers. We assume X.Org Server 1.7 or later. +- DLLS := $(filter-out vboxvideo_drv_%,$(DLLS)) vboxvideo_drv_system ++ DLLS := $(filter-out vboxvideo_drv_%,$(DLLS)) + SYSMODS := $(filter-out vboxvideo_drv%,$(SYSMODS)) + vboxvideo_drv_system_TEMPLATE = VBOXGUESTR3XORGMOD + vboxvideo_drv_system_CFLAGS := \ diff --git a/60-vboxdrv.rules b/60-vboxdrv.rules new file mode 100644 index 000000000000..95d515b06bc5 --- /dev/null +++ b/60-vboxdrv.rules @@ -0,0 +1,8 @@ +KERNEL=="vboxdrv", NAME="vboxdrv", OWNER="root", GROUP="root", MODE="0600" +KERNEL=="vboxdrvu", NAME="vboxdrvu", OWNER="root", GROUP="root", MODE="0666" +KERNEL=="vboxnetctl", NAME="vboxnetctl", OWNER="root", GROUP="root", MODE="0600" + +SUBSYSTEM=="usb_device", ACTION=="add", RUN+="/usr/share/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass} vboxusers" +SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", RUN+="/usr/share/virtualbox/VBoxCreateUSBNode.sh $major $minor $attr{bDeviceClass} vboxusers" +SUBSYSTEM=="usb_device", ACTION=="remove", RUN+="/usr/share/virtualbox/VBoxCreateUSBNode.sh --remove $major $minor" +SUBSYSTEM=="usb", ACTION=="remove", ENV{DEVTYPE}=="usb_device", RUN+="/usr/share/virtualbox/VBoxCreateUSBNode.sh --remove $major $minor" diff --git a/60-vboxguest.rules b/60-vboxguest.rules new file mode 100644 index 000000000000..6285f724994b --- /dev/null +++ b/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/LocalConfig.kmk b/LocalConfig.kmk new file mode 100644 index 000000000000..deeed2f0b237 --- /dev/null +++ b/LocalConfig.kmk @@ -0,0 +1,32 @@ +# do not build test cases +VBOX_WITH_TESTCASES := +VBOX_WITH_TESTSUITE := +VBOX_WITH_VALIDATIONKIT := + +# no legacy X.org - use KMS +VBOX_USE_SYSTEM_XORG_HEADERS = 1 +VBOX_NO_LEGACY_XORG_X11 = 1 + +# archlinux path +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/doc/virtualbox +VBOX_PATH_PACKAGE_DOCS := $(VBOX_PATH_APP_DOCS) +VBOX_BLD_PYTHON = python2 +VBOX_JAVA_HOME = /usr/lib/jvm/java-7-openjdk + +# do not fail on warning +VBOX_GCC_WERR = +VBOX_GCC_WARN = + +# fix gsoap missing zlib include and produce errors with --as-needed +VBOX_GSOAP_CXX_LIBS := gsoapssl++ z + +# use system xorg +VBOX_USE_SYSTEM_XORG_HEADERS = 1 + +# no update request. update are handled via pacman +VBOX_WITH_UPDATE_REQUEST := 0 diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..97a9ecee2634 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,388 @@ +# $Id$ +# Maintainer: Sébastien "Seblu" Luttringer +# Contributor: Ionut Biru <ibiru@archlinux.org> + +pkgbase=virtualbox51 +pkgname=('virtualbox51' + 'virtualbox51-host-dkms' + 'virtualbox51-guest-dkms' + 'virtualbox51-sdk' + 'virtualbox51-guest-utils' + 'virtualbox51-guest-utils-nox' + 'virtualbox51-ext-vnc') +pkgver=5.1.32 +pkgrel=1 +arch=('i686' 'x86_64') +url='http://virtualbox.org' +license=('GPL' 'custom') +makedepends=('alsa-lib' + 'bin86' + 'cdrkit' + 'curl' + 'dev86' + 'device-mapper' + 'glu' + 'gsoap' + 'iasl' + 'jdk7-openjdk' + 'libidl2' + 'libpulse' + 'libstdc++5' + 'libvncserver' + 'libvpx' + 'libxcomposite' + 'libxcursor' + 'libxinerama' + 'libxml2' + 'libxmu' + 'libxrandr' + 'libxslt' + 'libxtst' + 'linux-headers' + 'mesa' + 'python2' + 'qt5-base' + 'qt5-x11extras' + 'qt5-tools' + 'sdl' + 'sdl_ttf' + 'vde2' + 'xalan-c' + 'xf86driproto' + 'xorg-server-devel') +makedepends_x86_64=('gcc-multilib' 'lib32-glibc') +source=("http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}.tar.bz2" + 'virtualbox-host-dkms.conf' + 'virtualbox-guest-dkms.conf' + 'virtualbox.sysusers' + 'virtualbox-guest-utils.sysusers' + '60-vboxdrv.rules' + '60-vboxguest.rules' + 'LocalConfig.kmk' + 'vboxservice.service' + 'vboxservice-nox.service' + 'vboxweb.service' + 'vboxreload' + '002-dri-driver-path.patch' + '003-ogl-include-path.patch' + '005-gsoap-build.patch' + '006-rdesktop-vrdp-keymap-path.patch' + '007-python2-path.patch' + '008-no-vboxvideo.patch' + 'linux-4.14-host.patch' + ) +sha256sums=('80383316dd9900c5879a31331c0f853757c53b28ab8d5249e9e4066065a3f229' + 'deb03efa7ad0376aa55a087f2e882afe00935f10b0e7aa853ba9147090d341ec' + '113f9b92141b85df01f1e74d22f01d1f1aa81650eb79b89ceefc3cae20afe2e2' + '2101ebb58233bbfadf3aa74381f22f7e7e508559d2b46387114bc2d8e308554c' + 'da4c49f6ca94e047e196cdbcba2c321199f4760056ea66e0fbc659353e128c9e' + '9c5238183019f9ebc7d92a8582cad232f471eab9d3278786225abc1a1c7bf66e' + '033c597e0f5285d2ddb0490868e5b6f945f45c7b1b1152a02a9e6fea438b2c95' + '0105ce26b79dbe533085423decf042ac0f5e6aa28edb5e6a9bc713cca2ab04c5' + '94a808f46909a51b2d0cf2c6e0a6c9dea792034943e6413bf9649a036c921b21' + '01dbb921bd57a852919cc78be5b73580a564f28ebab2fe8d6c9b8301265cbfce' + 'e6e875ef186578b53106d7f6af48e426cdaf1b4e86834f01696b8ef1c685787f' + '2a9d7748dc58f9d091f791da06b733a696943114f7c0d580fa00a0752eb1d2ac' + 'ee54fe188e27b6e80e2044ea9ba1874db2ca2c026ad04f393be1be69c18d440d' + '188014070bce4f6fb9b2535bcd64d066119e182e848c521407ea891ab41a995b' + '7d2da8fe10a90f76bbfc80ad1f55df4414f118cd10e10abfb76070326abebd46' + '5d5af2de5b1f1c61ec793503350f2440661cf8fd640f11b8a86f10bce499c0dc' + '6bdb017459532537199c399eefd3d84d8dc7f1786e79997caebd3b6eb5c75d9f' + '8b7f241107863f82a5b0ae336aead0b3366a40103ff72dbebf33f54b512a0cbc' + '80c4173c0bd6fffae7225267ceebe09d26f504dd9544939c3b723b9e6aca345b' + ) + +prepare() { + cd "VirtualBox-$pkgver" + + # apply patch from the source array (should be a pacman feature) + local filename + for filename in "${source[@]}"; do + if [[ "$filename" =~ \.patch$ ]]; then + msg2 "Applying patch ${filename##*/}" + patch -p1 -N -i "$srcdir/${filename##*/}" + fi + done + + msg2 'Applying local config' + cp "$srcdir/LocalConfig.kmk" . + + msg2 'Use our CFLAGS' + echo "VBOX_GCC_OPT=$CXXFLAGS" >> LocalConfig.kmk + + msg2 'Remove gcc version censorship' + sed -i 's/^check_gcc$/#check_gcc/' configure +} + +build() { + cd "VirtualBox-$pkgver" + + msg2 'Build virtualbox' + ./configure \ + --disable-docs \ + --enable-webservice \ + --enable-vde \ + --enable-vnc \ + --disable-kmods \ + --with-makeself=/usr/bin/echo + # fake makeself binary to compile without nofatal + # makeself is used by linux installer. we don't need it. + source ./env.sh + kmk + + msg2 'Build rdesktop-vrdp' + kmk -C src/VBox/RDP/client-1.8.3 + + msg2 'Build VNC extension pack' + kmk -C src/VBox/ExtPacks/VNC packing +} + +package_virtualbox51() { + pkgdesc='Powerful x86 virtualization for enterprise as well as home use' + depends=('glibc' 'openssl' 'curl' 'gcc-libs' 'libpng' 'python2' 'sdl' + 'libvpx' 'libxml2' 'procps-ng' 'shared-mime-info' 'zlib' + 'libxcursor' 'libxinerama' 'libx11' 'libxext' 'libxmu' 'libxt' + 'qt5-base' 'qt5-x11extras' 'VIRTUALBOX-HOST-MODULES') + optdepends=('vde2: Virtual Distributed Ethernet support' + 'virtualbox-guest-iso: Guest Additions CD image' + 'virtualbox-ext-vnc: VNC server support' + 'virtualbox-sdk: Developer kit') + backup=('etc/vbox/vbox.cfg') + replaces=('virtualbox-ose' 'virtualbox') + conflicts=('virtualbox-ose' 'virtualbox') + install=virtualbox.install + + source "VirtualBox-$pkgver/env.sh" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin" + + # binaries + install -dm755 "$pkgdir/usr/bin" + install -m755 VBox.sh "$pkgdir/usr/bin/VBox" + for i in VBoxHeadless VBoxManage VBoxSDL VirtualBox vboxwebsrv VBoxBalloonCtrl; do + ln -sf VBox "$pkgdir/usr/bin/$i" + ln -sf VBox "$pkgdir/usr/bin/${i,,}" + done + install -m755 VBoxTunctl "$pkgdir/usr/bin" + install -m755 rdesktop-vrdp "$pkgdir/usr/bin" + + # libraries + install -dm755 "$pkgdir/usr/lib/virtualbox" + install -m755 *.so "$pkgdir/usr/lib/virtualbox" + install -m644 *.rc *.r0 VBoxEFI*.fd "$pkgdir/usr/lib/virtualbox" + ## setuid root binaries + install -m4755 VBoxSDL VirtualBox VBoxHeadless VBoxNetDHCP VBoxNetAdpCtl VBoxNetNAT -t "$pkgdir/usr/lib/virtualbox" + ## other binaries + install -m755 VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL VBoxBalloonCtrl vboxwebsrv webtest -t "$pkgdir/usr/lib/virtualbox" + + # components + install -dm755 "$pkgdir/usr/lib/virtualbox/components" + install -m755 components/* -t "$pkgdir/usr/lib/virtualbox/components" + + # extensions packs + ## as virtualbox install itself stuff in this directory, move it to /var and + ## trick it with a symlink + ## FIXME: trick is disabled for now + #install -dm755 "$pkgdir/var/lib/virtualbox/extensions" + #install -dm755 "$pkgdir/usr/share/virtualbox/extensions" + #ln -s ../../../var/lib/virtualbox/extensions "$pkgdir/usr/lib/virtualbox/ExtensionPacks" + install -dm755 "$pkgdir/usr/lib/virtualbox/ExtensionPacks" + + # languages + install -dm755 "$pkgdir/usr/share/virtualbox/nls" + install -m755 nls/*.qm -t "$pkgdir/usr/share/virtualbox/nls" + + # rdesktop keymaps + install -dm755 "$pkgdir/usr/share/virtualbox/rdesktop-vrdp-keymaps" + install -m644 rdesktop-vrdp-keymaps/* "$pkgdir/usr/share/virtualbox/rdesktop-vrdp-keymaps" + + # useless scripts + install -m755 VBoxCreateUSBNode.sh VBoxSysInfo.sh -t "$pkgdir/usr/share/virtualbox" + + # icons + install -Dm644 VBox.png "$pkgdir/usr/share/pixmaps/VBox.png" + + pushd icons >/dev/null + for i in *; do + install -d "$pkgdir/usr/share/icons/hicolor/$i/mimetypes" + cp $i/* "$pkgdir/usr/share/icons/hicolor/$i/mimetypes" + done + popd >/dev/null + + #desktop + install -Dm644 virtualbox.desktop "$pkgdir/usr/share/applications/virtualbox.desktop" + install -Dm644 virtualbox.xml "$pkgdir/usr/share/mime/packages/virtualbox.xml" + + #install configuration + install -dm755 "$pkgdir/etc/vbox" + echo 'INSTALL_DIR=/usr/lib/virtualbox' > "$pkgdir/etc/vbox/vbox.cfg" + + # back to srcdir + cd "$srcdir" + + #licence + install -Dm644 VirtualBox-$pkgver/COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + + # install systemd stuff + install -Dm644 60-vboxdrv.rules "$pkgdir/usr/lib/udev/rules.d/60-vboxdrv.rules" + install -Dm644 vboxweb.service "$pkgdir/usr/lib/systemd/system/vboxweb.service" + install -Dm644 virtualbox.sysusers "$pkgdir/usr/lib/sysusers.d/virtualbox.conf" + + # install module reloading shortcut (with a symlink with default helper) + install -Dm755 vboxreload "$pkgdir/usr/bin" + ln -s vboxreload "$pkgdir/usr/bin/rcvboxdrv" +} + +package_virtualbox51-sdk() { + pkgdesc='VirtualBox Software Developer Kit (SDK)' + depends=('python2') + + install -dm755 "$pkgdir/usr/lib/virtualbox" + + source "VirtualBox-$pkgver/env.sh" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin" + + install -Dm755 vboxshell.py "$pkgdir/usr/lib/virtualbox/vboxshell.py" + # python sdk + pushd sdk/installer + VBOX_INSTALL_PATH="/usr/lib/virtualbox" python2 vboxapisetup.py install --root "$pkgdir" + popd + rm -rf sdk/installer + cp -r sdk "$pkgdir/usr/lib/virtualbox" + # licence + install -Dm644 "$srcdir/VirtualBox-$pkgver/COPYING" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +package_virtualbox51-host-dkms() { + pkgdesc='VirtualBox Host kernel modules sources' + depends=('dkms' 'gcc' 'make') + replaces=('virtualbox-source' + 'virtualbox-host-source' + 'virtualbox-host-modules-lts' + 'virtualbox-host-dkms') + conflicts=('virtualbox-source' 'virtualbox-host-source') + provides=('VIRTUALBOX-HOST-MODULES') + optdepends=('linux-headers: build modules against Arch kernel' + 'linux-lts-headers: build modules against LTS kernel' + 'linux-zen-headers: build modules against ZEN kernel') + install=virtualbox-host-dkms.install + + install -dm755 "$pkgdir/usr/src" + source "VirtualBox-$pkgver/env.sh" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin" + cp -r src "$pkgdir/usr/src/vboxhost-${pkgver}_OSE" + # licence + install -Dm644 "$srcdir/VirtualBox-$pkgver/COPYING" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + # module loading + local _p="$pkgdir/usr/lib/modules-load.d/$pkgname.conf" + install -Dm644 /dev/null "$_p" + printf "vboxdrv\nvboxpci\nvboxnetadp\nvboxnetflt\n" > "$_p" + # starting vbox 5.1, dkms.conf file was dropped + local _p="$pkgdir/usr/src/vboxhost-${pkgver}_OSE/dkms.conf" + install -Dm644 "$srcdir/$pkgname.conf" "$_p" + sed -i "s,@VERSION@,$pkgver," "$_p" +} + +package_virtualbox51-guest-dkms() { + pkgdesc='VirtualBox Guest kernel modules sources' + depends=('dkms' 'gcc' 'make') + replaces=('virtualbox-archlinux-source' + 'virtualbox-guest-source' + 'virtualbox-guest-modules-lts' + 'virtualbox-guest-dkms') + provides=('VIRTUALBOX-GUEST-MODULES') + conflicts=('virtualbox-archlinux-source' + 'virtualbox-guest-source' + 'virtualbox-guest-dkms') + optdepends=('linux-headers: build modules against Arch kernel' + 'linux-lts-headers: build modules against LTS kernel' + 'linux-zen-headers: build modules against ZEN kernel') + install=virtualbox-guest-dkms.install + + install -dm755 "$pkgdir/usr/src" + source "VirtualBox-$pkgver/env.sh" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" + cp -r src "$pkgdir/usr/src/vboxguest-${pkgver}_OSE" + # licence + install -Dm644 "$srcdir/VirtualBox-$pkgver/COPYING" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + # module loading + local _p="$pkgdir/usr/lib/modules-load.d/$pkgname.conf" + install -Dm644 /dev/null "$_p" + printf "vboxguest\nvboxsf\nvboxvideo\n" > "$_p" + # starting vbox 5.1, dkms.conf file was dropped + local _p="$pkgdir/usr/src/vboxguest-${pkgver}_OSE/dkms.conf" + install -Dm644 "$srcdir/$pkgname.conf" "$_p" + sed -i "s,@VERSION@,$pkgver," "$_p" +} + +package_virtualbox51-guest-utils() { + pkgdesc='VirtualBox Guest userspace utilities' + depends=('glibc' 'pam' 'libx11' 'libxcomposite' + 'libxdamage' 'libxext' 'libxfixes' 'libxmu' 'libxt' 'xorg-xrandr' + 'VIRTUALBOX-GUEST-MODULES') + replaces=('virtualbox-archlinux-additions' + 'virtualbox-guest-additions' + 'virtualbox-guest-utils') + conflicts=('virtualbox-archlinux-additions' + 'virtualbox-guest-additions' + 'virtualbox51-guest-utils-nox' + 'virtualbox-guest-utils') + + source "VirtualBox-$pkgver/env.sh" + pushd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" + install -d "$pkgdir/usr/bin" + install -m755 VBoxClient VBoxControl VBoxService mount.vboxsf "$pkgdir/usr/bin" + install -m755 -D "$srcdir"/VirtualBox-$pkgver/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ + "$pkgdir"/usr/bin/VBoxClient-all + install -m644 -D "$srcdir"/VirtualBox-$pkgver/src/VBox/Additions/x11/Installer/vboxclient.desktop \ + "$pkgdir"/etc/xdg/autostart/vboxclient.desktop + install -d "$pkgdir/usr/lib/xorg/modules/dri" + install -m755 VBoxOGL*.so "$pkgdir/usr/lib" + ln -s /usr/lib/VBoxOGL.so "$pkgdir/usr/lib/xorg/modules/dri/vboxvideo_dri.so" + install -m755 -D pam_vbox.so "$pkgdir/usr/lib/security/pam_vbox.so" + popd + # systemd stuff + install -Dm644 60-vboxguest.rules "$pkgdir/usr/lib/udev/rules.d/60-vboxguest.rules" + install -Dm644 vboxservice.service "$pkgdir/usr/lib/systemd/system/vboxservice.service" + install -Dm644 virtualbox-guest-utils.sysusers "$pkgdir/usr/lib/sysusers.d/virtualbox-guest-utils.conf" + # licence + install -Dm644 VirtualBox-$pkgver/COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +package_virtualbox51-guest-utils-nox() { + pkgdesc='VirtualBox Guest userspace utilities without X support' + depends=('glibc' 'pam' 'VIRTUALBOX-GUEST-MODULES') + conflicts=('virtualbox-guest-utils' 'virtualbox51-guest-utils') + + source "VirtualBox-$pkgver/env.sh" + pushd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" + install -d "$pkgdir/usr/bin" + install -m755 VBoxControl VBoxService mount.vboxsf "$pkgdir/usr/bin" + install -m755 -D pam_vbox.so "$pkgdir/usr/lib/security/pam_vbox.so" + popd + # systemd stuff + install -Dm644 60-vboxguest.rules "$pkgdir/usr/lib/udev/rules.d/60-vboxguest.rules" + install -Dm644 vboxservice-nox.service "$pkgdir/usr/lib/systemd/system/vboxservice.service" + install -Dm644 virtualbox-guest-utils.sysusers "$pkgdir/usr/lib/sysusers.d/virtualbox-guest-utils.conf" + # licence + install -Dm644 "$srcdir/VirtualBox-$pkgver/COPYING" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +package_virtualbox51-ext-vnc() { + pkgdesc='VirtualBox VNC extension pack' + depends=('virtualbox' 'libvncserver') + optdepends=('tigervnc: vnc client') + install=virtualbox-ext-vnc.install + + source "VirtualBox-$pkgver/env.sh" + cd "VirtualBox-$pkgver/out/linux.$BUILD_PLATFORM_ARCH/release/packages" + install -Dm644 VNC-*.vbox-extpack "$pkgdir/usr/share/virtualbox/extensions/VNC-${pkgver}.vbox-extpack" + # licence + install -Dm644 "$srcdir/VirtualBox-$pkgver/COPYING" \ + "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} + +# vim:set ts=4 sw=4 et: diff --git a/build.sh b/build.sh new file mode 100755 index 000000000000..11c0aac7e228 --- /dev/null +++ b/build.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +multilib-build "$@" && extra-i686-build "$@" diff --git a/linux-4.14-host.patch b/linux-4.14-host.patch new file mode 100644 index 000000000000..f0ae0ec78808 --- /dev/null +++ b/linux-4.14-host.patch @@ -0,0 +1,13 @@ +diff --git a/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c b/s/VirtualBox-5.1.30/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c +index 3a3f00a4..75a07f0b 100644 +--- a/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c ++++ b/s/VirtualBox-5.1.30/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c +@@ -357,7 +357,7 @@ static int vboxPciFileWrite(struct file* file, unsigned long long offset, unsign + + fs_save = get_fs(); + set_fs(get_ds()); +- ret = vfs_write(file, data, size, &offset); ++ ret = kernel_write(file, data, size, &offset); + set_fs(fs_save); + if (ret < 0) + printk(KERN_DEBUG "vboxPciFileWrite: error %d\n", ret); diff --git a/vboxreload b/vboxreload new file mode 100755 index 000000000000..04b6e7b9e381 --- /dev/null +++ b/vboxreload @@ -0,0 +1,37 @@ +#!/bin/bash + +# vboxreload: shortcut to reload virtualbox host modules +# +# Copyright © 2016 Sébastien Luttringer +# +# This program is free software; you can redistribute it and/or +# modify it under the terms of the GNU General Public License +# as published by the Free Software Foundation; either version 2 +# of the License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +(( UID > 0 )) && { echo 'You must be root' >&2; exit 1; } + +modules=(vboxnetadp vboxnetflt vboxpci vboxdrv) + +echo -n 'Unloading modules: ' +for _m in "${modules[@]}"; do + lsmod|grep -q "$_m" && rmmod "$_m" && echo -n "$_m " +done +echo + +echo -n 'Loading modules: ' +for _m in "${modules[@]}"; do + modprobe "$_m" && echo -n "$_m " +done +echo + +# vim:set ts=2 sw=2 ai et: diff --git a/vboxservice-nox.service b/vboxservice-nox.service new file mode 100644 index 000000000000..7204fda119b7 --- /dev/null +++ b/vboxservice-nox.service @@ -0,0 +1,11 @@ +[Unit] +Description=VirtualBox Guest Service +ConditionVirtualization=oracle + +[Service] +ExecStartPre=-/usr/bin/modprobe vboxguest +ExecStartPre=-/usr/bin/modprobe vboxsf +ExecStart=/usr/bin/VBoxService -f + +[Install] +WantedBy=multi-user.target diff --git a/vboxservice.service b/vboxservice.service new file mode 100644 index 000000000000..7e0c87f0b5fa --- /dev/null +++ b/vboxservice.service @@ -0,0 +1,12 @@ +[Unit] +Description=VirtualBox Guest Service +ConditionVirtualization=oracle + +[Service] +ExecStartPre=-/usr/bin/modprobe vboxguest +ExecStartPre=-/usr/bin/modprobe vboxvideo +ExecStartPre=-/usr/bin/modprobe vboxsf +ExecStart=/usr/bin/VBoxService -f + +[Install] +WantedBy=multi-user.target diff --git a/vboxweb.service b/vboxweb.service new file mode 100644 index 000000000000..303381597a40 --- /dev/null +++ b/vboxweb.service @@ -0,0 +1,11 @@ +[Unit] +Description=VirtualBox Web Service +After=network.target + +[Service] +Type=forking +PIDFile=/run/vboxweb.pid +ExecStart=/usr/bin/vboxwebsrv --pidfile /run/vboxweb.pid --background + +[Install] +WantedBy=multi-user.target diff --git a/virtualbox-ext-vnc.install b/virtualbox-ext-vnc.install new file mode 100644 index 000000000000..d0f188a769aa --- /dev/null +++ b/virtualbox-ext-vnc.install @@ -0,0 +1,27 @@ +#!/bin/bash + +# arg 1: the new package version +post_install() { + EXTPACK="/usr/share/virtualbox/extensions/VNC-${1%%-*}.vbox-extpack" + ACCEPT="$(bsdtar --to-stdout -xf "${EXTPACK}" ./ExtPack-license.txt | sha256sum | head --bytes=64)" + VBoxManage extpack install "${EXTPACK}" --accept-license="${ACCEPT}" >/dev/null +} + +# arg 1: the new package version +# arg 2: the old package version +pre_upgrade() { + pre_remove "$2" +} + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + post_install "$1" +} + +# arg 1: the old package version +pre_remove() { + VBoxManage extpack uninstall 'VNC' >/dev/null +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/virtualbox-guest-dkms.conf b/virtualbox-guest-dkms.conf new file mode 100644 index 000000000000..d0281dfebded --- /dev/null +++ b/virtualbox-guest-dkms.conf @@ -0,0 +1,31 @@ +## @file +# Linux DKMS config script for the VirtualBox guest kernel modules +# + +# +# Copyright (C) 2006-2015 Oracle Corporation +# +# This file is part of VirtualBox Open Source Edition (OSE), as +# available from http://www.virtualbox.org. This file is free software; +# you can redistribute it and/or modify it under the terms of the GNU +# General Public License (GPL) as published by the Free Software +# Foundation, in version 2 as it comes in the "COPYING" file of the +# VirtualBox OSE distribution. VirtualBox OSE is distributed in the +# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. +# + +PACKAGE_NAME="vboxguest" +PACKAGE_VERSION=@VERSION@_OSE +AUTOINSTALL=yes + +BUILT_MODULE_NAME[0]="vboxguest" +BUILT_MODULE_LOCATION[0]="vboxguest" +DEST_MODULE_LOCATION[0]="/kernel/misc" + +BUILT_MODULE_NAME[1]="vboxsf" +BUILT_MODULE_LOCATION[1]="vboxsf" +DEST_MODULE_LOCATION[1]="/kernel/misc" + +BUILT_MODULE_NAME[2]="vboxvideo" +BUILT_MODULE_LOCATION[2]="vboxvideo" +DEST_MODULE_LOCATION[2]="/kernel/misc" diff --git a/virtualbox-guest-dkms.install b/virtualbox-guest-dkms.install new file mode 100644 index 000000000000..e15beac04733 --- /dev/null +++ b/virtualbox-guest-dkms.install @@ -0,0 +1,12 @@ +#!/bin/bash + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + if (( $(vercmp $2 5.0.16-3) < 0 )); then + echo '==> Since version 5.0.16-2 kernel modules are loaded at boot by systemd-modules-load.' + echo '==> Read modules-load.d man page to disable them.' + fi +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/virtualbox-guest-utils.sysusers b/virtualbox-guest-utils.sysusers new file mode 100644 index 000000000000..12453ad8b923 --- /dev/null +++ b/virtualbox-guest-utils.sysusers @@ -0,0 +1 @@ +g vboxsf 109 - diff --git a/virtualbox-host-dkms.conf b/virtualbox-host-dkms.conf new file mode 100644 index 000000000000..a8b41bf40027 --- /dev/null +++ b/virtualbox-host-dkms.conf @@ -0,0 +1,35 @@ +## @file +# Linux DKMS config script for the VirtualBox guest kernel modules +# + +# +# Copyright (C) 2006-2015 Oracle Corporation +# +# This file is part of VirtualBox Open Source Edition (OSE), as +# available from http://www.virtualbox.org. This file is free software; +# you can redistribute it and/or modify it under the terms of the GNU +# General Public License (GPL) as published by the Free Software +# Foundation, in version 2 as it comes in the "COPYING" file of the +# VirtualBox OSE distribution. VirtualBox OSE is distributed in the +# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. +# + +PACKAGE_NAME="vboxhost" +PACKAGE_VERSION=@VERSION@_OSE +AUTOINSTALL=yes + +BUILT_MODULE_NAME[0]="vboxdrv" +BUILT_MODULE_LOCATION[0]="vboxdrv" +DEST_MODULE_LOCATION[0]="/kernel/misc" + +BUILT_MODULE_NAME[1]="vboxnetflt" +BUILT_MODULE_LOCATION[1]="vboxnetflt" +DEST_MODULE_LOCATION[1]="/kernel/misc" + +BUILT_MODULE_NAME[2]="vboxnetadp" +BUILT_MODULE_LOCATION[2]="vboxnetadp" +DEST_MODULE_LOCATION[2]="/kernel/misc" + +BUILT_MODULE_NAME[3]="vboxpci" +BUILT_MODULE_LOCATION[3]="vboxpci" +DEST_MODULE_LOCATION[3]="/kernel/misc" diff --git a/virtualbox-host-dkms.install b/virtualbox-host-dkms.install new file mode 100644 index 000000000000..e15beac04733 --- /dev/null +++ b/virtualbox-host-dkms.install @@ -0,0 +1,12 @@ +#!/bin/bash + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + if (( $(vercmp $2 5.0.16-3) < 0 )); then + echo '==> Since version 5.0.16-2 kernel modules are loaded at boot by systemd-modules-load.' + echo '==> Read modules-load.d man page to disable them.' + fi +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/virtualbox.install b/virtualbox.install new file mode 100644 index 000000000000..ca39579b2a73 --- /dev/null +++ b/virtualbox.install @@ -0,0 +1,12 @@ +#!/bin/bash + +# arg 1: the new package version +# arg 2: the old package version +post_upgrade() { + if (( $(vercmp $2 5.0.16-1) < 0 )); then + echo '==> Since version 5.0.14-2 kernel modules are provided via dkms' + echo '==> Check you have the headers matching your kernel installed' + fi +} + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/virtualbox.sysusers b/virtualbox.sysusers new file mode 100644 index 000000000000..4d4caeb27936 --- /dev/null +++ b/virtualbox.sysusers @@ -0,0 +1 @@ +g vboxusers 108 - |