diff options
32 files changed, 474 insertions, 571 deletions
@@ -1,25 +1,23 @@ pkgbase = virtualbox-svn - pkgver = 81608 - pkgrel = 1 + pkgver = 102693 + pkgrel = 2 url = http://virtualbox.org arch = x86_64 license = GPL - license = custom + license = custom:CDDL + makedepends = subversion makedepends = alsa-lib - makedepends = bin86 makedepends = cdrkit makedepends = curl - makedepends = dev86 makedepends = device-mapper makedepends = git makedepends = glu makedepends = gsoap + makedepends = glslang makedepends = iasl - makedepends = opus - makedepends = jdk7-openjdk + makedepends = jdk8-openjdk makedepends = libidl2 makedepends = libpulse - makedepends = libstdc++5 makedepends = libvncserver makedepends = libvpx makedepends = libxcomposite @@ -28,26 +26,29 @@ pkgbase = virtualbox-svn makedepends = libxml2 makedepends = libxmu makedepends = libxrandr + makedepends = liblzf + makedepends = libtpms makedepends = libxslt makedepends = libxtst makedepends = linux-headers makedepends = mesa + makedepends = nasm + makedepends = opus makedepends = python - makedepends = qt5-base - makedepends = qt5-x11extras - makedepends = qt5-tools + makedepends = python-packaging + makedepends = qt6-base + makedepends = qt6-5compat + makedepends = qt6-scxml + makedepends = qt6-tools makedepends = sdl makedepends = sdl_ttf makedepends = vde2 makedepends = xalan-c - makedepends = xf86driproto + makedepends = xorgproto makedepends = xorg-server-devel - makedepends = subversion + makedepends = yasm source = VirtualBox::svn+http://www.virtualbox.org/svn/vbox/trunk - source = git+https://github.com/jwrdegoede/vboxsf#commit=87b9015c57dd7f226c768131bf8b4c0249de9835 source = virtualbox-host-dkms.conf - source = virtualbox-guest-dkms.conf - source = virtualbox-vboxsf-dkms.conf source = virtualbox.sysusers source = virtualbox-guest-utils.sysusers source = 60-vboxdrv.rules @@ -55,69 +56,64 @@ pkgbase = virtualbox-svn source = LocalConfig.kmk source = vboxservice.service source = vboxservice-nox.service + source = vboxdrmclient.path + source = vboxdrmclient.service source = vboxweb.service source = vboxreload - source = 005-gsoap-build.patch - source = 006-rdesktop-vrdp-keymap-path.patch + source = 001-disable-update.patch + source = 004-drop-Wno-format.patch source = 008-no-vboxvideo.patch - source = 011-python-3-7.patch + source = 009-properly-handle-i3wm.patch source = 012-vbglR3GuestCtrlDetectPeekGetCancelSupport.patch - source = 013-Makefile.patch - source = 014-iasl.patch - source = 101-vboxsf-automount.patch - source = mount.vboxsf - sha256sums = SKIP + source = 013-support-building-from-dkms.patch + source = 018-upate-xclient-script.patch sha256sums = SKIP - sha256sums = deb03efa7ad0376aa55a087f2e882afe00935f10b0e7aa853ba9147090d341ec - sha256sums = c328376b05183d269f98319ec660f54c55e298f77d229977606862b064651a7c - sha256sums = e37712bcbbafbdee47230a962446d63b0ae882801a89931d93ad9e704e70ad4b + sha256sums = 76d98ea062fcad9e5e3fa981d046a6eb12a3e718a296544a68b66f4b65cb56db sha256sums = 2101ebb58233bbfadf3aa74381f22f7e7e508559d2b46387114bc2d8e308554c sha256sums = da4c49f6ca94e047e196cdbcba2c321199f4760056ea66e0fbc659353e128c9e sha256sums = 9c5238183019f9ebc7d92a8582cad232f471eab9d3278786225abc1a1c7bf66e sha256sums = 033c597e0f5285d2ddb0490868e5b6f945f45c7b1b1152a02a9e6fea438b2c95 - sha256sums = 2be313b98bffde482aad93b00c419f1d5f7645fd9e6053175ffb0d925067f96a - sha256sums = 94a808f46909a51b2d0cf2c6e0a6c9dea792034943e6413bf9649a036c921b21 + sha256sums = 3cf42bc6e9e55fd2cb6be7b89c5b98d0f6a2eff6125a9ee7efafaabc35f1de22 + sha256sums = c41a801fe344a4471a7b61a4764d1d857c403e4fb96e2ba6bc89c77a35f2be7a sha256sums = 01dbb921bd57a852919cc78be5b73580a564f28ebab2fe8d6c9b8301265cbfce + sha256sums = 83d8f24bff25bb925083cf39b3195236c6136105e62417712cc3f25b92e14b47 + sha256sums = 2beab8de525220fa418c9873f9e0d657ddbad4ff9e4a46d7053e6cd9bc4ce95e sha256sums = e6e875ef186578b53106d7f6af48e426cdaf1b4e86834f01696b8ef1c685787f - sha256sums = 2a9d7748dc58f9d091f791da06b733a696943114f7c0d580fa00a0752eb1d2ac - sha256sums = 7d2da8fe10a90f76bbfc80ad1f55df4414f118cd10e10abfb76070326abebd46 - sha256sums = 13c6ca9be0f91582445fd2a14a8c58a0625a15d9cb98cb6e8c2736d77ea976ab - sha256sums = 8b7f241107863f82a5b0ae336aead0b3366a40103ff72dbebf33f54b512a0cbc - sha256sums = 55224cb74b54b331d691f171efc0d4c058a14f738551f1d8f559146c2908635d - sha256sums = 06485dce54a5f21b85f4360db884d98c1ab091d3f2535881ec9fcd82feb06b7e - sha256sums = da7e58ed37dc23c6202aab3017864579a99e78417f3421ddcc98a198198fe2c9 - sha256sums = 5ad14bd587031ac3dcadaeca2cc4d7b48a59ff09b03884b4fc2be5b1432a8237 - sha256sums = a784f3cc24652a16385cc63abac6c5178932ca5f3861be7650631b7dafa753a4 - sha256sums = f3ed6741f8977f40900c8aa372fa082df1f8723d497d4fff445153c543bc8947 - makedepends_x86_64 = gcc-multilib - makedepends_x86_64 = lib32-glibc + sha256sums = 4001b5927348fe669a541e80526d4f9ea91b883805f102f7d571edbb482a9b9d + sha256sums = 9ee947c9b5ec5b25f52d3e72340fc3a57ca6e65a604e15b669ac582a3fb0dc1b + sha256sums = ccebd3213f1888c8f8c090392b527b8cc61f0d57e58c49a634486bf44b556299 + sha256sums = 053bfeee8863f3ffdf2f0e3f9f0d77dc61dd32764700a97a7635fd8611e20491 + sha256sums = 5c4b237839a52a18b39d996b37de9d2f9d0ee621c162956cf4424122429094d3 + sha256sums = 81900e13d36630488accd8c0bfd2ceb69563fb2c4f0f171caba1cca59d438024 + sha256sums = 00f68b86d32a1fada900c2da8dad2ab4215106cd58004f049bded99727cda2ff + sha256sums = b6193d22ee7c1726ea4d468b18640454b8e4f2784479073a0044e45dca4e516d pkgname = virtualbox-svn pkgdesc = Powerful x86 virtualization for enterprise as well as home use - install = virtualbox.install - depends = glibc - depends = openssl depends = curl depends = gcc-libs + depends = glibc + depends = liblzf depends = libpng - depends = python - depends = sdl + depends = libtpms depends = libvpx - depends = libxml2 - depends = procps-ng - depends = shared-mime-info - depends = zlib - depends = libxcursor - depends = libxinerama depends = libx11 + depends = libxcursor depends = libxext + depends = libxinerama + depends = libxml2 depends = libxmu depends = libxt - depends = opus - depends = desktop-file-utils - depends = hicolor-icon-theme - depends = qt5-base - depends = qt5-x11extras + depends = openssl + depends = procps-ng + depends = python + depends = qt6-base + depends = qt6-tools + depends = qt6-5compat + depends = sdl + depends = shared-mime-info + depends = zlib + depends = qt6-scxml depends = VIRTUALBOX-HOST-MODULES-SVN optdepends = vde2: Virtual Distributed Ethernet support optdepends = virtualbox-guest-iso: Guest Additions CD image @@ -135,9 +131,6 @@ pkgname = virtualbox-host-dkms-svn 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-SVN conflicts = virtualbox-source conflicts = virtualbox-host-source @@ -146,23 +139,6 @@ pkgname = virtualbox-host-dkms-svn replaces = virtualbox-host-source replaces = virtualbox-host-modules-lts -pkgname = virtualbox-guest-dkms-svn - 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-SVN - 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 - pkgname = virtualbox-sdk-svn pkgdesc = VirtualBox Software Developer Kit (SDK) depends = python @@ -176,29 +152,35 @@ pkgname = virtualbox-guest-utils-svn depends = libx11 depends = libxcomposite depends = libxdamage - depends = libxrandr depends = libxext depends = libxfixes depends = libxmu depends = libxt depends = xorg-xrandr - depends = VIRTUALBOX-GUEST-MODULES-SVN + depends = xf86-video-vmware + depends = VIRTUALBOX-GUEST-MODULES provides = virtualbox-guest-utils conflicts = virtualbox-archlinux-additions conflicts = virtualbox-guest-additions conflicts = virtualbox-guest-utils-nox conflicts = virtualbox-guest-utils + conflicts = virtualbox-guest-dkms + conflicts = virtualbox-guest-dkms-svn replaces = virtualbox-archlinux-additions replaces = virtualbox-guest-additions + replaces = virtualbox-guest-dkms-svn pkgname = virtualbox-guest-utils-nox-svn pkgdesc = VirtualBox Guest userspace utilities without X support depends = glibc depends = pam - depends = VIRTUALBOX-GUEST-MODULES-SVN + depends = VIRTUALBOX-GUEST-MODULES provides = virtualbox-guest-utils-nox conflicts = virtualbox-guest-utils conflicts = virtualbox-guest-utils-nox + conflicts = virtualbox-guest-dkms + conflicts = virtualbox-guest-dkms-svn + replaces = virtualbox-guest-dkms-svn pkgname = virtualbox-ext-vnc-svn pkgdesc = VirtualBox VNC extension pack @@ -208,4 +190,3 @@ pkgname = virtualbox-ext-vnc-svn optdepends = tigervnc: vnc client provides = virtualbox-ext-vnc conflicts = virtualbox-ext-vnc - diff --git a/001-disable-update.patch b/001-disable-update.patch new file mode 100644 index 000000000000..97fd06a56dfc --- /dev/null +++ b/001-disable-update.patch @@ -0,0 +1,13 @@ +diff --git a/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp b/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp +index da373c92..18fb69a7 100644 +--- a/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp ++++ b/src/VBox/Frontends/VirtualBox/src/extradata/UIExtraDataManager.cpp +@@ -2349,7 +2349,7 @@ QString UIExtraDataManager::preventBetaBuildWarningForVersion() + bool UIExtraDataManager::applicationUpdateEnabled() + { + /* 'True' unless 'restriction' feature allowed: */ +- return !isFeatureAllowed(GUI_PreventApplicationUpdate); ++ return false; + } + + QString UIExtraDataManager::applicationUpdateData() diff --git a/002-dri-driver-path.patch b/002-dri-driver-path.patch deleted file mode 100644 index 26b7f3f65f44..000000000000 --- a/002-dri-driver-path.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff --git a/src/VBox/Additions/common/crOpenGL/fakedri_drv.c b/src/VBox/Additions/common/crOpenGL/fakedri_drv.c -index 92b4ffc..1a1c467 100644 ---- a/src/VBox/Additions/common/crOpenGL/fakedri_drv.c -+++ b/src/VBox/Additions/common/crOpenGL/fakedri_drv.c -@@ -56,24 +56,8 @@ typedef enum { - - //#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_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_DEFAULT_DRIVER_DIR "/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/004-drop-Wno-format.patch b/004-drop-Wno-format.patch new file mode 100644 index 000000000000..d8f7e22e51f0 --- /dev/null +++ b/004-drop-Wno-format.patch @@ -0,0 +1,84 @@ +From 6fed8ce04e50522c690ffa4bb100c1dd00ee4d36 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <mail@eworm.de> +Date: Tue, 18 Apr 2023 22:59:50 +0200 +Subject: [PATCH 1/1] drop -Wno-format + +--- + src/VBox/Devices/EFI/Firmware/Config.kmk | 2 +- + src/VBox/Devices/Makefile.kmk | 2 +- + src/VBox/Devices/PC/ipxe/Makefile.kmk | 2 +- + src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk | 2 +- + src/VBox/Main/webservice/Makefile.kmk | 3 +-- + 5 files changed + +diff --git a/src/VBox/Devices/EFI/Firmware/Config.kmk b/src/VBox/Devices/EFI/Firmware/Config.kmk +index ddd1fc1e..0614d90c 100644 +--- a/src/VBox/Devices/EFI/Firmware/Config.kmk ++++ b/src/VBox/Devices/EFI/Firmware/Config.kmk +@@ -155,7 +155,7 @@ TEMPLATE_VBoxEfiBldProg_LIBS = \ + ifn1of ($(KBUILD_HOST), win) # This stuff isn't up to our standard at all! :/ + TEMPLATE_VBoxEfiBldProg_CFLAGS = $(filter-out -pedantic,$(TEMPLATE_VBoxBldProg_CFLAGS)) \ + -Wno-sign-compare -Wno-missing-prototypes -Wno-strict-prototypes \ +- -Wno-implicit-function-declaration -Wno-missing-declarations -Wno-shadow -Wno-format \ ++ -Wno-implicit-function-declaration -Wno-missing-declarations -Wno-shadow \ + -Wno-empty-body -Wno-unused-parameter -Wno-unused-variable -Wno-unused-label + TEMPLATE_VBoxEfiBldProg_CXXFLAGS = $(filter-out -pedantic,$(TEMPLATE_VBoxBldProg_CXXFLAGS)) \ + -Wno-all -Wno-shadow -Wno-empty-body -Wno-unused-parameter -Wno-unused-variable \ +diff --git a/src/VBox/Devices/Makefile.kmk b/src/VBox/Devices/Makefile.kmk +index a17e655f..fe905681 100644 +@@ -853,7 +853,7 @@ if !defined(VBOX_ONLY_EXTPACKS) && "$(in + ifeq ($(KBUILD_TARGET),win) + $(file)_CFLAGS = -wd4018 + else +- $(file)_CFLAGS += -Wno-sign-compare -Wno-format -Wno-bad-function-cast ++ $(file)_CFLAGS += -Wno-sign-compare -Wno-bad-function-cast + endif + endef + +diff --git a/src/VBox/Devices/PC/ipxe/Makefile.kmk b/src/VBox/Devices/PC/ipxe/Makefile.kmk +index 7f5b4c5a..33705fe7 100644 +--- a/src/VBox/Devices/PC/ipxe/Makefile.kmk ++++ b/src/VBox/Devices/PC/ipxe/Makefile.kmk +@@ -396,7 +396,7 @@ endif + # + BLDPROGS += ipxezbin + ipxezbin_TEMPLATE = VBoxBldProg +- ipxezbin_CFLAGS = -Wno-format -Wno-unused-function -Wno-pointer-arith ++ ipxezbin_CFLAGS = -Wno-unused-function -Wno-pointer-arith + ipxezbin_SOURCES = src/util/zbin.c + ifdef VBOX_WITH_LIBLZMA + ipxezbin_INCS = $(SDK_VBoxLibLzma_INCS) # Can't use the proper SDK here as link order matters and liblzma depends on our runtime. +diff --git a/src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk b/src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk +index 081f02b0..75fe411b 100644 +--- a/src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk ++++ b/src/VBox/ExtPacks/VBoxDTrace/Makefile.kmk +@@ -118,7 +118,7 @@ if defined(VBOX_WITH_EXTPACK_VBOXDTRACE) && defined(VBOX_WITH_EXTPACK) + VBoxDTraceCmd_DEFS.win = YY_USE_PROTOS=1 YYENABLE_NLS=0 YYLTYPE_IS_TRIVIAL=0 + VBoxDTraceCmd_SDKS = VBoxZlib + ifn1of ($(KBUILD_TARGET), win) +- VBoxDTraceCmd_CFLAGS = -Wno-format $(VBOX_GCC_Wno-overlength-strings) -Wno-sign-compare -Wno-strict-prototypes -Wno-missing-prototypes -Wno-missing-declarations -Wno-shadow ++ VBoxDTraceCmd_CFLAGS = $(VBOX_GCC_Wno-overlength-strings) -Wno-sign-compare -Wno-strict-prototypes -Wno-missing-prototypes -Wno-missing-declarations -Wno-shadow + endif + VBoxDTraceCmd_INCS = \ + include \ +diff --git a/src/VBox/Main/webservice/Makefile.kmk b/src/VBox/Main/webservice/Makefile.kmk +index dbccdf4f..c6093ed4 100644 +--- a/src/VBox/Main/webservice/Makefile.kmk ++++ b/src/VBox/Main/webservice/Makefile.kmk +@@ -264,7 +264,7 @@ ifdef VBOX_GSOAP_INSTALLED + ifn1of ($(KBUILD_TARGET), win) + vboxsoap_CXXFLAGS += -Wno-shadow -Wno-parentheses $(VBOX_GCC_Wno-literal-suffix) \ + $(VBOX_GCC_Wno-stringop-overflow) $(VBOX_GCC_Wno-stringop-truncation) \ +- $(VBOX_GCC_Wno-vla) -Wno-format -Wno-deprecated-declarations $(VBOX_GCC_fno-printf-return-value) ++ $(VBOX_GCC_Wno-vla) -Wno-deprecated-declarations $(VBOX_GCC_fno-printf-return-value) + ifn1of ($(KBUILD_TYPE), debug) # Save time+memory by using -O0 instead of -O2. + vboxsoap_CXXFLAGS += -O0 ## @todo this could be interesting for g++ (not clang++): -fcprop-registers + endif +@@ -335,7 +335,6 @@ ifdef VBOX_GSOAP_INSTALLED + $(VBOXWEB_OUT_DIR)/gsoap_copy_all_ts + ifn1of ($(KBUILD_TARGET), win) + $(VBOX_GSOAP_CXX_SOURCES)_CXXFLAGS = \ +- -Wno-format \ + $(VBOX_GCC_Wno-int-in-bool-context) \ + $(VBOX_GCC_Wno-logical-op) + # currently necessary when compiling against OpenSSL 1.0 due to a missing diff --git a/005-gsoap-build.patch b/005-gsoap-build.patch deleted file mode 100644 index bba4f0ec7557..000000000000 --- a/005-gsoap-build.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- 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 deleted file mode 100644 index 3acf8a04b2ea..000000000000 --- a/006-rdesktop-vrdp-keymap-path.patch +++ /dev/null @@ -1,12 +0,0 @@ -# 2015 © Sébastien Luttringer ---- a/src/VBox/RDP/client-1.8.4/Makefile.kmk -+++ b/src/VBox/RDP/client-1.8.4/Makefile.kmk -@@ -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 deleted file mode 100644 index d11e75dd9f40..000000000000 --- a/007-python2-path.patch +++ /dev/null @@ -1,9 +0,0 @@ -# 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 index 60b721a8c281..c427c2fa3d30 100644 --- a/008-no-vboxvideo.patch +++ b/008-no-vboxvideo.patch @@ -1,5 +1,5 @@ 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: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 diff --git a/009-glibc-2.26.patch b/009-glibc-2.26.patch deleted file mode 100644 index 81d149e703bd..000000000000 --- a/009-glibc-2.26.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 4d1e01e1df513666642d4ddbb24625c5bcc12d84 Mon Sep 17 00:00:00 2001 -From: Christian Hesse <mail@eworm.de> -Date: Thu, 14 Sep 2017 23:14:36 +0200 -Subject: [PATCH 1/1] fix compilation with glibc 2.26 - -Signed-off-by: Christian Hesse <mail@eworm.de> ---- - src/VBox/ExtPacks/VBoxDTrace/include/VBoxDTraceTypes.h | 4 ---- - 1 file changed, 4 deletions(-) - -diff --git a/src/VBox/ExtPacks/VBoxDTrace/include/VBoxDTraceTypes.h b/src/VBox/ExtPacks/VBoxDTrace/include/VBoxDTraceTypes.h -index 9032e6d..0d1770e 100644 ---- a/src/VBox/ExtPacks/VBoxDTrace/include/VBoxDTraceTypes.h -+++ b/src/VBox/ExtPacks/VBoxDTrace/include/VBoxDTraceTypes.h -@@ -55,11 +55,11 @@ typedef uint64_t hrtime_t; - typedef uint32_t id_t; - typedef uint32_t zoneid_t; - #endif --#if !defined(NGREG) || !defined(RT_OS_LINUX) -+#if !defined(__NGREG) || !defined(RT_OS_LINUX) - typedef RTCCINTREG greg_t; - #else - AssertCompileSize(greg_t, sizeof(RTCCINTREG)); - #endif - typedef uintptr_t pc_t; - typedef unsigned int model_t; - typedef RTCPUID processorid_t; diff --git a/009-include-path.patch b/009-include-path.patch deleted file mode 100644 index 985a30cd04c6..000000000000 --- a/009-include-path.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile b/src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile -index 623485e9..5068906f 100644 ---- a/src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile -+++ b/src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile -@@ -58,7 +58,7 @@ VBOXMOD_DEFS = \ - RT_WITH_VBOX \ - VBOX_WITH_HARDENING \ - VBOX_WITH_64_BITS_GUESTS # <-- must be consistent with Config.kmk! --VBOXMOD_CFLAGS = -include $(KBUILD_EXTMOD)/include/VBox/SUPDrvMangling.h -fno-pie -Wno-declaration-after-statement -+VBOXMOD_CFLAGS = -include $(VBOXNETADPT_DIR)include/VBox/SUPDrvMangling.h -fno-pie -Wno-declaration-after-statement - - include $(obj)/Makefile-footer.gmk - diff --git a/009-properly-handle-i3wm.patch b/009-properly-handle-i3wm.patch new file mode 100644 index 000000000000..0d3aa5c68230 --- /dev/null +++ b/009-properly-handle-i3wm.patch @@ -0,0 +1,82 @@ +From b9e64417e4c33e2c17e060aa482519c2c8c7d416 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <mail@eworm.de> +Date: Tue, 17 Jan 2023 22:04:08 +0100 +Subject: [PATCH] properly handle i3wm + +--- + .../VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp | 3 ++- + .../Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp | 3 +++ + .../Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.h | 3 ++- + src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp | 4 ++++ + 4 files changed, 11 insertions(+), 2 deletions(-) + +diff --git a/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp b/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp +index c27ff6f6..066a80e0 100644 +--- a/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp ++++ b/src/VBox/Frontends/VirtualBox/src/globals/UIDesktopWidgetWatchdog.cpp +@@ -385,7 +385,8 @@ QRect UIDesktopWidgetWatchdog::availableGeometry(QScreen *pScreen) const + /* Get cached available-geometry: */ + const QRect availableGeometry = m_availableGeometryData.value(screenToIndex(pScreen)); + /* Return cached available-geometry if it's valid or screen-geometry otherwise: */ +- return availableGeometry.isValid() ? availableGeometry : screenGeometry(pScreen); ++ return availableGeometry.isValid() && NativeWindowSubsystem::X11WindowManagerType() != X11WMType_i3 ? ++ availableGeometry : screenGeometry(pScreen); + # endif /* !VBOX_GUI_WITH_CUSTOMIZATIONS1 */ + #else /* !VBOX_WS_X11 */ + /* Just return screen available-geometry: */ +diff --git a/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp b/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp +index 2443af89..6cfcff74 100644 +--- a/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp ++++ b/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.cpp +@@ -141,6 +141,9 @@ X11WMType NativeWindowSubsystem::X11Wind + else + if (QString((const char*)pcData).contains("Xfwm4", Qt::CaseInsensitive)) + wmType = X11WMType_Xfwm4; ++ else ++ if (QString((const char*)pcData).contains("i3", Qt::CaseInsensitive)) ++ wmType = X11WMType_i3; + if (pcData) + XFree(pcData); + } +diff --git a/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.h b/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.h +index 66504c71..f83b5c85 100644 +--- a/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.h ++++ b/src/VBox/Frontends/VirtualBox/src/platform/nix/VBoxUtils-nix.h +@@ -51,6 +51,7 @@ enum X11WMType + X11WMType_Metacity, + X11WMType_Mutter, + X11WMType_Xfwm4, ++ X11WMType_i3, + }; + + /** X11: Screen-saver inhibit methods. */ +@@ -102,11 +103,11 @@ namespace NativeWindowSubsystem + bool WaylandIsCompositingManagerRunning(); + + /** Wrapper for window manager type functions. */ +- X11WMType windowManagerType(bool fIsXServerAvailable); ++ SHARED_LIBRARY_STUFF X11WMType windowManagerType(bool fIsXServerAvailable); + /** X11: Determines and returns current Window Manager type. */ +- X11WMType X11WindowManagerType(); ++ SHARED_LIBRARY_STUFF X11WMType X11WindowManagerType(); + /** Wayland: Determines and returns current Window Manager type. */ +- X11WMType WaylandWindowManagerType(); ++ SHARED_LIBRARY_STUFF X11WMType WaylandWindowManagerType(); + + /** Wrapper for X11CheckExtension and WaylandCheckExtension functions. */ + bool checkExtension(bool fIsXServerAvailable, const char *extensionName); +diff --git a/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp b/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp +index 7b37d46b..b838ad07 100644 +--- a/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp ++++ b/src/VBox/Frontends/VirtualBox/src/widgets/UIMiniToolBar.cpp +@@ -1076,6 +1076,10 @@ void UIMiniToolBar::prepare() + /* Enable translucency through Qt API if supported: */ + if (uiCommon().isCompositingManagerRunning()) + setAttribute(Qt::WA_TranslucentBackground); ++ ++ if (NativeWindowSubsystem::X11WindowManagerType() == X11WMType_i3) ++ setWindowFlags(Qt::FramelessWindowHint); ++ + #endif /* VBOX_WS_NIX */ + + /* Make sure we have no focus: */ diff --git a/010-qt-5.11.patch b/010-qt-5.11.patch deleted file mode 100644 index e1874536be39..000000000000 --- a/010-qt-5.11.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -u -r VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp VirtualBox-5.2.12-qt/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp ---- VirtualBox-5.2.12/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp 2018-05-09 18:38:05.000000000 +0200 -+++ VirtualBox-5.2.12-qt/src/VBox/Frontends/VirtualBox/src/settings/global/UIGlobalSettingsProxy.cpp 2018-06-05 21:51:18.401913367 +0200 -@@ -21,6 +21,7 @@ - - /* Qt includes: */ - # include <QRegExpValidator> -+# include <QButtonGroup> - - /* GUI includes: */ - # include "QIWidgetValidator.h" diff --git a/011-python-3-7.patch b/011-python-3-7.patch deleted file mode 100644 index 0eebf0039b43..000000000000 --- a/011-python-3-7.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/configure b/configure -index 128da55c..c4bb08c4 100755 ---- a/configure -+++ b/configure -@@ -1969,7 +1969,7 @@ extern "C" int main(void) - } - EOF - found= -- SUPPYTHONLIBS="python2.7 python2.6 python3.1 python3.2 python3.3 python3.4 python3.4m python3.5 python3.5m python3.6 python3.6m" -+ SUPPYTHONLIBS="python2.7 python2.6 python3.1 python3.2 python3.3 python3.4 python3.4m python3.5 python3.5m python3.6 python3.6m python3.7 python3.7m" - for p in $PYTHONDIR; do - for d in $SUPPYTHONLIBS; do - for b in lib/x86_64-linux-gnu lib/i386-linux-gnu lib64 lib/64 lib; do diff --git a/012-vbglR3GuestCtrlDetectPeekGetCancelSupport.patch b/012-vbglR3GuestCtrlDetectPeekGetCancelSupport.patch index e73c25af0105..d2ef03c8f04e 100644 --- a/012-vbglR3GuestCtrlDetectPeekGetCancelSupport.patch +++ b/012-vbglR3GuestCtrlDetectPeekGetCancelSupport.patch @@ -12,4 +12,3 @@ index 6ad7df3e..2f12c277 100644 /* * Seems we get VINF_SUCCESS back from the host if we try unsupported * guest control functions, so we need to supply some random message - diff --git a/012-vboxsf-automount.patch b/012-vboxsf-automount.patch deleted file mode 100644 index 5c665e722c83..000000000000 --- a/012-vboxsf-automount.patch +++ /dev/null @@ -1,20 +0,0 @@ -This ghetto patch attempts to fix shared folder automounting for guests running -Linux 4.16, and also suggests an alternative to mount.vboxsf. - -diff -uprb VirtualBox-5.2.8.orig/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp VirtualBox-5.2.8/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp ---- VirtualBox-5.2.8.orig/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp 2018-02-26 17:57:30.000000000 +0200 -+++ VirtualBox-5.2.8/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp 2018-04-07 21:00:05.785735622 +0300 -@@ -346,6 +346,13 @@ static int vbsvcAutoMountSharedFolder(co - "vboxsf", - fFlags, - &mntinf); -+ if (r == -1 && errno == EINVAL) -+ { -+ /* Mainline vboxsf accepts regular mount opts. */ -+ char mount_opts[1024]; -+ snprintf(mount_opts, 1024, "gid=%d,dmode=0770,fmode=0770", mntinf.gid); -+ r = mount(pszShareName, pszMountPoint, "vboxsf", fFlags, mount_opts); -+ } - if (r == 0) - { - VGSvcVerbose(0, "vbsvcAutoMountWorker: Shared folder '%s' was mounted to '%s'\n", pszShareName, pszMountPoint); diff --git a/013-Makefile.patch b/013-Makefile.patch deleted file mode 100644 index 30b44c7259fd..000000000000 --- a/013-Makefile.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff --git a/src/VBox/HostDrivers/linux/Makefile b/src/VBox/HostDrivers/linux/Makefile -index 18466b48..7c7de4e5 100644 ---- a/src/VBox/HostDrivers/linux/Makefile -+++ b/src/VBox/HostDrivers/linux/Makefile -@@ -23,25 +23,25 @@ - # terms and conditions of either the GPL or the CDDL or both. - # - --ifneq ($(KERNELRELEASE),) -+ifneq ($(KBUILD_EXTMOD),) - --# Building from kBuild (make -C <kernel_directory> M=`pwd`), --# or inside a kernel source tree. -+# Building from kBuild (make -C <kernel_directory> M=`pwd`). -+# KBUILD_EXTMOD is set to $(M) in this case. - - obj-m = vboxdrv/ --ifneq ($(wildcard $(CURDIR)/vboxnetflt/Makefile),) -+ifneq ($(wildcard $(KBUILD_EXTMOD)/vboxnetflt/Makefile),) - obj-m += vboxnetflt/ - endif --ifneq ($(wildcard $(CURDIR)/vboxnetadp/Makefile),) -+ifneq ($(wildcard $(KBUILD_EXTMOD)/vboxnetadp/Makefile),) - obj-m += vboxnetadp/ - endif --ifneq ($(wildcard $(CURDIR)/vboxpci/Makefile),) -+ifneq ($(wildcard $(KBUILD_EXTMOD)/vboxpci/Makefile),) - obj-m += vboxpci/ - endif - --else # ! KERNELRELEASE -+else # ! KBUILD_EXTMOD - --# convenience Makefile without KERNELRELEASE -+# convenience Makefile without KBUILD_EXTMOD - - KBUILD_VERBOSE ?= - KERN_VER ?= $(shell uname -r) -@@ -146,4 +146,4 @@ load: unload - fi; \ - done - --endif # ! KERNELRELEASE -+endif # ! KBUILD_EXTMOD diff --git a/013-support-building-from-dkms.patch b/013-support-building-from-dkms.patch new file mode 100644 index 000000000000..e2d0ebd67205 --- /dev/null +++ b/013-support-building-from-dkms.patch @@ -0,0 +1,54 @@ +From eb9ded87d9d1a6755f2bb7258641c9c80c54c347 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <mail@eworm.de> +Date: Mon, 17 Oct 2022 16:30:32 +0200 +Subject: [PATCH] support building from dkms + +--- + src/VBox/HostDrivers/linux/Makefile | 18 +++++++++--------- + 1 file changed, 9 insertions(+), 9 deletions(-) + +diff --git a/src/VBox/HostDrivers/linux/Makefile b/src/VBox/HostDrivers/linux/Makefile +index badeb4f4..314281f3 100644 +--- a/src/VBox/HostDrivers/linux/Makefile ++++ b/src/VBox/HostDrivers/linux/Makefile +@@ -33,25 +33,25 @@ + # SPDX-License-Identifier: GPL-3.0-only OR CDDL-1.0 + # + +-ifneq ($(KERNELRELEASE),) ++ifneq ($(KBUILD_EXTMOD),) + +-# Building from kBuild (make -C <kernel_directory> M=`pwd`), +-# or inside a kernel source tree. ++# Building from kBuild (make -C <kernel_directory> M=`pwd`). ++# KBUILD_EXTMOD is set to $(M) in this case. + + obj-m = vboxdrv/ +- ifneq ($(wildcard $(CURDIR)/vboxnetflt/Makefile),) ++ ifneq ($(wildcard $(KBUILD_EXTMOD)/vboxnetflt/Makefile),) + obj-m += vboxnetflt/ + endif +- ifneq ($(wildcard $(CURDIR)/vboxnetadp/Makefile),) ++ ifneq ($(wildcard $(KBUILD_EXTMOD)/vboxnetadp/Makefile),) + obj-m += vboxnetadp/ + endif +- ifneq ($(wildcard $(CURDIR)/vboxpci/Makefile),) ++ ifneq ($(wildcard $(KBUILD_EXTMOD)/vboxpci/Makefile),) + obj-m += vboxpci/ + endif + +-else # ! KERNELRELEASE ++else # ! KBUILD_EXTMOD + +-# convenience Makefile without KERNELRELEASE ++# convenience Makefile without KBUILD_EXTMOD + + ifndef SUDO + ifneq ($(shell id -u),0) +@@ -244,5 +244,5 @@ load: unload + fi; \ + done + +-endif # ! KERNELRELEASE ++endif # ! KBUILD_EXTMOD + diff --git a/014-iasl.patch b/014-iasl.patch deleted file mode 100644 index 93f777c8cbae..000000000000 --- a/014-iasl.patch +++ /dev/null @@ -1,73 +0,0 @@ ---- "a/src/VBox/Devices/PC/vbox-cpuhotplug.dsl" -+++ "a/src/VBox/Devices/PC/vbox-cpuhotplug.dsl" -@@ -95,38 +95,38 @@ DefinitionBlock ("SSDT-cpuhotplug.aml", - } \ - } \ - -- GENERATE_CPU_OBJECT(0x00, SCK0, "SCKCPU0", CPU0, "SCK0-CPU0") -- GENERATE_CPU_OBJECT(0x01, SCK1, "SCKCPU1", CPU1, "SCK1-CPU0") -- GENERATE_CPU_OBJECT(0x02, SCK2, "SCKCPU2", CPU2, "SCK2-CPU0") -- GENERATE_CPU_OBJECT(0x03, SCK3, "SCKCPU3", CPU3, "SCK3-CPU0") -- GENERATE_CPU_OBJECT(0x04, SCK4, "SCKCPU4", CPU4, "SCK4-CPU0") -- GENERATE_CPU_OBJECT(0x05, SCK5, "SCKCPU5", CPU5, "SCK5-CPU0") -- GENERATE_CPU_OBJECT(0x06, SCK6, "SCKCPU6", CPU6, "SCK6-CPU0") -- GENERATE_CPU_OBJECT(0x07, SCK7, "SCKCPU7", CPU7, "SCK7-CPU0") -- GENERATE_CPU_OBJECT(0x08, SCK8, "SCKCPU8", CPU8, "SCK8-CPU0") -- GENERATE_CPU_OBJECT(0x09, SCK9, "SCKCPU9", CPU9, "SCK9-CPU0") -- GENERATE_CPU_OBJECT(0x0a, SCKA, "SCKCPUA", CPUA, "SCKA-CPU0") -- GENERATE_CPU_OBJECT(0x0b, SCKB, "SCKCPUB", CPUB, "SCKB-CPU0") -- GENERATE_CPU_OBJECT(0x0c, SCKC, "SCKCPUC", CPUC, "SCKC-CPU0") -- GENERATE_CPU_OBJECT(0x0d, SCKD, "SCKCPUD", CPUD, "SCKD-CPU0") -- GENERATE_CPU_OBJECT(0x0e, SCKE, "SCKCPUE", CPUE, "SCKE-CPU0") -- GENERATE_CPU_OBJECT(0x0f, SCKF, "SCKCPUF", CPUF, "SCKF-CPU0") -- GENERATE_CPU_OBJECT(0x10, SCKG, "SCKCPUG", CPUG, "SCKG-CPU0") -- GENERATE_CPU_OBJECT(0x11, SCKH, "SCKCPUH", CPUH, "SCKH-CPU0") -- GENERATE_CPU_OBJECT(0x12, SCKI, "SCKCPUI", CPUI, "SCKI-CPU0") -- GENERATE_CPU_OBJECT(0x13, SCKJ, "SCKCPUJ", CPUJ, "SCKJ-CPU0") -- GENERATE_CPU_OBJECT(0x14, SCKK, "SCKCPUK", CPUK, "SCKK-CPU0") -- GENERATE_CPU_OBJECT(0x15, SCKL, "SCKCPUL", CPUL, "SCKL-CPU0") -- GENERATE_CPU_OBJECT(0x16, SCKM, "SCKCPUM", CPUM, "SCKM-CPU0") -- GENERATE_CPU_OBJECT(0x17, SCKN, "SCKCPUN", CPUN, "SCKN-CPU0") -- GENERATE_CPU_OBJECT(0x18, SCKO, "SCKCPUO", CPUO, "SCKO-CPU0") -- GENERATE_CPU_OBJECT(0x19, SCKP, "SCKCPUP", CPUP, "SCKP-CPU0") -- GENERATE_CPU_OBJECT(0x1a, SCKQ, "SCKCPUQ", CPUQ, "SCKQ-CPU0") -- GENERATE_CPU_OBJECT(0x1b, SCKR, "SCKCPUR", CPUR, "SCKR-CPU0") -- GENERATE_CPU_OBJECT(0x1c, SCKS, "SCKCPUS", CPUS, "SCKS-CPU0") -- GENERATE_CPU_OBJECT(0x1d, SCKT, "SCKCPUT", CPUT, "SCKT-CPU0") -- GENERATE_CPU_OBJECT(0x1e, SCKU, "SCKCPUU", CPUU, "SCKU-CPU0") -- GENERATE_CPU_OBJECT(0x1f, SCKV, "SCKCPUV", CPUV, "SCKV-CPU0") -+ GENERATE_CPU_OBJECT(0x00, SCK0, "SCKCPU0", CPU0, 0) -+ GENERATE_CPU_OBJECT(0x01, SCK1, "SCKCPU1", CPU1, 1) -+ GENERATE_CPU_OBJECT(0x02, SCK2, "SCKCPU2", CPU2, 2) -+ GENERATE_CPU_OBJECT(0x03, SCK3, "SCKCPU3", CPU3, 3) -+ GENERATE_CPU_OBJECT(0x04, SCK4, "SCKCPU4", CPU4, 4) -+ GENERATE_CPU_OBJECT(0x05, SCK5, "SCKCPU5", CPU5, 5) -+ GENERATE_CPU_OBJECT(0x06, SCK6, "SCKCPU6", CPU6, 6) -+ GENERATE_CPU_OBJECT(0x07, SCK7, "SCKCPU7", CPU7, 7) -+ GENERATE_CPU_OBJECT(0x08, SCK8, "SCKCPU8", CPU8, 8) -+ GENERATE_CPU_OBJECT(0x09, SCK9, "SCKCPU9", CPU9, 9) -+ GENERATE_CPU_OBJECT(0x0a, SCKA, "SCKCPUA", CPUA, 10) -+ GENERATE_CPU_OBJECT(0x0b, SCKB, "SCKCPUB", CPUB, 11) -+ GENERATE_CPU_OBJECT(0x0c, SCKC, "SCKCPUC", CPUC, 12) -+ GENERATE_CPU_OBJECT(0x0d, SCKD, "SCKCPUD", CPUD, 13) -+ GENERATE_CPU_OBJECT(0x0e, SCKE, "SCKCPUE", CPUE, 14) -+ GENERATE_CPU_OBJECT(0x0f, SCKF, "SCKCPUF", CPUF, 15) -+ GENERATE_CPU_OBJECT(0x10, SCKG, "SCKCPUG", CPUG, 16) -+ GENERATE_CPU_OBJECT(0x11, SCKH, "SCKCPUH", CPUH, 17) -+ GENERATE_CPU_OBJECT(0x12, SCKI, "SCKCPUI", CPUI, 18) -+ GENERATE_CPU_OBJECT(0x13, SCKJ, "SCKCPUJ", CPUJ, 19) -+ GENERATE_CPU_OBJECT(0x14, SCKK, "SCKCPUK", CPUK, 20) -+ GENERATE_CPU_OBJECT(0x15, SCKL, "SCKCPUL", CPUL, 21) -+ GENERATE_CPU_OBJECT(0x16, SCKM, "SCKCPUM", CPUM, 22) -+ GENERATE_CPU_OBJECT(0x17, SCKN, "SCKCPUN", CPUN, 23) -+ GENERATE_CPU_OBJECT(0x18, SCKO, "SCKCPUO", CPUO, 24) -+ GENERATE_CPU_OBJECT(0x19, SCKP, "SCKCPUP", CPUP, 25) -+ GENERATE_CPU_OBJECT(0x1a, SCKQ, "SCKCPUQ", CPUQ, 26) -+ GENERATE_CPU_OBJECT(0x1b, SCKR, "SCKCPUR", CPUR, 27) -+ GENERATE_CPU_OBJECT(0x1c, SCKS, "SCKCPUS", CPUS, 28) -+ GENERATE_CPU_OBJECT(0x1d, SCKT, "SCKCPUT", CPUT, 29) -+ GENERATE_CPU_OBJECT(0x1e, SCKU, "SCKCPUU", CPUU, 30) -+ GENERATE_CPU_OBJECT(0x1f, SCKV, "SCKCPUV", CPUV, 31) - - #undef GENERATE_CPU_OBJECT - } diff --git a/018-upate-xclient-script.patch b/018-upate-xclient-script.patch new file mode 100644 index 000000000000..a3bc39ddd91f --- /dev/null +++ b/018-upate-xclient-script.patch @@ -0,0 +1,39 @@ +From 12e0a15f8893187ee92fa5af8095b8bb33adefe5 Mon Sep 17 00:00:00 2001 +From: Christian Hesse <mail@eworm.de> +Date: Mon, 17 Oct 2022 16:40:29 +0200 +Subject: [PATCH] upate xclient script + +--- + src/VBox/Additions/x11/Installer/98vboxadd-xclient | 13 +++---------- + 1 file changed, 3 insertions(+), 10 deletions(-) + +diff --git a/src/VBox/Additions/x11/Installer/98vboxadd-xclient b/src/VBox/Additions/x11/Installer/98vboxadd-xclient +index 7c9b5989..271261a4 100755 +--- a/src/VBox/Additions/x11/Installer/98vboxadd-xclient ++++ b/src/VBox/Additions/x11/Installer/98vboxadd-xclient +@@ -31,16 +31,9 @@ for i in $HOME/.vboxclient-*.pid; do + test -w $i || rm -f $i + done + +-if ! test -c /dev/vboxguest 2>/dev/null; then +- # Do not start if the kernel module is not present. +- # Execute notify-send in the back-ground to avoid racing with sddm, +- # as notify-send may wait for sddm to start while it waits for us to exit. +- notify-send "VBoxClient: the VirtualBox kernel service is not running. Exiting." & +-elif test -z "${SSH_CONNECTION}"; then +- # This script can also be triggered by a connection over SSH, which is not +- # what we had in mind, so we do not start VBoxClient in that case. We do +- # not use "exit" here as this script is "source"d, not executed. +- ++# Do not start if the kernel module is not present; or if this script is ++# triggered by a connection over SSH. ++if [ -c /dev/vboxguest -a -z "${SSH_CONNECTION}" ]; then + # Check wheather X11 or Wayland version of VBoxClient should be started. + vbox_wl_check=$(/usr/bin/vboxwl --check 2> /dev/null) + if test "$vbox_wl_check" = "WL"; then +@@ -52,5 +45,4 @@ elif test -z "${SSH_CONNECTION}"; then + fi + + /usr/bin/VBoxClient --checkhostversion +- /usr/bin/VBoxClient --vmsvga-session # In case VMSVGA emulation is enabled + fi diff --git a/020-python-3-11.patch b/020-python-3-11.patch new file mode 100644 index 000000000000..1dd820b73ce8 --- /dev/null +++ b/020-python-3-11.patch @@ -0,0 +1,13 @@ +diff --git a/src/VBox/Installer/linux/routines.sh b/src/VBox/Installer/linux/routines.sh +index 08e06358..44eba726 100644 +--- a/src/VBox/Installer/linux/routines.sh ++++ b/src/VBox/Installer/linux/routines.sh +@@ -446,7 +446,7 @@ maybe_run_python_bindings_installer() { + # the VirtualBox API bindings. Needs to prevent double installs which waste + # quite a bit of time. + PYTHONS="" +- for p in python2.6 python2.7 python2 python3.3 python3.4 python3.5 python3.6 python3.7 python3.8 python3.9 python3.10 python3 python; do ++ for p in python2.6 python2.7 python2 python3.3 python3.4 python3.5 python3.6 python3.7 python3.8 python3.9 python3.10 python3.11 python3 python; do + if [ "`$p -c 'import sys + if sys.version_info >= (2, 6) and (sys.version_info < (3, 0) or sys.version_info >= (3, 3)): + print(\"test\")' 2> /dev/null`" != "test" ]; then diff --git a/101-vboxsf-automount.patch b/101-vboxsf-automount.patch deleted file mode 100644 index 5c665e722c83..000000000000 --- a/101-vboxsf-automount.patch +++ /dev/null @@ -1,20 +0,0 @@ -This ghetto patch attempts to fix shared folder automounting for guests running -Linux 4.16, and also suggests an alternative to mount.vboxsf. - -diff -uprb VirtualBox-5.2.8.orig/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp VirtualBox-5.2.8/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp ---- VirtualBox-5.2.8.orig/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp 2018-02-26 17:57:30.000000000 +0200 -+++ VirtualBox-5.2.8/src/VBox/Additions/common/VBoxService/VBoxServiceAutoMount.cpp 2018-04-07 21:00:05.785735622 +0300 -@@ -346,6 +346,13 @@ static int vbsvcAutoMountSharedFolder(co - "vboxsf", - fFlags, - &mntinf); -+ if (r == -1 && errno == EINVAL) -+ { -+ /* Mainline vboxsf accepts regular mount opts. */ -+ char mount_opts[1024]; -+ snprintf(mount_opts, 1024, "gid=%d,dmode=0770,fmode=0770", mntinf.gid); -+ r = mount(pszShareName, pszMountPoint, "vboxsf", fFlags, mount_opts); -+ } - if (r == 0) - { - VGSvcVerbose(0, "vbsvcAutoMountWorker: Shared folder '%s' was mounted to '%s'\n", pszShareName, pszMountPoint); diff --git a/109-include-path.patch1 b/109-include-path.patch1 deleted file mode 100644 index 2b0d516f3016..000000000000 --- a/109-include-path.patch1 +++ /dev/null @@ -1,11 +0,0 @@ -diff -rupN src_orig/VBox/HostDrivers/VBoxNetAdp/linux/Makefile src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile ---- src_orig/VBox/HostDrivers/VBoxNetAdp/linux/Makefile 2019-03-11 11:47:24.053811535 +0800 -+++ src/VBox/HostDrivers/VBoxNetAdp/linux/Makefile 2019-03-11 11:50:09.534104474 +0800 -@@ -58,7 +59,7 @@ VBOXMOD_DEFS = \ - RT_WITH_VBOX \ - VBOX_WITH_HARDENING \ - VBOX_WITH_64_BITS_GUESTS # <-- must be consistent with Config.kmk! --VBOXMOD_CFLAGS = -include $(KBUILD_EXTMOD)/include/VBox/SUPDrvMangling.h -fno-pie -Wno-declaration-after-statement -+VBOXMOD_CFLAGS = -include $(KBUILD_EXTMOD)/vboxnetadp/include/VBox/SUPDrvMangling.h -fno-pie -Wno-declaration-after-statement - - include $(obj)/Makefile-footer.gmk diff --git a/LocalConfig.kmk b/LocalConfig.kmk index b413859931a9..a6078ca84514 100644 --- a/LocalConfig.kmk +++ b/LocalConfig.kmk @@ -16,7 +16,7 @@ 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 = python -VBOX_JAVA_HOME = /usr/lib/jvm/java-7-openjdk +VBOX_JAVA_HOME = /usr/lib/jvm/java-8-openjdk # do not fail on warning VBOX_GCC_WERR = @@ -34,3 +34,6 @@ VBOX_WITH_UPDATE_REQUEST := 0 # build shared library VBOX_GUI_WITH_SHARED_LIBRARY = 1 + +# disable experimental cloud infrastructure integration +VBOX_WITH_CLOUD_NET := @@ -5,32 +5,29 @@ pkgbase=virtualbox-svn pkgname=('virtualbox-svn' 'virtualbox-host-dkms-svn' - 'virtualbox-guest-dkms-svn' 'virtualbox-sdk-svn' 'virtualbox-guest-utils-svn' 'virtualbox-guest-utils-nox-svn' 'virtualbox-ext-vnc-svn') -pkgver=81608 -pkgrel=1 -_vboxsf_commit='87b9015c57dd7f226c768131bf8b4c0249de9835' +pkgver=102693 +_tarver=${pkgver} +pkgrel=2 arch=('x86_64') url='http://virtualbox.org' -license=('GPL' 'custom') -makedepends=('alsa-lib' - 'bin86' +license=('GPL' 'custom:CDDL') +makedepends=('subversion' + 'alsa-lib' 'cdrkit' 'curl' - 'dev86' 'device-mapper' 'git' 'glu' 'gsoap' + 'glslang' 'iasl' - 'opus' - 'jdk7-openjdk' + 'jdk8-openjdk' 'libidl2' 'libpulse' - 'libstdc++5' 'libvncserver' 'libvpx' 'libxcomposite' @@ -39,29 +36,29 @@ makedepends=('alsa-lib' 'libxml2' 'libxmu' 'libxrandr' + 'liblzf' + 'libtpms' 'libxslt' 'libxtst' 'linux-headers' 'mesa' + 'nasm' + 'opus' 'python' - 'qt5-base' - 'qt5-x11extras' - 'qt5-tools' + 'python-packaging' + 'qt6-base' + 'qt6-5compat' + 'qt6-scxml' + 'qt6-tools' 'sdl' 'sdl_ttf' 'vde2' 'xalan-c' - 'xf86driproto' + 'xorgproto' 'xorg-server-devel' - 'subversion') -makedepends_x86_64=('gcc-multilib' 'lib32-glibc') + 'yasm') source=("VirtualBox::svn+http://www.virtualbox.org/svn/vbox/trunk" - # We need to build a modified version of vboxsf for Linux 4.16 - # https://bugzilla.redhat.com/show_bug.cgi?id=1481630#c65 - "git+https://github.com/jwrdegoede/vboxsf#commit=$_vboxsf_commit" 'virtualbox-host-dkms.conf' - 'virtualbox-guest-dkms.conf' - 'virtualbox-vboxsf-dkms.conf' 'virtualbox.sysusers' 'virtualbox-guest-utils.sysusers' '60-vboxdrv.rules' @@ -69,42 +66,18 @@ source=("VirtualBox::svn+http://www.virtualbox.org/svn/vbox/trunk" 'LocalConfig.kmk' 'vboxservice.service' 'vboxservice-nox.service' + 'vboxdrmclient.path' + 'vboxdrmclient.service' 'vboxweb.service' 'vboxreload' - '005-gsoap-build.patch' - '006-rdesktop-vrdp-keymap-path.patch' + '001-disable-update.patch' + '004-drop-Wno-format.patch' '008-no-vboxvideo.patch' - '011-python-3-7.patch' + '009-properly-handle-i3wm.patch' '012-vbglR3GuestCtrlDetectPeekGetCancelSupport.patch' - '013-Makefile.patch' - '014-iasl.patch' - # The following patch and mount.vboxsf wrapper should be removed - # once support for mainline-style options string gets upstreamed - '101-vboxsf-automount.patch' - 'mount.vboxsf') -sha256sums=('SKIP' - 'SKIP' - 'deb03efa7ad0376aa55a087f2e882afe00935f10b0e7aa853ba9147090d341ec' - 'c328376b05183d269f98319ec660f54c55e298f77d229977606862b064651a7c' - 'e37712bcbbafbdee47230a962446d63b0ae882801a89931d93ad9e704e70ad4b' - '2101ebb58233bbfadf3aa74381f22f7e7e508559d2b46387114bc2d8e308554c' - 'da4c49f6ca94e047e196cdbcba2c321199f4760056ea66e0fbc659353e128c9e' - '9c5238183019f9ebc7d92a8582cad232f471eab9d3278786225abc1a1c7bf66e' - '033c597e0f5285d2ddb0490868e5b6f945f45c7b1b1152a02a9e6fea438b2c95' - '2be313b98bffde482aad93b00c419f1d5f7645fd9e6053175ffb0d925067f96a' - '94a808f46909a51b2d0cf2c6e0a6c9dea792034943e6413bf9649a036c921b21' - '01dbb921bd57a852919cc78be5b73580a564f28ebab2fe8d6c9b8301265cbfce' - 'e6e875ef186578b53106d7f6af48e426cdaf1b4e86834f01696b8ef1c685787f' - '2a9d7748dc58f9d091f791da06b733a696943114f7c0d580fa00a0752eb1d2ac' - '7d2da8fe10a90f76bbfc80ad1f55df4414f118cd10e10abfb76070326abebd46' - '13c6ca9be0f91582445fd2a14a8c58a0625a15d9cb98cb6e8c2736d77ea976ab' - '8b7f241107863f82a5b0ae336aead0b3366a40103ff72dbebf33f54b512a0cbc' - '55224cb74b54b331d691f171efc0d4c058a14f738551f1d8f559146c2908635d' - '06485dce54a5f21b85f4360db884d98c1ab091d3f2535881ec9fcd82feb06b7e' - 'da7e58ed37dc23c6202aab3017864579a99e78417f3421ddcc98a198198fe2c9' - '5ad14bd587031ac3dcadaeca2cc4d7b48a59ff09b03884b4fc2be5b1432a8237' - 'a784f3cc24652a16385cc63abac6c5178932ca5f3861be7650631b7dafa753a4' - 'f3ed6741f8977f40900c8aa372fa082df1f8723d497d4fff445153c543bc8947') + '013-support-building-from-dkms.patch' + '018-upate-xclient-script.patch') + #'020-python-3-11.patch') pkgver() { cd "VirtualBox" @@ -119,47 +92,49 @@ prepare() { local filename for filename in "${source[@]}"; do if [[ "$filename" =~ \.patch$ ]]; then - msg2 "Applying patch ${filename##*/}" + echo "Applying patch ${filename##*/}" patch -p1 -N -i "$srcdir/${filename##*/}" fi done - - msg2 'Applying local config' - cp "$srcdir/LocalConfig.kmk" . - msg2 'Use our CFLAGS' + sed -i '1 a #include<cstdint>' src/libs/dxvk-native-1.9.2a/src/util/util_bit.h + sed -i 's/xmlErrorPtr aErr/const xmlError* aErr/g' src/VBox/Runtime/r3/xml.cpp + sed -i 's/xmlErrorPtr error/const _xmlError* error/g' src/VBox/Runtime/r3/xml.cpp + sed -i 's/xmlErrorPtr aErr/const xmlError* aErr/g' include/iprt/cpp/xml.h + echo 'Applying local config' + cp "$srcdir/LocalConfig.kmk" . + + echo 'Use our CFLAGS' echo "VBOX_GCC_OPT=$CXXFLAGS" >> LocalConfig.kmk } build() { cd "VirtualBox" - msg2 'Build virtualbox' + echo 'Build virtualbox' ./configure \ --disable-docs \ - --enable-webservice \ + --disable-kmods \ + --disable-vmmraw \ --enable-vde \ --enable-vnc \ - --disable-kmods \ + --enable-webservice \ --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.4 - - msg2 'Build VNC extension pack' + echo 'Build VNC extension pack' kmk -C src/VBox/ExtPacks/VNC packing } package_virtualbox-svn() { pkgdesc='Powerful x86 virtualization for enterprise as well as home use' - depends=('glibc' 'openssl' 'curl' 'gcc-libs' 'libpng' 'python' 'sdl' - 'libvpx' 'libxml2' 'procps-ng' 'shared-mime-info' 'zlib' - 'libxcursor' 'libxinerama' 'libx11' 'libxext' 'libxmu' 'libxt' - 'opus' 'desktop-file-utils' 'hicolor-icon-theme' 'qt5-base' 'qt5-x11extras' 'VIRTUALBOX-HOST-MODULES-SVN') + depends=('curl' 'gcc-libs' 'glibc' 'liblzf' 'libpng' 'libtpms' 'libvpx' 'libx11' 'libxcursor' + 'libxext' 'libxinerama' 'libxml2' 'libxmu' 'libxt' 'openssl' 'procps-ng' 'python' + 'qt6-base' 'qt6-tools' 'qt6-5compat' 'sdl' 'shared-mime-info' 'zlib' 'qt6-scxml' + 'VIRTUALBOX-HOST-MODULES-SVN') optdepends=('vde2: Virtual Distributed Ethernet support' 'virtualbox-guest-iso: Guest Additions CD image' 'virtualbox-ext-vnc: VNC server support' @@ -168,33 +143,31 @@ package_virtualbox-svn() { provides=('virtualbox') replaces=('virtualbox-ose') conflicts=('virtualbox-ose' 'virtualbox') - install=virtualbox.install source "VirtualBox/env.sh" cd "VirtualBox/out/linux.$BUILD_PLATFORM_ARCH/release/bin" - # binaries - install -dm0755 "$pkgdir/usr/bin" - install -m0755 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 -m0755 VBoxTunctl "$pkgdir/usr/bin" - install -m0755 rdesktop-vrdp "$pkgdir/usr/bin" - - # libraries - install -dm0755 "$pkgdir/usr/lib/virtualbox" - install -m0755 *.so "$pkgdir/usr/lib/virtualbox" - install -m0644 *.r0 VBoxEFI*.fd "$pkgdir/usr/lib/virtualbox" + # libraries (and non-PATH executables) + install -d -m0755 "${pkgdir}/usr/lib/virtualbox" + install -m0755 *.so -t "${pkgdir}/usr/lib/virtualbox" + install -m0644 *.r0 VBoxEFI*.fd -t "${pkgdir}/usr/lib/virtualbox" ## setuid root binaries - install -m4755 VBoxSDL VirtualBoxVM VBoxHeadless VBoxNetDHCP VBoxNetAdpCtl VBoxNetNAT -t "$pkgdir/usr/lib/virtualbox" + install -m4755 VirtualBoxVM VBoxHeadless VBoxNetAdpCtl VBoxNetDHCP VBoxNetNAT -t "${pkgdir}/usr/lib/virtualbox" ## other binaries - install -m0755 VirtualBox VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL VBoxBalloonCtrl vboxwebsrv webtest -t "$pkgdir/usr/lib/virtualbox" + install -m0755 VirtualBox VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxBalloonCtrl vboximg-mount vboxwebsrv webtest -t "${pkgdir}/usr/lib/virtualbox" + + # binaries (in /usr/bin) + install -d -m0755 "${pkgdir}/usr/bin" + install -m0755 VBox.sh "${pkgdir}/usr/bin/VBox" + for i in VirtualBox VirtualBoxVM VBoxManage VBoxHeadless VBoxBugReport VBoxBalloonCtrl VBoxAutostart vboxwebsrv; do + ln -sf VBox "${pkgdir}/usr/bin/${i}" + ln -sf VBox "${pkgdir}/usr/bin/${i,,}" + done + for i in vboximg-mount; do + ln -s ../lib/virtualbox/"${i}" "${pkgdir}/usr/bin/${i}" + done # components - # [heavysink] Temporary remove non-existent symlink VBoxREM.so - rm components/VBoxREM.so install -dm0755 "$pkgdir/usr/lib/virtualbox/components" install -m0755 components/* -t "$pkgdir/usr/lib/virtualbox/components" @@ -211,10 +184,6 @@ package_virtualbox-svn() { install -dm0755 "$pkgdir/usr/share/virtualbox/nls" install -m0755 nls/*.qm -t "$pkgdir/usr/share/virtualbox/nls" - # rdesktop keymaps - install -dm0755 "$pkgdir/usr/share/virtualbox/rdesktop-vrdp-keymaps" - install -m0644 rdesktop-vrdp-keymaps/* "$pkgdir/usr/share/virtualbox/rdesktop-vrdp-keymaps" - # useless scripts install -m0755 VBoxCreateUSBNode.sh VBoxSysInfo.sh -t "$pkgdir/usr/share/virtualbox" @@ -241,7 +210,8 @@ package_virtualbox-svn() { #licence install -Dm0644 VirtualBox/COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" - + install -D -m0644 VirtualBox/COPYING.CDDL "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL" + # install systemd stuff install -Dm0644 60-vboxdrv.rules "$pkgdir/usr/lib/udev/rules.d/60-vboxdrv.rules" install -Dm0644 vboxweb.service "$pkgdir/usr/lib/systemd/system/vboxweb.service" @@ -273,6 +243,8 @@ package_virtualbox-sdk-svn() { # licence install -Dm0644 "$srcdir/VirtualBox/COPYING" \ "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + install -D -m0644 "${srcdir}/VirtualBox/COPYING.CDDL" \ + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL" } package_virtualbox-host-dkms-svn() { @@ -283,9 +255,6 @@ package_virtualbox-host-dkms-svn() { 'virtualbox-host-modules-lts') conflicts=('virtualbox-source' 'virtualbox-host-source' 'virtualbox-host-dkms') provides=('VIRTUALBOX-HOST-MODULES-SVN') - 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 -dm0755 "$pkgdir/usr/src" @@ -295,97 +264,59 @@ package_virtualbox-host-dkms-svn() { # licence install -Dm0644 "$srcdir/VirtualBox/COPYING" \ "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + install -D -m0644 "${srcdir}/VirtualBox/COPYING.CDDL" \ + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL" # module loading local _p="$pkgdir/usr/lib/modules-load.d/virtualbox-host-dkms.conf" install -Dm0644 /dev/null "$_p" - printf "vboxdrv\nvboxpci\nvboxnetadp\nvboxnetflt\n" > "$_p" + printf "vboxdrv\nvboxnetadp\nvboxnetflt\n" > "$_p" # starting vbox 5.1, dkms.conf file was dropped local _p="$pkgdir/usr/src/vboxhost-svn_OSE/dkms.conf" install -Dm0644 "$srcdir/virtualbox-host-dkms.conf" "$_p" sed -i "s,@VERSION@,svn," "$_p" } -package_virtualbox-guest-dkms-svn() { - pkgdesc='VirtualBox Guest kernel modules sources' - depends=('dkms' 'gcc' 'make') - replaces=('virtualbox-archlinux-source' - 'virtualbox-guest-source' - 'virtualbox-guest-modules-lts') - provides=('VIRTUALBOX-GUEST-MODULES-SVN') - 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 -dm0755 "$pkgdir/usr/src" - source "VirtualBox/env.sh" - cd "VirtualBox/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" - cp -r src "$pkgdir/usr/src/vboxguest-svn_OSE" - # licence - install -Dm0644 "$srcdir/VirtualBox/COPYING" \ - "$pkgdir/usr/share/licenses/$pkgname/LICENSE" - # module loading - local _p="$pkgdir/usr/lib/modules-load.d/virtualbox-guest-dkms.conf" - install -Dm0644 /dev/null "$_p" - printf "vboxguest\nvboxsf\nvboxvideo\n" > "$_p" - # starting vbox 5.1, dkms.conf file was dropped - local _p="$pkgdir/usr/src/vboxguest-svn_OSE/dkms.conf" - install -Dm0644 "$srcdir/virtualbox-guest-dkms.conf" "$_p" - sed -i "s,@VERSION@,svn," "$_p" - - # vboxsf module for Linux 4.16 and later - install -d "$pkgdir/usr/src/vboxsf-svn_OSE" - cp -rT "$srcdir/vboxsf" "$pkgdir/usr/src/vboxsf-svn_OSE/vboxsf" - rm -rf "$pkgdir/usr/src/vboxsf-svn_OSE/vboxsf/.git" - echo "obj-m = vboxsf/" >"$pkgdir/usr/src/vboxsf-svn_OSE/Makefile" - local _p="$pkgdir/usr/src/vboxsf-svn_OSE/dkms.conf" - install -Dm0644 "$srcdir/virtualbox-vboxsf-dkms.conf" "$_p" - sed -i "s,@VERSION@,svn," "$_p" -} - package_virtualbox-guest-utils-svn() { pkgdesc='VirtualBox Guest userspace utilities' depends=('glibc' 'pam' 'libx11' 'libxcomposite' - 'libxdamage' 'libxrandr' 'libxext' 'libxfixes' 'libxmu' 'libxt' 'xorg-xrandr' - 'VIRTUALBOX-GUEST-MODULES-SVN') - replaces=('virtualbox-archlinux-additions' 'virtualbox-guest-additions') + 'libxdamage' 'libxext' 'libxfixes' 'libxmu' 'libxt' 'xorg-xrandr' + 'xf86-video-vmware' 'VIRTUALBOX-GUEST-MODULES') + replaces=('virtualbox-archlinux-additions' 'virtualbox-guest-additions' 'virtualbox-guest-dkms-svn') provides=('virtualbox-guest-utils') - conflicts=('virtualbox-archlinux-additions' 'virtualbox-guest-additions' 'virtualbox-guest-utils-nox' 'virtualbox-guest-utils') + conflicts=('virtualbox-archlinux-additions' 'virtualbox-guest-additions' 'virtualbox-guest-utils-nox' 'virtualbox-guest-utils' 'virtualbox-guest-dkms' 'virtualbox-guest-dkms-svn') source "VirtualBox/env.sh" pushd "VirtualBox/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" install -d "$pkgdir/usr/bin" - install -m0755 VBoxClient VBoxControl VBoxService "$srcdir/mount.vboxsf" "$pkgdir/usr/bin" - install -Dm0755 mount.vboxsf "$pkgdir/usr/lib/virtualbox/mount.vboxsf" + install -m0755 VBoxClient VBoxControl VBoxDRMClient VBoxService "$pkgdir/usr/bin" install -m0755 -D "$srcdir"/VirtualBox/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ "$pkgdir"/usr/bin/VBoxClient-all install -m0644 -D "$srcdir"/VirtualBox/src/VBox/Additions/x11/Installer/vboxclient.desktop \ "$pkgdir"/etc/xdg/autostart/vboxclient.desktop - install -d "$pkgdir/usr/lib/xorg/modules/dri" - #install -m0755 VBoxOGL*.so "$pkgdir/usr/lib" - #ln -s /usr/lib/VBoxOGL.so "$pkgdir/usr/lib/xorg/modules/dri/vboxvideo_dri.so" install -m0755 -D pam_vbox.so "$pkgdir/usr/lib/security/pam_vbox.so" popd # systemd stuff install -Dm0644 60-vboxguest.rules "$pkgdir/usr/lib/udev/rules.d/60-vboxguest.rules" + install -Dm0644 vboxdrmclient.path "$pkgdir/usr/lib/systemd/system/vboxdrmclient.path" + install -Dm0644 vboxdrmclient.service "$pkgdir/usr/lib/systemd/system/vboxdrmclient.service" install -Dm0644 vboxservice.service "$pkgdir/usr/lib/systemd/system/vboxservice.service" install -Dm0644 virtualbox-guest-utils.sysusers "$pkgdir/usr/lib/sysusers.d/virtualbox-guest-utils.conf" # licence install -Dm0644 VirtualBox/COPYING "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + install -Dm0644 VirtualBox/COPYING.CDDL "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL" } package_virtualbox-guest-utils-nox-svn() { pkgdesc='VirtualBox Guest userspace utilities without X support' - depends=('glibc' 'pam' 'VIRTUALBOX-GUEST-MODULES-SVN') + depends=('glibc' 'pam' 'VIRTUALBOX-GUEST-MODULES') + replaces=('virtualbox-guest-dkms-svn') provides=('virtualbox-guest-utils-nox') - conflicts=('virtualbox-guest-utils' 'virtualbox-guest-utils-nox') + conflicts=('virtualbox-guest-utils' 'virtualbox-guest-utils-nox' 'virtualbox-guest-dkms' 'virtualbox-guest-dkms-svn') source "VirtualBox/env.sh" pushd "VirtualBox/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions" install -d "$pkgdir/usr/bin" - install -m0755 VBoxControl VBoxService "$srcdir/mount.vboxsf" "$pkgdir/usr/bin" - install -Dm0755 mount.vboxsf "$pkgdir/usr/lib/virtualbox/mount.vboxsf" + install -m0755 VBoxControl VBoxService "$pkgdir/usr/bin" install -m0755 -D pam_vbox.so "$pkgdir/usr/lib/security/pam_vbox.so" popd # systemd stuff @@ -395,6 +326,8 @@ package_virtualbox-guest-utils-nox-svn() { # licence install -Dm0644 "$srcdir/VirtualBox/COPYING" \ "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + install -Dm0644 "${srcdir}/VirtualBox/COPYING.CDDL" \ + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL" } package_virtualbox-ext-vnc-svn() { @@ -411,6 +344,26 @@ package_virtualbox-ext-vnc-svn() { # licence install -Dm0644 "$srcdir/VirtualBox/COPYING" \ "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + install -Dm0644 "${srcdir}/VirtualBox/COPYING.CDDL" \ + "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.CDDL" } - -# vim:set ts=4 sw=4 et: +sha256sums=('SKIP' + '76d98ea062fcad9e5e3fa981d046a6eb12a3e718a296544a68b66f4b65cb56db' + '2101ebb58233bbfadf3aa74381f22f7e7e508559d2b46387114bc2d8e308554c' + 'da4c49f6ca94e047e196cdbcba2c321199f4760056ea66e0fbc659353e128c9e' + '9c5238183019f9ebc7d92a8582cad232f471eab9d3278786225abc1a1c7bf66e' + '033c597e0f5285d2ddb0490868e5b6f945f45c7b1b1152a02a9e6fea438b2c95' + '3cf42bc6e9e55fd2cb6be7b89c5b98d0f6a2eff6125a9ee7efafaabc35f1de22' + 'c41a801fe344a4471a7b61a4764d1d857c403e4fb96e2ba6bc89c77a35f2be7a' + '01dbb921bd57a852919cc78be5b73580a564f28ebab2fe8d6c9b8301265cbfce' + '83d8f24bff25bb925083cf39b3195236c6136105e62417712cc3f25b92e14b47' + '2beab8de525220fa418c9873f9e0d657ddbad4ff9e4a46d7053e6cd9bc4ce95e' + 'e6e875ef186578b53106d7f6af48e426cdaf1b4e86834f01696b8ef1c685787f' + '4001b5927348fe669a541e80526d4f9ea91b883805f102f7d571edbb482a9b9d' + '9ee947c9b5ec5b25f52d3e72340fc3a57ca6e65a604e15b669ac582a3fb0dc1b' + 'ccebd3213f1888c8f8c090392b527b8cc61f0d57e58c49a634486bf44b556299' + '053bfeee8863f3ffdf2f0e3f9f0d77dc61dd32764700a97a7635fd8611e20491' + '5c4b237839a52a18b39d996b37de9d2f9d0ee621c162956cf4424122429094d3' + '81900e13d36630488accd8c0bfd2ceb69563fb2c4f0f171caba1cca59d438024' + '00f68b86d32a1fada900c2da8dad2ab4215106cd58004f049bded99727cda2ff' + 'b6193d22ee7c1726ea4d468b18640454b8e4f2784479073a0044e45dca4e516d') diff --git a/vboxdrmclient.path b/vboxdrmclient.path new file mode 100644 index 000000000000..e1cf64de8ffe --- /dev/null +++ b/vboxdrmclient.path @@ -0,0 +1,6 @@ +[Unit] +Description=VirtualBox Guest VMSVGA resize client +ConditionVirtualization=oracle + +[Path] +PathExistsGlob=/dev/dri/renderD* diff --git a/vboxdrmclient.service b/vboxdrmclient.service new file mode 100644 index 000000000000..be43d66b39cd --- /dev/null +++ b/vboxdrmclient.service @@ -0,0 +1,7 @@ +[Unit] +Description=VirtualBox Guest VMSVGA resize client +ConditionVirtualization=oracle +ConditionPathExistsGlob=/dev/dri/renderD* + +[Service] +ExecStart=/usr/bin/VBoxDRMClient diff --git a/vboxreload b/vboxreload index 04b6e7b9e381..d21aa627fc4f 100755 --- a/vboxreload +++ b/vboxreload @@ -20,7 +20,7 @@ (( UID > 0 )) && { echo 'You must be root' >&2; exit 1; } -modules=(vboxnetadp vboxnetflt vboxpci vboxdrv) +modules=(vboxnetadp vboxnetflt vboxdrv) echo -n 'Unloading modules: ' for _m in "${modules[@]}"; do diff --git a/vboxservice.service b/vboxservice.service index 7e0c87f0b5fa..50749fea144a 100644 --- a/vboxservice.service +++ b/vboxservice.service @@ -1,6 +1,7 @@ [Unit] Description=VirtualBox Guest Service ConditionVirtualization=oracle +Wants=vboxdrmclient.path [Service] ExecStartPre=-/usr/bin/modprobe vboxguest diff --git a/virtualbox-ext-vnc.install b/virtualbox-ext-vnc.install index d0f188a769aa..7dc3cedbcb80 100644 --- a/virtualbox-ext-vnc.install +++ b/virtualbox-ext-vnc.install @@ -2,7 +2,7 @@ # arg 1: the new package version post_install() { - EXTPACK="/usr/share/virtualbox/extensions/VNC-${1%%-*}.vbox-extpack" + EXTPACK="/usr/share/virtualbox/extensions/VNC-svn.vbox-extpack" ACCEPT="$(bsdtar --to-stdout -xf "${EXTPACK}" ./ExtPack-license.txt | sha256sum | head --bytes=64)" VBoxManage extpack install "${EXTPACK}" --accept-license="${ACCEPT}" >/dev/null } diff --git a/virtualbox-guest-dkms.conf b/virtualbox-guest-dkms.conf deleted file mode 100644 index 334dac6e644d..000000000000 --- a/virtualbox-guest-dkms.conf +++ /dev/null @@ -1,34 +0,0 @@ -## @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 - -# Build only for kernels before Linux 4.16 -BUILD_EXCLUSIVE_KERNEL="^(4\.[0-9]\..*|4\.1[0-5]\..*|3\..*)" - -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-host-dkms.conf b/virtualbox-host-dkms.conf index a8b41bf40027..403bb39d088a 100644 --- a/virtualbox-host-dkms.conf +++ b/virtualbox-host-dkms.conf @@ -29,7 +29,3 @@ 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-vboxsf-dkms.conf b/virtualbox-vboxsf-dkms.conf index c1f43b3469f0..4b1083fa3740 100644 --- a/virtualbox-vboxsf-dkms.conf +++ b/virtualbox-vboxsf-dkms.conf @@ -3,7 +3,7 @@ PACKAGE_VERSION=@VERSION@_OSE AUTOINSTALL=yes # Build only for Linux 4.16 and later (until it gets upstreamed...) -BUILD_EXCLUSIVE_KERNEL="^(4\.(1[6-9]|2[0-9])\..*|5\..*)" +BUILD_EXCLUSIVE_KERNEL="^(4\.(1[6-9]|2[0-9])\..*|5\.[0-5]\..*)" BUILT_MODULE_NAME[0]="vboxsf" BUILT_MODULE_LOCATION[0]="vboxsf" |