1
0
forked from jengelh/virtualbox

17 Commits

Author SHA256 Message Date
abbfbbe45c virtualbox 7.2.0 2025-08-15 16:48:07 +02:00
070bdf0829 virtualbox 7.1.12 2025-07-25 11:16:45 +02:00
Jiri Slaby
c76e78822d fix 6.16 2025-06-11 09:18:48 +02:00
652f6fa07d virtualbox 7.1.10 2025-06-04 23:40:18 +02:00
Martin Jambor
7e94d2ce18 - Adjust gentoo-C23.patch to fix building the kmp flavor which was
broken by the previous patch by keeping the bool typedef when
  building a kmp. [boo#1242085]
2025-06-03 18:37:28 +02:00
Martin Jambor
55b005b5e1 Fix building with GCC 15 [boo#1242085] 2025-05-27 17:24:09 +02:00
1884bc52cd virtualbox 7.1.8 2025-04-16 16:10:12 +02:00
Jiri Slaby
2fd8480f9b build against kernel 6.15 2025-04-10 08:24:39 +02:00
Jiri Slaby
d15b82c929 add tpxz to LFS files too 2025-04-09 09:30:02 +02:00
99680a1c79 Add logic to do a Python-less build 2025-03-31 13:09:47 +02:00
324117a110 Delete kernel-6-13.patch 2025-03-31 12:44:49 +02:00
1738776d98 virtualbox 7.1.6a 2025-03-28 11:07:32 +01:00
6f94c78476 virtualbox 7.1.6 2025-03-28 10:47:34 +01:00
fad76b07e8 Set +x bit on .sh 2025-03-28 10:45:59 +01:00
Jiri Slaby
4b46adddab Fix for kernel 6.14 2025-03-28 07:47:54 +01:00
c69449fd8a Use specific python version, not python3 2025-02-24 11:53:00 +01:00
26a839baae Update findings for newer-pythons.patch 2025-02-24 11:52:47 +01:00
18 changed files with 238 additions and 92 deletions

1
.gitattributes vendored
View File

@@ -15,6 +15,7 @@
*.tbz filter=lfs diff=lfs merge=lfs -text *.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text *.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text *.tgz filter=lfs diff=lfs merge=lfs -text
*.tpxz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text *.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text *.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text *.whl filter=lfs diff=lfs merge=lfs -text

Binary file not shown.

BIN
VirtualBox-7.2.0-patched.tpxz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@@ -1,8 +1,13 @@
Index: VirtualBox-7.0.20/configure ---
configure | 17 ++++++-----------
src/VBox/Frontends/VBoxSDL/Makefile.kmk | 8 ++++----
2 files changed, 10 insertions(+), 15 deletions(-)
Index: VirtualBox-7.2.0/configure
=================================================================== ===================================================================
--- VirtualBox-7.0.20.orig/configure --- VirtualBox-7.2.0.orig/configure
+++ VirtualBox-7.0.20/configure +++ VirtualBox-7.2.0/configure
@@ -1186,21 +1186,19 @@ check_sdl() @@ -1150,21 +1150,19 @@ check_sdl()
fail fail
fi fi
else else
@@ -27,7 +32,7 @@ Index: VirtualBox-7.0.20/configure
#undef main #undef main
extern "C" int main(int argc, char** argv) extern "C" int main(int argc, char** argv)
{ {
@@ -1216,7 +1214,7 @@ extern "C" int main(int argc, char** arg @@ -1180,7 +1178,7 @@ extern "C" int main(int argc, char** arg
} }
EOF EOF
[ -n "$INCSDL" ] && I_INCSDL=`prefix_I "$INCSDL"` [ -n "$INCSDL" ] && I_INCSDL=`prefix_I "$INCSDL"`
@@ -36,7 +41,7 @@ Index: VirtualBox-7.0.20/configure
if test_execute; then if test_execute; then
cnf_append "LIB_SDK_LIBSDL_SDL" "`strip_l "$LIBSDL"`" cnf_append "LIB_SDK_LIBSDL_SDL" "`strip_l "$LIBSDL"`"
cnf_append "SDK_LIBSDL_LIBPATH" "`strip_L "$LIBSDL"`" cnf_append "SDK_LIBSDL_LIBPATH" "`strip_L "$LIBSDL"`"
@@ -3010,11 +3008,8 @@ if [ $ONLY_ADDITIONS -eq 0 ]; then @@ -2960,11 +2958,8 @@ if [ $ONLY_ADDITIONS -eq 0 ]; then
[ $WITH_LIBLZMA -eq 1 ] && check_liblzma [ $WITH_LIBLZMA -eq 1 ] && check_liblzma
[ "$OS" != "darwin" ] && check_png [ "$OS" != "darwin" ] && check_png
[ $OSE -eq 0 -a "$OS" = "linux" ] && check_pam [ $OSE -eq 0 -a "$OS" = "linux" ] && check_pam
@@ -50,20 +55,20 @@ Index: VirtualBox-7.0.20/configure
[ $WITH_SDL_TTF -eq 1 -a $OSE -eq 0 ] && check_sdl_ttf [ $WITH_SDL_TTF -eq 1 -a $OSE -eq 0 ] && check_sdl_ttf
[ $WITH_X11 -eq 1 ] && check_x [ $WITH_X11 -eq 1 ] && check_x
# TODO check for xcomposite-dev (X11/extensions/Xcomposite.h, additions only) # TODO check for xcomposite-dev (X11/extensions/Xcomposite.h, additions only)
Index: VirtualBox-7.0.20/src/VBox/Frontends/VBoxSDL/Makefile.kmk Index: VirtualBox-7.2.0/src/VBox/Frontends/VBoxSDL/Makefile.kmk
=================================================================== ===================================================================
--- VirtualBox-7.0.20.orig/src/VBox/Frontends/VBoxSDL/Makefile.kmk --- VirtualBox-7.2.0.orig/src/VBox/Frontends/VBoxSDL/Makefile.kmk
+++ VirtualBox-7.0.20/src/VBox/Frontends/VBoxSDL/Makefile.kmk +++ VirtualBox-7.2.0/src/VBox/Frontends/VBoxSDL/Makefile.kmk
@@ -51,7 +51,7 @@ if !defined(VBOX_WITH_HARDENING) || "$(K @@ -51,7 +51,7 @@ if !defined(VBOX_WITH_HARDENING) || "$(K
PROGRAMS += VBoxSDL PROGRAMS += VBoxSDL
endif endif
VBoxSDL_TEMPLATE := $(if $(VBOX_WITH_HARDENING),VBoxMainClientDll,VBoxMainClientExe) VBoxSDL_TEMPLATE := $(if $(VBOX_WITH_HARDENING),VBoxMainClientDll,VBoxMainClientSignedExe)
- VBoxSDL_SDKS = LIBSDL2 - VBoxSDL_SDKS = LIBSDL2
+ VBoxSDL_SDKS = LIBSDL + VBoxSDL_SDKS = LIBSDL
VBoxSDL_SOURCES = \ VBoxSDL_SOURCES = \
VBoxSDL.cpp \ VBoxSDL.cpp \
Framebuffer.cpp \ Framebuffer.cpp \
@@ -81,7 +81,7 @@ if !defined(VBOX_WITH_HARDENING) || "$(K @@ -78,7 +78,7 @@ if !defined(VBOX_WITH_HARDENING) || "$(K
endif endif
ifn1of ($(KBUILD_TARGET), solaris) # Probably wrong with SDL2 ifn1of ($(KBUILD_TARGET), solaris) # Probably wrong with SDL2
VBoxSDL_LIBS = \ VBoxSDL_LIBS = \
@@ -72,7 +77,7 @@ Index: VirtualBox-7.0.20/src/VBox/Frontends/VBoxSDL/Makefile.kmk
endif endif
if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris) # X11 if1of ($(KBUILD_TARGET), freebsd linux netbsd openbsd solaris) # X11
VBoxSDL_LIBS += \ VBoxSDL_LIBS += \
@@ -121,7 +121,7 @@ if !defined(VBOX_WITH_HARDENING) || "$(K @@ -116,7 +116,7 @@ if !defined(VBOX_WITH_HARDENING) || "$(K
if 0 if 0
PROGRAMS += tstSDL PROGRAMS += tstSDL
tstSDL_TEMPLATE = VBoxR3TstExe tstSDL_TEMPLATE = VBoxR3TstExe
@@ -81,7 +86,7 @@ Index: VirtualBox-7.0.20/src/VBox/Frontends/VBoxSDL/Makefile.kmk
tstSDL_INST = $(INST_TESTCASE) tstSDL_INST = $(INST_TESTCASE)
tstSDL_SOURCES = \ tstSDL_SOURCES = \
VBoxSDLTest.cpp VBoxSDLTest.cpp
@@ -138,7 +138,7 @@ if !defined(VBOX_WITH_HARDENING) || "$(K @@ -131,7 +131,7 @@ if !defined(VBOX_WITH_HARDENING) || "$(K
$(LIB_RUNTIME) $(LIB_RUNTIME)
ifn1of ($(KBUILD_TARGET), solaris) ifn1of ($(KBUILD_TARGET), solaris)
tstSDL_LIBS += \ tstSDL_LIBS += \

0
fix_usb_rules.sh Normal file → Executable file
View File

16
gentoo-C23.patch Normal file
View File

@@ -0,0 +1,16 @@
https://bugs.gentoo.org/946955
--- a/include/iprt/types.h
+++ b/include/iprt/types.h
@@ -282,7 +282,10 @@
# endif
# else
-# undef bool /* see above netbsd explanation */
+# if defined (__KERNEL__)
typedef _Bool bool;
+# else
+# include <stdbool.h>
+# endif
# endif
# else
# if RT_MSC_PREREQ(RT_MSC_VER_VC120)

View File

@@ -1,32 +0,0 @@
From: Jiri Slaby <jslaby@suse.cz>
Subject: fix for kernel 6.13 build
References: bsc#1235146
---
src/VBox/Additions/linux/drm/vbox_drv.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
--- a/src/VBox/Additions/linux/drm/vbox_drv.c
+++ b/src/VBox/Additions/linux/drm/vbox_drv.c
@@ -43,7 +43,9 @@
# include <drm/drm_probe_helper.h>
#endif
-#if RTLNX_VER_MIN(5,14,0) || RTLNX_RHEL_RANGE(8,6, 8,99)
+#if RTLNX_VER_MIN(6,13,0)
+# include <linux/aperture.h>
+#elif RTLNX_VER_MIN(5,14,0) || RTLNX_RHEL_RANGE(8,6, 8,99)
# include <drm/drm_aperture.h>
#endif
@@ -85,7 +87,9 @@ static int vbox_pci_probe(struct pci_dev
int ret = 0;
# if RTLNX_VER_MIN(5,14,0) || RTLNX_RHEL_RANGE(8,6, 8,99)
-# if RTLNX_VER_MIN(5,15,0) || RTLNX_RHEL_RANGE(8,7, 8,99) || RTLNX_RHEL_MIN(9,1) || RTLNX_SUSE_MAJ_PREREQ(15,4)
+# if RTLNX_VER_MIN(6,13,0)
+ ret = aperture_remove_conflicting_pci_devices(pdev, driver.name);
+# elif RTLNX_VER_MIN(5,15,0) || RTLNX_RHEL_RANGE(8,7, 8,99) || RTLNX_RHEL_MIN(9,1) || RTLNX_SUSE_MAJ_PREREQ(15,4)
ret = drm_aperture_remove_conflicting_pci_framebuffers(pdev, &driver);
# else
ret = drm_aperture_remove_conflicting_pci_framebuffers(pdev, "vboxvideofb");

0
update-extpack.sh Normal file → Executable file
View File

View File

@@ -1,19 +1,25 @@
Index: VirtualBox-7.0.20/src/apps/Makefile.kmk ---
src/apps/Makefile.kmk | 2
src/apps/VBoxPermissionMessage/Makefile.kmk | 32 +++++++++++++++
src/apps/VBoxPermissionMessage/VBoxPermissionMessage.cpp | 12 +++++
3 files changed, 46 insertions(+)
Index: VirtualBox-7.2.0/src/apps/Makefile.kmk
=================================================================== ===================================================================
--- VirtualBox-7.0.20.orig/src/apps/Makefile.kmk --- VirtualBox-7.2.0.orig/src/apps/Makefile.kmk
+++ VirtualBox-7.0.20/src/apps/Makefile.kmk +++ VirtualBox-7.2.0/src/apps/Makefile.kmk
@@ -28,5 +28,7 @@ @@ -33,5 +33,7 @@ ifneq ($(KBUILD_TARGET),win)
SUB_DEPTH = ../.. include $(PATH_SUB_CURRENT)/svn2git-vbox/Makefile.kmk
include $(KBUILD_PATH)/subheader.kmk endif
+include $(PATH_SUB_CURRENT)/VBoxPermissionMessage/Makefile.kmk +include $(PATH_SUB_CURRENT)/VBoxPermissionMessage/Makefile.kmk
+ +
include $(FILE_KBUILD_SUB_FOOTER) include $(FILE_KBUILD_SUB_FOOTER)
Index: VirtualBox-7.0.20/src/apps/VBoxPermissionMessage/Makefile.kmk Index: VirtualBox-7.2.0/src/apps/VBoxPermissionMessage/Makefile.kmk
=================================================================== ===================================================================
--- /dev/null --- /dev/null
+++ VirtualBox-7.0.20/src/apps/VBoxPermissionMessage/Makefile.kmk +++ VirtualBox-7.2.0/src/apps/VBoxPermissionMessage/Makefile.kmk
@@ -0,0 +1,32 @@ @@ -0,0 +1,32 @@
+# $Id: Makefile.kmk 28800 2010-04-27 08:22:32Z vboxsync $ +# $Id: Makefile.kmk 28800 2010-04-27 08:22:32Z vboxsync $
+## @file +## @file
@@ -47,10 +53,10 @@ Index: VirtualBox-7.0.20/src/apps/VBoxPermissionMessage/Makefile.kmk
+ +
+include $(KBUILD_PATH)/subfooter.kmk +include $(KBUILD_PATH)/subfooter.kmk
+ +
Index: VirtualBox-7.0.20/src/apps/VBoxPermissionMessage/VBoxPermissionMessage.cpp Index: VirtualBox-7.2.0/src/apps/VBoxPermissionMessage/VBoxPermissionMessage.cpp
=================================================================== ===================================================================
--- /dev/null --- /dev/null
+++ VirtualBox-7.0.20/src/apps/VBoxPermissionMessage/VBoxPermissionMessage.cpp +++ VirtualBox-7.2.0/src/apps/VBoxPermissionMessage/VBoxPermissionMessage.cpp
@@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
+#include <QtWidgets/QApplication> +#include <QtWidgets/QApplication>
+#include <QtWidgets/QMessageBox> +#include <QtWidgets/QMessageBox>

0
vboxautostart-service.sh Normal file → Executable file
View File

0
vboxconfig.sh Normal file → Executable file
View File

0
vboxdrv.sh Normal file → Executable file
View File

0
vboxguestconfig.sh Normal file → Executable file
View File

0
vboxweb-service.sh Normal file → Executable file
View File

2
virtualbox-patch-source.sh Normal file → Executable file
View File

@@ -1,4 +1,4 @@
#!/bin/bash #!/bin/bash -ex
if [ -z "$1" ]; then if [ -z "$1" ]; then
echo "You need to pass the filename VirtualBox-x.y.z.tar.bz2 as first argument." echo "You need to pass the filename VirtualBox-x.y.z.tar.bz2 as first argument."

0
virtualbox-wrapper.sh Normal file → Executable file
View File

View File

@@ -1,3 +1,124 @@
-------------------------------------------------------------------
Fri Aug 15 14:46:51 UTC 2025 - Jan Engelhardt <jengelh@inai.de>
- Update to release 7.2.0
* GUI: Moved global and VM tools from hamburger menus to global
tools taskbar (vertically on the left) and the VM tools tabs
(horizontally above the right hand panel) to make them easier
to reach.
* ARM host: Virtualization of Windows 11/ARM VMs.
* Linux host: Video decoding acceleration when 3D is enabled.
* Storage: The NVMe storage controller emulation is now part of
the open source base package.
-------------------------------------------------------------------
Thu Jul 24 13:07:21 UTC 2025 - Jan Engelhardt <jengelh@inai.de>
- Update to release 7.1.12
* VMM: Fixed issue when running a nested VM caused Guru
Meditation for outer VM
* NAT: Fixed issue when VMs with long names were unable to start
* Linux host: Fixed possible kernel panic when using bridged
networking with a network interface handled by the ixgbe
driver on newer kernels
* Recording: Fixed issue when Windows Guest Machine was unable
to start when recording was enabled in Display Settings
* Support for Linux 6.16
* Linux Guest Additions (LGA): Fixed issue when 'rcvboxadd
status-kernel' was reporting incorrect status when guest was
running kernel 3.10 series and older
* LGA: Fixed issue when VBoxClient was unable to start if guest
was running kernel 2.6 series and older
* LGA: Fixed issue which caused a warning in system log due to
incorrect udev rule
- Delete kernel-6.16-READ-WRITE.patch, kernel-6.16-from_timer.patch,
kernel-6.16-page-index.patch
-------------------------------------------------------------------
Wed Jun 11 07:18:15 UTC 2025 - Jiri Slaby <jslaby@suse.cz>
- fix build against 6.16, add:
* kernel-6.16-READ-WRITE.patch
* kernel-6.16-from_timer.patch
* kernel-6.16-page-index.patch
-------------------------------------------------------------------
Wed Jun 4 21:09:42 UTC 2025 - Jan Engelhardt <jengelh@inai.de>
- Update to release 7.1.10
* Linux host: Fixed issue which caused VM Selector process crash
due to missing libdl.so and libpthread.so libraries
[boo#1231346, boo#1231456, boo#1233145, boo#1233164,
boo#1233498, boo#1240833]
* RDP: Fixed issue when it was not possible to paste clipboard
buffer into a guest over RDP remote session
* Linux 6.15 support
- Delete kernel-6-15-EXTRA_CFLAGS.patch kernel-6-15-fb_probe.patch
kernel-6-15-mkdir.patch kernel-6-15-mode_valid.patch
kernel-6-15-timer.patch (merged/obsolete)
-------------------------------------------------------------------
Tue Jun 3 16:34:33 UTC 2025 - Martin Jambor <mjambor@suse.com>
- Adjust gentoo-C23.patch to fix building the kmp flavor which was
broken by the previous patch by keeping the bool typedef when
building a kmp. [boo#1242085]
-------------------------------------------------------------------
Tue May 27 15:19:29 UTC 2025 - Martin Jambor <mjambor@suse.cz>
- Add gentoo-C23.patch, taken from the corresponding gentoo
package, to fix building with GCC 15 where the C language
defaults to standard C23. [boo#1242085]
-------------------------------------------------------------------
Wed Apr 16 13:59:59 UTC 2025 - Jan Engelhardt <jengelh@inai.de>
- Update to release 7.1.8
* VMM: Fixed issue when VM clock went backwards in rare
circumstances.
* Graphics: Fixed issue when assertion was triggered on
restoring VM state if VMSVGA graphics adapter was used
without 3D acceleration.
* Linux Guest Additions: Fixed issue when VBoxClient could
crash in XWayland guest.
- Delete kernel-6-14.patch (obsolete)
-------------------------------------------------------------------
Wed Apr 9 09:02:26 UTC 2025 - Jiri Slaby <jslaby@suse.cz>
- build with kernel 6.15, add:
* kernel-6-15-EXTRA_CFLAGS.patch
* kernel-6-15-fb_probe.patch -- this disables fb_probe and needs
a rewrite similar to "9fa154f40eb6 drm/{i915,xe}: Run DRM default
client setup". Good luck.
* kernel-6-15-mkdir.patch
* kernel-6-15-mode_valid.patch
* kernel-6-15-timer.patch
-------------------------------------------------------------------
Fri Mar 28 10:06:19 UTC 2025 - Jan Engelhardt <jengelh@inai.de>
- Update to release 7.1.6a
* VirtioNet: Fixed issue with re-negotiation of features
after reset
* Graphics: Fixed issue with Linux guest screen flickering when
guest was using VMSVGA graphics adapter
* Linux Guest Additions: Introduced initial support for
kernel 6.13
- Delete kernel-6-13.patch (merged)
-------------------------------------------------------------------
Fri Mar 28 06:42:00 UTC 2025 - Jiri Slaby <jslaby@suse.cz>
- add: kernel-6-14.patch
-------------------------------------------------------------------
Wed Feb 12 10:00:50 UTC 2025 - Daniel Garcia <daniel.garcia@suse.com>
- Build python bindings for python311, do not use python3 since
virtualbox doesn't support python3.13 yet.
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Jan 21 11:17:17 UTC 2025 - Jiri Slaby <jslaby@suse.cz> Tue Jan 21 11:17:17 UTC 2025 - Jiri Slaby <jslaby@suse.cz>

View File

@@ -53,9 +53,17 @@
%define _vbox_instdir %{_prefix}/lib/virtualbox %define _vbox_instdir %{_prefix}/lib/virtualbox
%define _udevrulesdir %{_prefix}/lib/udev/rules.d %define _udevrulesdir %{_prefix}/lib/udev/rules.d
%endif %endif
# ********* If the VB version exceeds 6.1.x, notify the libvirt maintainer!!
# If you want to disable building Python parts, just set this to %%nil
%global mypython python311
%if "%mypython" != ""
%global __mypython %{expand:%%__%{mypython}}
%global mypython_sitelib %{expand:%%%{mypython}_sitelib}
%endif
Name: virtualbox%{?dash}%{?name_suffix} Name: virtualbox%{?dash}%{?name_suffix}
Version: 7.1.4 Version: 7.2.0
%define rversion 7.2.0
Release: 0 Release: 0
Summary: %{package_summary} Summary: %{package_summary}
License: GPL-3.0-or-later License: GPL-3.0-or-later
@@ -70,6 +78,7 @@ URL: https://www.virtualbox.org/
# script virtualbox-patch-source.sh will do the job :) # script virtualbox-patch-source.sh will do the job :)
# WARNING: This is not a comment, but the real command to repack source # WARNING: This is not a comment, but the real command to repack source
#%%(bash %%{_sourcedir}/virtualbox-patch-source.sh VirtualBox-%%{version}.tar.bz2) #%%(bash %%{_sourcedir}/virtualbox-patch-source.sh VirtualBox-%%{version}.tar.bz2)
#Source: https://download.virtualbox.org/virtualbox/7.1.8/VirtualBox-7.1.8.tar.bz2
Source0: VirtualBox-%{version}-patched.tpxz Source0: VirtualBox-%{version}-patched.tpxz
Source1: UserManual.pdf Source1: UserManual.pdf
Source3: virtualbox-60-vboxguest.rules Source3: virtualbox-60-vboxguest.rules
@@ -117,7 +126,7 @@ Patch9: vbox-usb-warning.diff
Patch10: fix_for_leap15.5.patch Patch10: fix_for_leap15.5.patch
Patch11: cxx17.patch Patch11: cxx17.patch
Patch12: host-source.patch Patch12: host-source.patch
Patch13: kernel-6-13.patch Patch20: gentoo-C23.patch
# #
# Common BuildRequires for both virtualbox and virtualbox-kmp # Common BuildRequires for both virtualbox and virtualbox-kmp
BuildRequires: %{kernel_module_package_buildreqs} BuildRequires: %{kernel_module_package_buildreqs}
@@ -134,7 +143,7 @@ BuildRequires: gcc-c++
BuildRequires: gcc12 BuildRequires: gcc12
BuildRequires: gcc12-c++ BuildRequires: gcc12-c++
%endif %endif
BuildRequires: kbuild >= 0.1.9998+svn3613 BuildRequires: kbuild >= 0.1.9998+svn3686
BuildRequires: libcap-devel BuildRequires: libcap-devel
BuildRequires: libcurl-devel BuildRequires: libcurl-devel
BuildRequires: libopenssl-devel BuildRequires: libopenssl-devel
@@ -150,31 +159,21 @@ Source2: VirtualBox.appdata.xml
%endif %endif
### Requirements for virtualbox main package ### ### Requirements for virtualbox main package ###
%if %{main_package} %if %{main_package}
BuildRequires: LibVNCServer-devel
BuildRequires: SDL2-devel
BuildRequires: alsa-devel
BuildRequires: device-mapper-devel
BuildRequires: dmidecode BuildRequires: dmidecode
BuildRequires: e2fsprogs-devel BuildRequires: e2fsprogs-devel
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: glibc-devel-static BuildRequires: glibc-devel-static
BuildRequires: glslang-devel >= 11.5 BuildRequires: glslang-devel >= 11.5
BuildRequires: gsoap-devel >= 2.8.50
BuildRequires: java-devel >= 1.6.0 BuildRequires: java-devel >= 1.6.0
#BuildRequires: libSDL2-2_0-0
BuildRequires: libelf-devel
BuildRequires: libidl-devel
BuildRequires: libopenssl-devel
BuildRequires: libopus-devel
BuildRequires: libtpms-devel
BuildRequires: libvpx-devel
BuildRequires: libxslt-devel
BuildRequires: libzio-devel BuildRequires: libzio-devel
BuildRequires: lzfse BuildRequires: lzfse
BuildRequires: lzfse-devel BuildRequires: lzfse-devel
BuildRequires: pulseaudio-devel %if "%mypython" != ""
BuildRequires: python-rpm-macros BuildRequires: python-rpm-macros
BuildRequires: python3-devel BuildRequires: %{mypython}-devel
BuildRequires: %{mypython}-setuptools
BuildRequires: %{mypython}-pip
%endif
BuildRequires: qt6-tools-linguist BuildRequires: qt6-tools-linguist
BuildRequires: rpm BuildRequires: rpm
BuildRequires: sed BuildRequires: sed
@@ -193,16 +192,28 @@ BuildRequires: pkgconfig(Qt6Sql)
BuildRequires: pkgconfig(Qt6StateMachine) BuildRequires: pkgconfig(Qt6StateMachine)
BuildRequires: pkgconfig(Qt6Widgets) BuildRequires: pkgconfig(Qt6Widgets)
BuildRequires: pkgconfig(Qt6Xml) BuildRequires: pkgconfig(Qt6Xml)
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(devmapper)
BuildRequires: pkgconfig(fontsproto) BuildRequires: pkgconfig(fontsproto)
BuildRequires: pkgconfig(glu) BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(glx) BuildRequires: pkgconfig(glx)
BuildRequires: pkgconfig(gsoap) >= 2.8.50
BuildRequires: pkgconfig(libelf)
BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libpulse)
BuildRequires: pkgconfig(libssl)
BuildRequires: pkgconfig(libtpms)
BuildRequires: pkgconfig(libvncserver)
BuildRequires: pkgconfig(libxslt)
BuildRequires: pkgconfig(opus)
BuildRequires: pkgconfig(randrproto) BuildRequires: pkgconfig(randrproto)
BuildRequires: pkgconfig(renderproto) BuildRequires: pkgconfig(renderproto)
BuildRequires: pkgconfig(resourceproto) BuildRequires: pkgconfig(resourceproto)
BuildRequires: pkgconfig(scrnsaverproto) BuildRequires: pkgconfig(scrnsaverproto)
BuildRequires: pkgconfig(sdl) BuildRequires: pkgconfig(sdl)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(udev) BuildRequires: pkgconfig(udev)
BuildRequires: pkgconfig(vpx)
BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xau) BuildRequires: pkgconfig(xau)
BuildRequires: pkgconfig(xcomposite) BuildRequires: pkgconfig(xcomposite)
@@ -327,28 +338,32 @@ Requires(pre): net-tools-deprecated
%description guest-tools %description guest-tools
VirtualBox guest addition tools. VirtualBox guest addition tools.
%package -n python3-%{name} %if "%mypython" != ""
%package -n %{mypython}-%{name}
Summary: Python bindings for %{name} Summary: Python bindings for %{name}
Group: Development/Libraries/Python Group: Development/Libraries/Python
Requires: %{name} = %{version} Requires: %{name} = %{version}
#rename from "ose" version: #rename from "ose" version:
Provides: python3-%{name} = %{version}-%{release} Provides: %{mypython}-%{name} = %{version}-%{release}
Obsoletes: python-%{name} < %{version}-%{release} Obsoletes: python-%{name} < %{version}-%{release}
Obsoletes: python2-%{name} < %{version}-%{release} Obsoletes: python2-%{name} < %{version}-%{release}
Obsoletes: python3-%{name} < %{version}-%{release} Obsoletes: python3-%{name} < %{version}-%{release}
Provides: python3-%{name}-ose = %{version} Provides: %{mypython}-%{name}-ose = %{version}
Obsoletes: python-%{name}-ose < %{version} Obsoletes: python-%{name}-ose < %{version}
Obsoletes: python2-%{name}-ose < %{version} Obsoletes: python2-%{name}-ose < %{version}
Obsoletes: python3-%{name}-ose < %{version} Obsoletes: python3-%{name}-ose < %{version}
%description -n python3-%{name} %description -n %{mypython}-%{name}
Python XPCOM bindings to %{name}. Used e.g. by vboxgtk package. Python XPCOM bindings to %{name}. Used e.g. by vboxgtk package.
%endif
%package devel %package devel
Summary: Devel files for %{name} Summary: Devel files for %{name}
Group: Development/Libraries/Other Group: Development/Libraries/Other
Requires: %{name} = %{version} Requires: %{name} = %{version}
Requires: python3-%{name} = %{version} %if "%mypython" != ""
Requires: %{mypython}-%{name} = %{version}
%endif
#rename from "ose" version: #rename from "ose" version:
Provides: %{name}-ose-devel = %{version} Provides: %{name}-ose-devel = %{version}
Obsoletes: %{name}-ose-devel < %{version} Obsoletes: %{name}-ose-devel < %{version}
@@ -414,7 +429,7 @@ This package contains the kernel-modules that VirtualBox uses to create or run v
%endif %endif
%prep %prep
%autosetup -n VirtualBox-%{version} -p1 %autosetup -n VirtualBox-%{rversion} -p1
### Documents for virtualbox main package ### ### Documents for virtualbox main package ###
%if %{main_package} %if %{main_package}
@@ -457,6 +472,9 @@ rm -rf src/libs/{libpng-*,libxml2-*,libxslt-*,zlib-*,boost-*}
--disable-java \ --disable-java \
--disable-docs \ --disable-docs \
--enable-webservice \ --enable-webservice \
%if "%mypython" == ""
--disable-python \
%endif
--with-makeself=%{_bindir}/true --with-makeself=%{_bindir}/true
# configure actually warns we should source env.sh (which seems like it could influence the build...) # configure actually warns we should source env.sh (which seems like it could influence the build...)
@@ -548,18 +566,18 @@ install -d -m 755 %{buildroot}/media
echo "entering VNC extension install section" echo "entering VNC extension install section"
pushd out/linux.*/release/packages/ pushd out/linux.*/release/packages/
mkdir -p "%{buildroot}%{_datadir}/virtualbox/extensions/" mkdir -p "%{buildroot}%{_datadir}/virtualbox/extensions/"
install -D -m 644 VNC-*.vbox-extpack "%{buildroot}%{_datadir}/virtualbox/extensions/VNC-%{version}.vbox-extpack" install -D -m 644 VNC-*.vbox-extpack "%{buildroot}%{_datadir}/virtualbox/extensions/VNC-%{rversion}.vbox-extpack"
popd popd
echo "entering virtualbox(-qt) install section" echo "entering virtualbox(-qt) install section"
# copy the main files to %%{_vbox_instdir} # copy the main files to %%{_vbox_instdir}
pushd out/linux.*/release/bin pushd out/linux.*/release/bin
cp -a VBoxManage VBoxHeadless VBoxSDL VBoxNetNAT VBoxAutostart VBoxVolInfo \ cp -a VBoxManage VBoxHeadless VBoxSDL VBoxNetNAT VBoxAutostart VBoxVolInfo \
vboxshell.py VBoxBalloonCtrl webtest VBoxDTrace VBoxDbg.so \ VBoxBalloonCtrl webtest VBoxDTrace VBoxDbg.so \
VBoxDxVk.so UICommon.so vboximg-mount %{buildroot}%{_vbox_instdir} VBoxDxVk.so UICommon.so vboximg-mount %{buildroot}%{_vbox_instdir}
ls -al VBoxManage VBoxHeadless VBoxSDL VBoxNetNAT VBoxAutostart VBoxVolInfo \ %if "%mypython" != ""
vboxshell.py VBoxBalloonCtrl webtest VBoxDTrace VBoxDbg.so \ cp -a vboxshell.py %{buildroot}/%{_vbox_instdir}
VBoxDxVk.so UICommon.so vboximg-mount 0755 || : %endif
# create links to vbox tools in PATH - they could be usefull for controlling vbox from command line # create links to vbox tools in PATH - they could be usefull for controlling vbox from command line
ln -s %{_vbox_instdir}/VBoxManage %{buildroot}%{_bindir}/VBoxManage ln -s %{_vbox_instdir}/VBoxManage %{buildroot}%{_bindir}/VBoxManage
ln -s %{_vbox_instdir}/VBoxHeadless %{buildroot}%{_bindir}/VBoxHeadless ln -s %{_vbox_instdir}/VBoxHeadless %{buildroot}%{_bindir}/VBoxHeadless
@@ -645,13 +663,16 @@ allow = true
EOF EOF
# install udev helper script for creating usb devices # install udev helper script for creating usb devices
install -m 0755 -D src/VBox/Installer/linux/VBoxCreateUSBNode.sh %{buildroot}%{_vbox_instdir}/VBoxCreateUSBNode.sh install -m 0755 -D src/VBox/Installer/linux/VBoxCreateUSBNode.sh %{buildroot}%{_vbox_instdir}/VBoxCreateUSBNode.sh
%if "%mypython" != ""
echo "entering python-virtualbox install section" echo "entering python-virtualbox install section"
pushd out/linux.*/release/bin/sdk/installer/python pushd out/linux.*/release/bin/sdk/installer/python
VBOX_INSTALL_PATH=%{_vbox_instdir} python3 vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot} VBOX_INSTALL_PATH=%{_vbox_instdir} %{__mypython} vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot}
popd popd
install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
cp -r out/linux.*/release/bin/sdk/bindings/xpcom/python %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom cp -r out/linux.*/release/bin/sdk/bindings/xpcom/python %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
%py3_compile %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom/python %py3_compile %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom/python
%endif
echo "entering virtualbox-devel install section" echo "entering virtualbox-devel install section"
cp -r out/linux.*/release/bin/sdk/bindings/auth %{buildroot}%{_vbox_instdir}/sdk/bindings cp -r out/linux.*/release/bin/sdk/bindings/auth %{buildroot}%{_vbox_instdir}/sdk/bindings
@@ -743,7 +764,7 @@ done
%service_add_post vboxweb-service.service %service_add_post vboxweb-service.service
%post vnc %post vnc
EXTPACK="%{_datadir}/virtualbox/extensions/VNC-%{version}.vbox-extpack" EXTPACK="%{_datadir}/virtualbox/extensions/VNC-%{rversion}.vbox-extpack"
ACCEPT="$(tar --to-stdout -xf "${EXTPACK}" ./ExtPack-license.txt | sha256sum | head --bytes=64)" ACCEPT="$(tar --to-stdout -xf "${EXTPACK}" ./ExtPack-license.txt | sha256sum | head --bytes=64)"
VBoxManage extpack install --replace "${EXTPACK}" --accept-license="${ACCEPT}" > /dev/null VBoxManage extpack install --replace "${EXTPACK}" --accept-license="${ACCEPT}" > /dev/null
@@ -787,7 +808,9 @@ export DISABLE_RESTART_ON_UPDATE=yes
%{_vbox_instdir}/VBoxDTrace %{_vbox_instdir}/VBoxDTrace
%{_vbox_instdir}/VBoxNetNAT %{_vbox_instdir}/VBoxNetNAT
%{_vbox_instdir}/VBoxVolInfo %{_vbox_instdir}/VBoxVolInfo
%if "%mypython" != ""
%{_vbox_instdir}/vboxshell.py %{_vbox_instdir}/vboxshell.py
%endif
%{_vbox_instdir}/VBoxSysInfo.sh %{_vbox_instdir}/VBoxSysInfo.sh
%{_vbox_instdir}/VBoxDD2.so %{_vbox_instdir}/VBoxDD2.so
%{_vbox_instdir}/VBoxDD.so %{_vbox_instdir}/VBoxDD.so
@@ -800,6 +823,7 @@ export DISABLE_RESTART_ON_UPDATE=yes
%{_vbox_instdir}/VBoxRT.so %{_vbox_instdir}/VBoxRT.so
%{_vbox_instdir}/VBoxSharedFolders.so %{_vbox_instdir}/VBoxSharedFolders.so
%{_vbox_instdir}/VBoxVMM.so %{_vbox_instdir}/VBoxVMM.so
%{_vbox_instdir}/VBoxVMMArm.so
%{_vbox_instdir}/VBoxXPCOMC.so %{_vbox_instdir}/VBoxXPCOMC.so
%{_vbox_instdir}/VBoxXPCOM.so %{_vbox_instdir}/VBoxXPCOM.so
%{_vbox_instdir}/VBox*.r0 %{_vbox_instdir}/VBox*.r0
@@ -910,14 +934,16 @@ export DISABLE_RESTART_ON_UPDATE=yes
%dir /media %dir /media
%endif %endif
%files -n python3-%{name} %if "%mypython" != ""
%files -n %{mypython}-%{name}
%dir %{_vbox_instdir}/sdk %dir %{_vbox_instdir}/sdk
%dir %{_vbox_instdir}/sdk/bindings %dir %{_vbox_instdir}/sdk/bindings
%dir %{_vbox_instdir}/sdk/bindings/xpcom %dir %{_vbox_instdir}/sdk/bindings/xpcom
%{_vbox_instdir}/sdk/bindings/xpcom/python %{_vbox_instdir}/sdk/bindings/xpcom/python
%{_vbox_instdir}/VBoxPython*.so %{_vbox_instdir}/VBoxPython*.so
%{python3_sitelib}/vboxapi-1.0-*.egg-info %{mypython_sitelib}/vboxapi-*.egg-info
%{python3_sitelib}/vboxapi/ %{mypython_sitelib}/vboxapi/
%endif
%files devel %files devel
%dir %{_vbox_instdir}/sdk %dir %{_vbox_instdir}/sdk
@@ -951,7 +977,7 @@ export DISABLE_RESTART_ON_UPDATE=yes
%files vnc %files vnc
%license COPYING %license COPYING
%dir %{_datadir}/virtualbox/extensions %dir %{_datadir}/virtualbox/extensions
%{_datadir}/virtualbox/extensions/VNC-%{version}.vbox-extpack %{_datadir}/virtualbox/extensions/VNC-%{rversion}.vbox-extpack
# main_package # main_package
%endif %endif