Blame virtualbox-guest-additions.spec

32e434
%global __provides_exclude_from %{_libdir}/VBoxGuestAdditions
32e434
32e434
Name:       virtualbox-guest-additions
f95310
Version:    6.1.4
bd5ab5
Release:    2%{?dist}
32e434
Summary:    VirtualBox Guest Additions
32e434
License:    GPLv2 or (GPLv2 and CDDL)
bf502b
URL:        https://www.virtualbox.org/wiki/VirtualBox
32e434
bf502b
Source0:    https://download.virtualbox.org/virtualbox/%{version}/VirtualBox-%{version}.tar.bz2
32e434
Source1:    vboxservice.service
32e434
Source2:    96-vbox.preset
32e434
Source3:    VirtualBox-60-vboxguest.rules
32e434
32e434
# Mainline vboxsf uses an option string rather then a custom binary data struct
32e434
Patch2:     0001-VBoxServiceAutoMount-Change-Linux-mount-code-to-use-.patch
32e434
# Do not show an error dialog when not running under vbox
8643fd
Patch3:     VirtualBox-5.2.10-xclient.patch
bd5ab5
# Fix for https://www.virtualbox.org/ticket/19357 / rhbz#1806778
bd5ab5
Patch4:     VirtualBox-6.1.4-VBoxClient-vmsvga-x11-crash.patch
32e434
49394e
BuildRequires:  gcc-c++
94f1fe
BuildRequires:  kBuild >= 0.1.9998.r3093
36b3b1
BuildRequires:  python%{python3_pkgversion}-devel
32e434
BuildRequires:  desktop-file-utils
210826
# for xsltproc
210826
BuildRequires:  libxslt
32e434
BuildRequires:  makeself
32e434
BuildRequires:  yasm
32e434
BuildRequires:  boost-devel
32e434
BuildRequires:  libXcomposite-devel
0b7c65
BuildRequires:  libXdamage-devel
32e434
BuildRequires:  libXmu-devel
32e434
BuildRequires:  libXrandr-devel
32e434
BuildRequires:  libXt-devel
32e434
BuildRequires:  mesa-libEGL-devel
32e434
BuildRequires:  mesa-libGL-devel
32e434
BuildRequires:  mesa-libGLU-devel
32e434
BuildRequires:  openssl-devel
32e434
BuildRequires:  pam-devel
32e434
BuildRequires:  zlib-devel
32e434
# For the OpenGL passthru libs, these are statically linked against libstdc++
32e434
# like mesa itself is to avoid trouble with game-runtimes providing their
32e434
# own older libstdc++ (e.g. steam does this)
32e434
BuildRequires:  libstdc++-static
32e434
%{?systemd_requires}
1e2bdf
BuildRequires: systemd
1e2bdf
32e434
# Obsoletes/provides for upgrade path from the rpmfusion guest-additions pkg
32e434
Obsoletes:      VirtualBox-guest-additions < %{version}-%{release}
32e434
Provides:       VirtualBox-guest-additions = %{version}-%{release}
f95310
# VirtualBox guests are always x86, no need to build for other archs
32e434
ExclusiveArch:  i686 x86_64
32e434
32e434
%description
32e434
VirtualBox is a powerful x86 and AMD64/Intel64 virtualization product for
32e434
enterprise as well as home use. This package contains the VirtualBox
32e434
Guest Additions which support better integration of VirtualBox guests
32e434
with the Host, including file sharing, clipboard sharing and Seamless mode.
32e434
32e434
32e434
%prep
32e434
%autosetup -p1 -n VirtualBox-%{version}
32e434
# Remove prebuilt binaries
32e434
find -name '*.py[co]' -delete
f95310
rm -r src/VBox/Additions/WINNT
f95310
rm -r src/VBox/Additions/os2
32e434
rm -r kBuild/
32e434
rm -r tools/
32e434
# Remove bundle X11 sources and some lib sources
32e434
rm -r src/VBox/Additions/x11/x11include/
32e434
rm -r src/VBox/Additions/x11/x11stubs/
0b7c65
rm -r src/VBox/Additions/3D/mesa/mesa-17.3.9/
32e434
rm -r src/libs/libxml2-2.9.*/
ed175d
rm -r src/libs/libpng-1.6.*/
ed175d
rm -r src/libs/zlib-1.2.*/
32e434
32e434
32e434
%build
32e434
./configure --only-additions --disable-kmods
32e434
. ./env.sh
32e434
umask 0022
32e434
32e434
# VirtualBox build system installs and builds in the same step,
32e434
# not allways looking for the installed files to places they have
32e434
# really been installed to. Therefore we do not override any of
32e434
# the installation paths, but install the tree with the default
32e434
# layout under 'obj' and shuffle files around in %%install.
32e434
kmk %{_smp_mflags}                                             \
32e434
    KBUILD_VERBOSE=2                                           \
32e434
    PATH_OUT="$PWD/obj"                                        \
32e434
    TOOL_YASM_AS=yasm                                          \
32e434
    VBOX_WITH_TESTCASES=                                       \
32e434
    VBOX_WITH_VALIDATIONKIT=                                   \
32e434
    VBOX_USE_SYSTEM_XORG_HEADERS=1                             \
32e434
    VBOX_USE_SYSTEM_GL_HEADERS=1                               \
56bd2d
    VBOX_NO_LEGACY_XORG_X11=1                                  \
32e434
    SDK_VBOX_LIBPNG_INCS=""                                    \
32e434
    SDK_VBOX_LIBXML2_INCS=""                                   \
32e434
    SDK_VBOX_OPENSSL_INCS=""                                   \
2f59a4
    SDK_VBOX_OPENSSL_LIBS="ssl crypto"                         \
56bd2d
    SDK_VBOX_ZLIB_INCS=""                                      \
32e434
    VBOX_BUILD_PUBLISHER=_Fedora
32e434
32e434
32e434
%install
32e434
# The directory layout created below attempts to mimic the one of
32e434
# the commercially supported version to minimize confusion
32e434
mkdir -p %{buildroot}%{_bindir}
32e434
mkdir -p %{buildroot}%{_sbindir}
32e434
mkdir -p %{buildroot}%{_libdir}/security
32e434
32e434
install -m 0755 -t %{buildroot}%{_sbindir}   \
32e434
    obj/bin/additions/VBoxService
32e434
install -m 0755 -t %{buildroot}%{_bindir}    \
32e434
    obj/bin/additions/VBoxClient             \
32e434
    obj/bin/additions/VBoxControl
32e434
32e434
install -m 0755 -t %{buildroot}%{_libdir}/security \
32e434
    obj/bin/additions/pam_vbox.so
32e434
32e434
install -p -m 0755 -D src/VBox/Additions/x11/Installer/98vboxadd-xclient \
32e434
    %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
32e434
ln -s ../..%{_sysconfdir}/X11/xinit/xinitrc.d/98vboxadd-xclient.sh \
32e434
    %{buildroot}%{_bindir}/VBoxClient-all
32e434
desktop-file-install --dir=%{buildroot}%{_sysconfdir}/xdg/autostart/ \
32e434
    --remove-key=Encoding src/VBox/Additions/x11/Installer/vboxclient.desktop
32e434
desktop-file-validate \
32e434
    %{buildroot}%{_sysconfdir}/xdg/autostart/vboxclient.desktop
32e434
32e434
install -p -m 0644 -D %{SOURCE1} %{buildroot}%{_unitdir}/vboxservice.service
32e434
install -p -m 0644 -D %{SOURCE2} %{buildroot}%{_presetdir}/96-vbox.preset
32e434
install -p -m 0644 -D %{SOURCE3} %{buildroot}%{_udevrulesdir}/60-vboxguest.rules
32e434
32e434
32e434
%pre
32e434
# Add a group "vboxsf" for Shared Folders access
32e434
# All users which want to access the auto-mounted Shared Folders have to
32e434
# be added to this group.
32e434
getent group vboxsf >/dev/null || groupadd -r vboxsf 2>&1
32e434
getent passwd vboxadd >/dev/null || \
32e434
    useradd -r -g 1 -d /var/run/vboxadd -s /sbin/nologin vboxadd 2>&1
32e434
32e434
%post
32e434
%systemd_post vboxservice.service
32e434
32e434
%preun
32e434
%systemd_preun vboxservice.service
32e434
32e434
%postun
32e434
%systemd_postun_with_restart vboxservice.service
32e434
32e434
32e434
%files
32e434
%license COPYING*
32e434
%{_bindir}/VBoxClient
32e434
%{_bindir}/VBoxControl
32e434
%{_bindir}/VBoxClient-all
32e434
%{_sbindir}/VBoxService
32e434
%{_libdir}/security/pam_vbox.so
32e434
%{_sysconfdir}/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
32e434
%{_sysconfdir}/xdg/autostart/vboxclient.desktop
32e434
%{_unitdir}/vboxservice.service
32e434
%{_presetdir}/96-vbox.preset
32e434
%{_udevrulesdir}/60-vboxguest.rules
32e434
32e434
32e434
%changelog
bd5ab5
* Tue Mar  3 2020 Hans de Goede <hdegoede@redhat.com> - 6.1.4-2
bd5ab5
- Fix VBoxClient --vmsvga-x11 crash (rhbz#1806778)
bd5ab5
f95310
* Sat Feb 22 2020 Sérgio Basto <sergio@serjux.com> - 6.1.4-1
f95310
- Update Virtualbox Guest Additions to 6.1.4
f95310
Fedora Release Engineering b4f421
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.2-2
Fedora Release Engineering b4f421
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Fedora Release Engineering b4f421
def0a7
* Sun Jan 19 2020 Sérgio Basto <sergio@serjux.com> - 6.1.2-1
def0a7
- Update Virtualbox Guest Additions to 6.1.2
def0a7
0b7c65
* Fri Dec 20 2019 Sérgio Basto <sergio@serjux.com> - 6.1.0-1
0b7c65
- Upgrade to 6.1.0
0b7c65
- Seems that VBoxOGL was removed in 6.1.0
0b7c65
36b3b1
* Wed Nov 13 2019 Sérgio Basto <sergio@serjux.com> - 6.0.14-2
36b3b1
- Change BR from python2 to python3
36b3b1
5c6ce1
* Thu Oct 17 2019 Sérgio Basto <sergio@serjux.com> - 6.0.14-1
5c6ce1
- Update Virtualbox Guest Additions to 6.0.14
5c6ce1
472632
* Fri Sep 06 2019 Sérgio Basto <sergio@serjux.com> - 6.0.12-1
472632
- Update Virtualbox Guest Additions to 6.0.12
472632
Fedora Release Engineering 7b4870
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.10-2
Fedora Release Engineering 7b4870
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Fedora Release Engineering 7b4870
ed175d
* Wed Jul 17 2019 Sérgio Basto <sergio@serjux.com> - 6.0.10-1
ed175d
- Update Virtualbox Guest Additions to 6.0.10
ed175d
bd62cd
* Fri May 24 2019 Sérgio Basto <sergio@serjux.com> - 6.0.8-2
bd62cd
- Just force same version and not same release
bd62cd
f91930
* Sun May 19 2019 Sérgio Basto <sergio@serjux.com> - 6.0.8-1
f91930
- Update Virtualbox Guest Additions to 6.0.8
f91930
b22ed6
* Fri Apr 26 2019 Sérgio Basto <sergio@serjux.com> - 6.0.6-1
b22ed6
- Update Virtualbox Guest Additions to 6.0.6
b22ed6
cfa360
* Wed Mar 20 2019 Hans de Goede <hdegoede@redhat.com> - 6.0.4-2
cfa360
- Fix automounted shares not working on 6.0.x hosts
cfa360
386c9c
* Thu Mar 07 2019 Sérgio Basto <sergio@serjux.com> - 6.0.4-1
386c9c
- Update Virtualbox Guest Additions to 6.0.4
386c9c
Fedora Release Engineering 88ad64
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.2-2
Fedora Release Engineering 88ad64
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Fedora Release Engineering 88ad64
af89b1
* Wed Jan 23 2019 Hans de Goede <hdegoede@redhat.com> - 6.0.2-1
af89b1
- Update Virtualbox Guest Additions to 6.0.2, security fix version
af89b1
Björn Esser ce8952
* Mon Jan 14 2019 Björn Esser <besser82@fedoraproject.org> - 6.0.0-2
Björn Esser ce8952
- Rebuilt for libcrypt.so.2 (#1666033)
Björn Esser cf4c00
- Add a patch to fix build on Fedora 30
Björn Esser ce8952
8c7d23
* Thu Dec 20 2018 Sérgio Basto <sergio@serjux.com> - 6.0.0-1
8c7d23
- VirtualBox 6.0.0
8c7d23
3cbba6
* Mon Nov 12 2018 Sérgio Basto <sergio@serjux.com> - 5.2.22-1
3cbba6
- Update Virtualbox Guest Additions to 5.2.22, security fix version
3cbba6
abda82
* Sat Oct 20 2018 Sérgio Basto <sergio@serjux.com> - 5.2.20-1
abda82
- Update Virtualbox Guest Additions to 5.2.20, bugfix version
abda82
e4a441
* Thu Aug 30 2018 Sérgio Basto <sergio@serjux.com> - 5.2.18-1
e4a441
- Update Virtualbox Guest Additions to 5.2.18
e4a441
6555dc
* Wed Aug 01 2018 Sérgio Basto <sergio@serjux.com> - 5.2.16-2
6555dc
- Force instalation of same version VirtualBox-kmodsrc and
6555dc
  virtualBox-guest-additions
6555dc
ded9f4
* Sat Jul 21 2018 Sérgio Basto <sergio@serjux.com> - 5.2.16-1
ded9f4
- Update Virtualbox Guest Additions to 5.2.16
ded9f4
Fedora Release Engineering 1f2541
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.14-2
Fedora Release Engineering 1f2541
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
49394e
- https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot
Fedora Release Engineering 1f2541
4b547c
* Mon Jul 02 2018 Sérgio Basto <sergio@serjux.com> - 5.2.14-1
4b547c
- Update Virtualbox Guest Additions to 5.2.14
4b547c
56bd2d
* Sat May 12 2018 Sérgio Basto <sergio@serjux.com> - 5.2.12-1
56bd2d
- Update to 5.2.12
56bd2d
8643fd
* Sun Apr 22 2018 Sérgio Basto <sergio@serjux.com> - 5.2.10-1
8643fd
- Update to 5.2.10
8643fd
bf502b
* Thu Mar  1 2018 Hans de Goede <hdegoede@redhat.com> - 5.2.8-1
bf502b
- Update to 5.2.8
bf502b
- Use https for all URLs
bf502b
32e434
* Wed Feb  7 2018 Hans de Goede <hdegoede@redhat.com> - 5.2.6-4
32e434
- Do not use pkg-config for includes, as pkg-config prefixes an unwanted -I
32e434
- Fix /etc/X11/xinit/xinitrc.d/98vboxadd-xclient.sh to now show an error
32e434
  notification when not running under vbox, as we will be part of the
32e434
  Workstation livecd which may run anywhere
32e434
32e434
* Mon Jan 29 2018 Hans de Goede <hdegoede@redhat.com> - 5.2.6-3
32e434
- Update to 5.2.6
32e434
- Drop VirtualBox-4.3.0-no-bundles.patch, set make variables instead
32e434
- Adjust automount vboxservice for mainline vboxsf filesystem driver
32e434
- Drop mount.vboxsf, the mainline vboxsf filesystem driver works with the
32e434
  regular mount binary
32e434
- Drop commented out Requires: kernel, this is bad idea (rhbz#1534595)
32e434
- Use pkgconfig to get include/libs instead of hardcoding (rhbz#1534595)
32e434
- Rename to lowercaps virtualbox-guest-additions, add Obsoletes / Provides
32e434
  for upgradepath from rpmfusion (rhbz#1534595)
32e434
- Add Provides: VirtualBox-kmod-common for rpmfusion upgradepath (rhbz#1534595)
32e434
- Latest rpmfusion Release is 2, set our Release field to 3
32e434
32e434
* Sun Nov 26 2017 Hans de Goede <hdegoede@redhat.com> - 5.2.2-1
32e434
- Update to 5.2.2
32e434
32e434
* Thu Sep 21 2017 Hans de Goede <hdegoede@redhat.com> - 5.2.0-0.1.svn68769
32e434
- Switch to a 5.2 svn snapshot, as 5.2 has a new /dev/vboxguest ioctl API
32e434
  which the mainline version of the vboxguest drivers implement
32e434
32e434
* Mon Aug 28 2017 Hans de Goede <hdegoede@redhat.com> - 5.1.26-3
32e434
- Put the libGL.so.1 replacement libs and VBoxOGLRun scripts in an -ogl
32e434
  subpackage, so that people can install both the i686 and x86_64 versions.
32e434
- Filter out libGL.so.1 provides
32e434
32e434
* Mon Aug 14 2017 Hans de Goede <hdegoede@redhat.com> - 5.1.26-2
32e434
- Initial Fedora package based on the guest-addition parts of the
32e434
  rpmfusion VirtualBox package