1
0
forked from jengelh/virtualbox

19 Commits

Author SHA256 Message Date
63efca5304 virtualbox 7.1.14 2025-10-29 00:20:30 +01:00
2b335fdffb Make build recipe sh-compatible
pushd is a bash-ism, out with it.
2025-10-26 19:52:13 +01:00
f8704b4118 Drop old distro logic 2025-10-26 19:52:08 +01: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
17 changed files with 219 additions and 105 deletions

1
.gitattributes vendored
View File

@@ -15,6 +15,7 @@
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 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
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text

BIN
VirtualBox-7.1.14-patched.tpxz LFS Normal file

Binary file not shown.

Binary file not shown.

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

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
echo "You need to pass the filename VirtualBox-x.y.z.tar.bz2 as first argument."

View File

@@ -2,3 +2,5 @@ addFilter("incoherent-init-script-name vboxdrv")
addFilter("incoherent-init-script-name vboxadd")
addFilter("xorg-x11-driver-virtualbox-ose.* shlib-policy-missing-suffix")
addFilter("executable-stack")
# lots of silly false positives on 15.x
addFilter("systemd-service-without-service_del_postun")

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

View File

@@ -1,3 +1,125 @@
-------------------------------------------------------------------
Sun Oct 26 18:53:08 UTC 2025 - Jan Engelhardt <jengelh@inai.de>
- Update to release 7.1.14
* Audio: Fixed a crash on Windows hosts when a host device has
been changed and failed to reset
* Main: Fixed issue when some snapshots could not be deleted
* Main: Fixed issue when it was not possible to run more than 61
VMs in parallel
* Linux Guest and Host: Introduced initial support for kernels
6.17 and 6.18
* Windows Guest Additions: Fixed issue when Guest Additions could
not be installed on Windows XP guest
-------------------------------------------------------------------
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>

View File

@@ -53,9 +53,17 @@
%define _vbox_instdir %{_prefix}/lib/virtualbox
%define _udevrulesdir %{_prefix}/lib/udev/rules.d
%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}
Version: 7.1.4
Version: 7.1.14
%define rversion 7.1.14
Release: 0
Summary: %{package_summary}
License: GPL-3.0-or-later
@@ -70,6 +78,7 @@ URL: https://www.virtualbox.org/
# script virtualbox-patch-source.sh will do the job :)
# WARNING: This is not a comment, but the real command to repack source
#%%(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
Source1: UserManual.pdf
Source3: virtualbox-60-vboxguest.rules
@@ -117,7 +126,7 @@ Patch9: vbox-usb-warning.diff
Patch10: fix_for_leap15.5.patch
Patch11: cxx17.patch
Patch12: host-source.patch
Patch13: kernel-6-13.patch
Patch20: gentoo-C23.patch
#
# Common BuildRequires for both virtualbox and virtualbox-kmp
BuildRequires: %{kernel_module_package_buildreqs}
@@ -148,33 +157,23 @@ ExclusiveArch: x86_64
%if 0%{?sle_version} != 120300
Source2: VirtualBox.appdata.xml
%endif
### Requirements for virtualbox main package ###
%if %{main_package}
BuildRequires: LibVNCServer-devel
BuildRequires: SDL2-devel
BuildRequires: alsa-devel
BuildRequires: device-mapper-devel
BuildRequires: dmidecode
BuildRequires: e2fsprogs-devel
BuildRequires: fdupes
BuildRequires: glibc-devel-static
BuildRequires: glslang-devel >= 11.5
BuildRequires: gsoap-devel >= 2.8.50
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: lzfse
BuildRequires: lzfse-devel
BuildRequires: pulseaudio-devel
%if "%mypython" != ""
BuildRequires: python-rpm-macros
BuildRequires: python3-devel
BuildRequires: %{mypython}-devel
BuildRequires: %{mypython}-setuptools
BuildRequires: %{mypython}-pip
%endif
BuildRequires: qt6-tools-linguist
BuildRequires: rpm
BuildRequires: sed
@@ -183,7 +182,7 @@ BuildRequires: sysuser-tools
BuildRequires: update-desktop-files
BuildRequires: which
BuildRequires: xorg-x11-server
BuildRequires: pkgconfig(Qt6Core)
BuildRequires: pkgconfig(Qt6Core) >= 6.3
BuildRequires: pkgconfig(Qt6DBus)
BuildRequires: pkgconfig(Qt6Gui)
BuildRequires: pkgconfig(Qt6Help)
@@ -193,16 +192,28 @@ BuildRequires: pkgconfig(Qt6Sql)
BuildRequires: pkgconfig(Qt6StateMachine)
BuildRequires: pkgconfig(Qt6Widgets)
BuildRequires: pkgconfig(Qt6Xml)
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(devmapper)
BuildRequires: pkgconfig(fontsproto)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(glx)
BuildRequires: pkgconfig(gsoap) >= 2.8.50
BuildRequires: pkgconfig(libelf)
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(renderproto)
BuildRequires: pkgconfig(resourceproto)
BuildRequires: pkgconfig(scrnsaverproto)
BuildRequires: pkgconfig(sdl)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(udev)
BuildRequires: pkgconfig(vpx)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xau)
BuildRequires: pkgconfig(xcomposite)
@@ -226,19 +237,12 @@ Conflicts: %{name}-qt > %{version}
Conflicts: %{name}-websrv < %{version}
Conflicts: %{name}-websrv > %{version}
Recommends: %{name}-gui = %{version}
# package i4l-vbox from source package i4l-base shares the directory /etc/vbox
# with us, but with different owner.
Conflicts: i4l-vbox
#rename from ose version:
Provides: %{name}-ose = %{version}
Obsoletes: %{name}-ose < %{version}
%{?systemd_ordering}
%{?sysusers_requires}
%if 0%{?suse_version} > 1325
BuildRequires: libboost_headers-devel
%else
BuildRequires: boost-devel
%endif
%ifarch amd64 x86_64 ia32e em64t
%if 0%{?suse_version} && 0%{?suse_version} >= 1600
BuildRequires: gcc-32bit
@@ -252,12 +256,7 @@ BuildRequires: xorg-x11-libXext-devel-32bit
BuildRequires: xorg-x11-libXmu-devel-32bit
BuildRequires: xorg-x11-libXt-devel-32bit
%endif
%if ! 0%{?suse_version} > 1325
Requires(pre): net-tools-deprecated
%endif
# end of main_package
%endif
### Requirements for virtualbox-kmp ###
%if %{kmp_package}
BuildRequires: alsa-devel
BuildRequires: libiptc-devel
@@ -266,9 +265,7 @@ BuildRequires: libxml2-devel
Requires: ca-certificates
Requires: openSUSE-signkey-cert
%kernel_module_package -p %{SOURCE7} -n virtualbox -x kdump um xen pae xenpae pv
# end of kmp_package
%endif
### Description and subpackages of virtualbox main package ###
%if %{main_package}
%description
VirtualBox is a hosted hypervisor for x86 computers. It supports the
@@ -319,36 +316,37 @@ Provides: %{name}-ose-guest-tools = %{version}
Obsoletes: %{name}-ose-guest-tools < %{version}
Obsoletes: virtualbox-guest-x11 < %{version}
Obsoletes: xorg-x11-driver-virtualbox-ose < %{version}
%if ! 0%{?suse_version} > 1325
Requires(pre): net-tools-deprecated
%endif
%{?sysusers_requires}
%description guest-tools
VirtualBox guest addition tools.
%package -n python3-%{name}
%if "%mypython" != ""
%package -n %{mypython}-%{name}
Summary: Python bindings for %{name}
Group: Development/Libraries/Python
Requires: %{name} = %{version}
#rename from "ose" version:
Provides: python3-%{name} = %{version}-%{release}
Provides: %{mypython}-%{name} = %{version}-%{release}
Obsoletes: python-%{name} < %{version}-%{release}
Obsoletes: python2-%{name} < %{version}-%{release}
Obsoletes: python3-%{name} < %{version}-%{release}
Provides: python3-%{name}-ose = %{version}
Provides: %{mypython}-%{name}-ose = %{version}
Obsoletes: python-%{name}-ose < %{version}
Obsoletes: python2-%{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.
%endif
%package devel
Summary: Devel files for %{name}
Group: Development/Libraries/Other
Requires: %{name} = %{version}
Requires: python3-%{name} = %{version}
%if "%mypython" != ""
Requires: %{mypython}-%{name} = %{version}
%endif
#rename from "ose" version:
Provides: %{name}-ose-devel = %{version}
Obsoletes: %{name}-ose-devel < %{version}
@@ -414,7 +412,7 @@ This package contains the kernel-modules that VirtualBox uses to create or run v
%endif
%prep
%autosetup -n VirtualBox-%{version} -p1
%autosetup -n VirtualBox-%{rversion} -p1
### Documents for virtualbox main package ###
%if %{main_package}
@@ -457,6 +455,9 @@ rm -rf src/libs/{libpng-*,libxml2-*,libxslt-*,zlib-*,boost-*}
--disable-java \
--disable-docs \
--enable-webservice \
%if "%mypython" == ""
--disable-python \
%endif
--with-makeself=%{_bindir}/true
# configure actually warns we should source env.sh (which seems like it could influence the build...)
@@ -541,25 +542,23 @@ install -m 755 out/linux.*/release/bin/additions/VBoxDRMClient %{buildroot}%{_bi
install -m 755 src/VBox/Additions/x11/Installer/98vboxadd-xclient %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d/
install -d %{buildroot}%{_sysconfdir}/xdg/autostart/
install -m 644 %{SOURCE25} %{buildroot}%{_sysconfdir}/xdg/autostart/vboxclient.desktop
%if 0%{?suse_version} > 1320 || 0%{?sle_version} == 120300
install -d -m 755 %{buildroot}/media
%endif
echo "entering VNC extension install section"
pushd out/linux.*/release/packages/
cd out/linux.*/release/packages/
mkdir -p "%{buildroot}%{_datadir}/virtualbox/extensions/"
install -D -m 644 VNC-*.vbox-extpack "%{buildroot}%{_datadir}/virtualbox/extensions/VNC-%{version}.vbox-extpack"
popd
install -D -m 644 VNC-*.vbox-extpack "%{buildroot}%{_datadir}/virtualbox/extensions/VNC-%{rversion}.vbox-extpack"
cd -
echo "entering virtualbox(-qt) install section"
# copy the main files to %%{_vbox_instdir}
pushd out/linux.*/release/bin
cd out/linux.*/release/bin
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}
ls -al VBoxManage VBoxHeadless VBoxSDL VBoxNetNAT VBoxAutostart VBoxVolInfo \
vboxshell.py VBoxBalloonCtrl webtest VBoxDTrace VBoxDbg.so \
VBoxDxVk.so UICommon.so vboximg-mount 0755 || :
%if "%mypython" != ""
cp -a vboxshell.py %{buildroot}/%{_vbox_instdir}
%endif
# 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}/VBoxHeadless %{buildroot}%{_bindir}/VBoxHeadless
@@ -593,7 +592,7 @@ mkdir -p %{buildroot}%{_usrsrc}/kernel-modules/additions
tar -jcf %{buildroot}%{_usrsrc}/kernel-modules/additions/guest_src.tar.bz2 additions/src
cp -a src %{buildroot}%{_usrsrc}/kernel-modules/virtualbox
install -m 644 %{SOURCE11} %{buildroot}%{_udevrulesdir}/60-vboxdrv.rules
popd
cd -
# install desktop file
install -m 644 out/linux.*/release/bin/virtualbox.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop
@@ -645,40 +644,43 @@ allow = true
EOF
# install udev helper script for creating usb devices
install -m 0755 -D src/VBox/Installer/linux/VBoxCreateUSBNode.sh %{buildroot}%{_vbox_instdir}/VBoxCreateUSBNode.sh
%if "%mypython" != ""
echo "entering python-virtualbox install section"
pushd out/linux.*/release/bin/sdk/installer/python
VBOX_INSTALL_PATH=%{_vbox_instdir} python3 vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot}
popd
cd out/linux.*/release/bin/sdk/installer/python
VBOX_INSTALL_PATH=%{_vbox_instdir} %{__mypython} vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot}
cd -
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
%py3_compile %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom/python
%endif
echo "entering virtualbox-devel install section"
cp -r out/linux.*/release/bin/sdk/bindings/auth %{buildroot}%{_vbox_instdir}/sdk/bindings
pushd out/linux.*/release/bin/sdk/bindings/xpcom
cd out/linux.*/release/bin/sdk/bindings/xpcom
cp -r include %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
cp -r idl %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
cp -r samples %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
popd
cd -
cp out/linux.*/release/bin/sdk/bindings/VirtualBox.xidl %{buildroot}%{_vbox_instdir}/sdk/bindings
echo "entering virtualbox-websrv install section"
pushd out/linux.*/release/bin
cd out/linux.*/release/bin
install -m 755 vboxwebsrv %{buildroot}%{_vbox_instdir}
install -m 755 webtest %{buildroot}%{_vbox_instdir}
popd
cd -
ln -sf %{_unitdir}/vboxweb-service.service %{buildroot}%{_unitdir}/multi-user.target.wants/vboxweb-service.service
echo "entering virtualbox-guest-desktop-icons install section"
install -d -m 755 %{buildroot}%{_datadir}/pixmaps/virtualbox
pushd src/VBox/Frontends/VirtualBox/images
cd src/VBox/Frontends/VirtualBox/images
for icon in os_*.png; do
install -m 644 "$icon" %{buildroot}%{_datadir}/pixmaps/virtualbox/"$icon";
done
popd
cd -
install -Dm0644 vbox.conf %{buildroot}%{_sysusersdir}/vbox.conf
install -Dm0644 vbox-guest-tools.conf %{buildroot}%{_sysusersdir}/vbox-guest-tools.conf
@@ -696,7 +698,6 @@ install -Dm0644 vbox-guest-tools.conf %{buildroot}%{_sysusersdir}/vbox-guest-too
%service_add_pre vboxweb-service.service
%post
/sbin/ldconfig
#setup our sysconfig file /etc/sysconfig/vbox
%set_permissions %{_vbox_instdir}/VBoxNetNAT
%set_permissions %{_vbox_instdir}/VBoxNetDHCP
@@ -743,7 +744,7 @@ done
%service_add_post vboxweb-service.service
%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)"
VBoxManage extpack install --replace "${EXTPACK}" --accept-license="${ACCEPT}" > /dev/null
@@ -760,7 +761,6 @@ VBoxManage extpack install --replace "${EXTPACK}" --accept-license="${ACCEPT}" >
%service_del_preun vboxweb-service.service
%postun
/sbin/ldconfig
# immediately restarting virtualbox may not work. As such wait for the next reboot to restart
%if ! %{defined service_del_postun_without_restart}
export DISABLE_RESTART_ON_UPDATE=yes
@@ -787,7 +787,9 @@ export DISABLE_RESTART_ON_UPDATE=yes
%{_vbox_instdir}/VBoxDTrace
%{_vbox_instdir}/VBoxNetNAT
%{_vbox_instdir}/VBoxVolInfo
%if "%mypython" != ""
%{_vbox_instdir}/vboxshell.py
%endif
%{_vbox_instdir}/VBoxSysInfo.sh
%{_vbox_instdir}/VBoxDD2.so
%{_vbox_instdir}/VBoxDD.so
@@ -906,18 +908,18 @@ export DISABLE_RESTART_ON_UPDATE=yes
%dir %{_sysconfdir}/xdg
%dir %{_sysconfdir}/xdg/autostart
%{_sysconfdir}/xdg/autostart/vboxclient.desktop
%if 0%{?suse_version} > 1320 || 0%{?sle_version} == 120300
%dir /media
%endif
%files -n python3-%{name}
%if "%mypython" != ""
%files -n %{mypython}-%{name}
%dir %{_vbox_instdir}/sdk
%dir %{_vbox_instdir}/sdk/bindings
%dir %{_vbox_instdir}/sdk/bindings/xpcom
%{_vbox_instdir}/sdk/bindings/xpcom/python
%{_vbox_instdir}/VBoxPython*.so
%{python3_sitelib}/vboxapi-1.0-*.egg-info
%{python3_sitelib}/vboxapi/
%{mypython_sitelib}/vboxapi-*.egg-info
%{mypython_sitelib}/vboxapi/
%endif
%files devel
%dir %{_vbox_instdir}/sdk
@@ -951,7 +953,7 @@ export DISABLE_RESTART_ON_UPDATE=yes
%files vnc
%license COPYING
%dir %{_datadir}/virtualbox/extensions
%{_datadir}/virtualbox/extensions/VNC-%{version}.vbox-extpack
%{_datadir}/virtualbox/extensions/VNC-%{rversion}.vbox-extpack
# main_package
%endif