]> git.pld-linux.org Git - packages/VirtualBox.git/blobdiff - VirtualBox.spec
- merged udev support into main package
[packages/VirtualBox.git] / VirtualBox.spec
index d340c503f52570fbdfcac1ce243f8a291398dcef..669bd50b5d5cb6f9bdb155a49835eca440f3d7af 100644 (file)
@@ -1,7 +1,5 @@
-#
 # TODO
 # - java bindings
-# - Find how to compile with PLD CFLAGS/CXXFLAGS/LDFLAGS.
 # - Package SDK.
 # - Package utils (and write initscripts ?) for Guest OS.
 # - Check License of VBoxGuestAdditions_*.iso, it's probably not GPL v2.
@@ -9,14 +7,16 @@
 # - resolve mess with subpackages?
 #   - addtions: iso (containing additions/*.iso)
 #   - guest: to be installed to guests (deps on x11 drivers)
+# - enable VDE networking: --enable-vde
 #
 # Conditional build:
 %bcond_without doc             # don't build the documentation
 %bcond_without dist_kernel     # without distribution kernel
 %bcond_without kernel          # don't build kernel module
 %bcond_without userspace       # don't build userspace package
+%bcond_with    webservice      # webservice (soap) support
+%bcond_without verbose
 %bcond_with    force_userspace # force userspace build (useful if alt_kernel is set)
-%bcond_with    verbose
 
 %if %{without kernel}
 %undefine      with_dist_kernel
 %define                _enable_debug_packages  0
 %endif
 
-%define                rel             0.4
+%define                rel             5
 %define                pname           VirtualBox
 Summary:       VirtualBox - x86 hardware virtualizer
 Summary(pl.UTF-8):     VirtualBox - wirtualizator sprzętu x86
 Name:          %{pname}%{_alt_kernel}
-Version:       4.2.0
+Version:       4.2.10
 Release:       %{rel}
 License:       GPL v2
 Group:         Applications/Emulators
-Source0:       http://download.virtualbox.org/virtualbox/%{version}_RC3/%{pname}-%{version}_RC3.tar.bz2
-# Source0-md5: cc019414a29aa021d82952d763541a2c
-Source1:       http://download.virtualbox.org/virtualbox/%{version}_RC3/VBoxGuestAdditions_%{version}_RC3.iso
-# Source1-md5: 820ca266e3c6463a58a4d10769791bc2
+Source0:       http://download.virtualbox.org/virtualbox/%{version}/%{pname}-%{version}.tar.bz2
+# Source0-md5: 99349df34caacdecbb7cf3908631c3f3
+Source1:       http://download.virtualbox.org/virtualbox/%{version}/VBoxGuestAdditions_%{version}.iso
+# Source1-md5: e49046cd56398f9f9b8410154f1a0393
 Source3:       %{pname}-vboxdrv.init
 Source4:       %{pname}-vboxguest.init
 Source5:       %{pname}-vboxnetflt.init
@@ -61,19 +61,16 @@ Source15:   %{pname}-vboxsf-modules-load.conf
 Source16:      %{pname}-vboxnetadp-modules-load.conf
 Source17:      %{pname}-vboxpci-modules-load.conf
 Patch0:                %{pname}-configure-spaces.patch
-Patch1:                %{pname}-export_modules.patch
-Patch2:                %{pname}-VBoxSysInfo.patch
-Patch3:                %{pname}-warning_workaround.patch
-
-Patch5:                %{pname}-dri.patch
-Patch6:                %{pname}-disable_build_NetBiosBin.patch
-Patch7:                xserver-1.12.patch
+Patch1:                %{pname}-VBoxSysInfo.patch
+Patch2:                %{pname}-warning_workaround.patch
+Patch3:                %{pname}-dri.patch
+Patch4:                %{pname}-disable_build_NetBiosBin.patch
+Patch5:                xserver-1.12.patch
 # ubuntu patches
-Patch10:               16-no-update.patch
-Patch11:               18-system-xorg.patch
+Patch10:       16-no-update.patch
+Patch11:       18-system-xorg.patch
 # /ubuntu patches
 URL:           http://www.virtualbox.org/
-BuildRequires: rpmbuild(macros) >= 1.535
 %if %{with userspace}
 %ifarch %{x8664}
 BuildRequires: gcc-multilib
@@ -102,8 +99,11 @@ BuildRequires:      bash
 BuildRequires: bcc
 BuildRequires: bin86
 BuildRequires: curl-devel
+BuildRequires: device-mapper-devel
 %{?with_doc:BuildRequires:     docbook-dtd44-xml}
 BuildRequires: gcc >= 5:3.2.3
+%{?with_webservice:BuildRequires:      gsoap-devel}
+BuildRequires: kBuild >= 0.1.9998-2
 BuildRequires: libIDL-devel
 BuildRequires: libcap-static
 BuildRequires: libdrm-devel
@@ -111,7 +111,7 @@ BuildRequires:      libpng-devel >= 1.2.5
 BuildRequires: libstdc++-devel >= 5:3.2.3
 BuildRequires: libstdc++-static >= 5:3.2.3
 BuildRequires: libuuid-devel
-BuildRequires: libvncserver-devel >= 0.9.7
+BuildRequires: libvncserver-devel >= 0.9.9
 BuildRequires: libxml2-devel >= 2.6.26
 BuildRequires: libxslt-devel >= 1.1.17
 BuildRequires: libxslt-progs >= 1.1.17
@@ -138,6 +138,7 @@ BuildRequires:      texlive-xetex
 BuildRequires: which
 BuildRequires: xalan-c-devel >= 1.10.0
 BuildRequires: xerces-c-devel >= 2.6.0
+BuildRequires: yasm
 BuildRequires: zlib-devel >= 1.2.1
 %endif
 %if %{with dist_kernel}
@@ -148,16 +149,21 @@ Requires(postun): /usr/sbin/groupdel
 Requires(pre): /usr/bin/getgid
 Requires(pre): /usr/sbin/groupadd
 Requires:      QtCore >= 4.7.0
+Requires:      desktop-file-utils
+Requires:      libvncserver >= 0.9.9
+Requires:      udev-core
 Suggests:      gxmessage
 Provides:      group(vbox)
+Obsoletes:     VirtualBox-udev < %{version}-%{release}
 ExclusiveArch: %{ix86} %{x8664}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %ifarch %{x8664}
-%define                vbox_platform   linux.amd64
+%define                vbox_arch       amd64
 %else
-%define                vbox_platform   linux.x86
+%define                vbox_arch       x86
 %endif
+%define                vbox_platform   linux.%{vbox_arch}
 %define                outdir          out/%{vbox_platform}/release/bin
 %define                _sbindir        /sbin
 
@@ -171,6 +177,15 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 # which lead to 'Stripping ... ELF shared libraries... (...)/nls/qt_ro.qm: File format not recognized'
 %define                _noautostrip    .*%{_libdir}/%{name}/.*
 
+%define                vbox_kernel_post(d:)    \
+if [ -x /etc/rc.d/init.d/%{-d*} ]; then \
+       %{expand:%service %%{-d*} restart %%*} \
+else \
+       /sbin/rmmod %{-d*} || : \
+       /sbin/modprobe -s %{-d*} || : \
+fi \
+%{nil}
+
 %description
 Oracle VirtualBox is a general-purpose full virtualizer for x86
 hardware. Targeted at server, desktop and embedded use, it is now the
@@ -223,20 +238,6 @@ Group:             Documentation
 %description doc
 This package contains VirtualBox User Manual.
 
-%package udev
-Summary:       udev rules for VirtualBox kernel modules
-Summary(pl.UTF-8):     Reguły udev dla modułów jądra Linuksa dla VirtualBoksa
-Group:         Base/Kernel
-Requires:      udev-core
-
-%description udev
-udev rules for VirtualBox kernel modules.
-
-You should install this package in your Host OS and in Guest OS.
-
-%description udev -l pl.UTF-8
-Reguły udev dla modułów jądra Linuksa dla VirtualBoksa.
-
 %package additions
 Summary:       VirtualBox Guest Additions
 Group:         Base
@@ -252,7 +253,7 @@ You should install this package in your Host OS.
 %package guest
 Summary:       VirtualBox Guest Additions
 Group:         Base
-Requires:      xorg-driver-input-vboxmouse = %{version}-%{release}
+Obsoletes:     xorg-driver-input-vboxmouse < %{version}-%{release}
 Requires:      xorg-driver-video-vboxvideo = %{version}-%{release}
 Suggests:      kernel%{_alt_kernel}-misc-vboxsf = %{version}-%{rel}@%{_kernel_ver_str}
 Suggests:      kernel%{_alt_kernel}-misc-vboxvideo = %{version}-%{rel}@%{_kernel_ver_str}
@@ -272,20 +273,6 @@ Group:             Base
 PAM module (Pluggable Authentication Module) which can be used to
 perform automated guest logons.
 
-%package -n xorg-driver-input-vboxmouse
-Summary:       X.org mouse driver for VirtualBox guest OS
-Summary(pl.UTF-8):     Sterownik myszy dla systemu gościa w VirtualBoksie
-Group:         X11/Applications
-Requires:      xorg-xserver-server >= 1.0.99.901
-Requires:      xorg-xserver-server(xinput-abi) <= 16.0
-Requires:      xorg-xserver-server(xinput-abi) >= 4.0
-
-%description -n xorg-driver-input-vboxmouse
-X.org mouse driver for VirtualBox guest OS.
-
-%description -n xorg-driver-input-vboxmouse  -l pl.UTF-8
-Sterownik myszy dla systemu gościa w VirtualBoksie.
-
 %package -n xorg-driver-video-vboxvideo
 Summary:       X.org video driver for VirtualBox guest OS
 Summary(pl.UTF-8):     Sterownik grafiki dla systemu gościa w VirtualBoksie
@@ -293,7 +280,7 @@ Group:              X11/Applications
 Requires:      Mesa-dri-driver-swrast
 Requires:      xorg-xserver-libdri >= 1.7.4
 Requires:      xorg-xserver-server >= 1.0.99.901
-Requires:      xorg-xserver-server(videodrv-abi) <= 12.0
+Requires:      xorg-xserver-server(videodrv-abi) <= 14.1
 Requires:      xorg-xserver-server(videodrv-abi) >= 2.0
 
 %description -n xorg-driver-video-vboxvideo
@@ -302,8 +289,24 @@ X.org video driver for VirtualBox guest OS.
 %description -n xorg-driver-video-vboxvideo -l pl.UTF-8
 Sterownik grafiki dla systemu gościa w VirtualBoksie.
 
+%package kernel-init-host
+Summary:       SysV initscripts for host kernel modules
+Group:         Base/Kernel
+
+%description kernel-init-host
+SysV initscripts for host kernel modules.
+
+%package kernel-init-guest
+Summary:       SysV initscripts for guest kernel modules
+Group:         Base/Kernel
+
+%description kernel-init-guest
+SysV initscripts for guest kernel modules.
+
 # KERNEL PACKAGES
+
 # KEEP ALL REGULAR SUBPACKAGES BEFORE KERNEL PACKAGES.
+
 %package -n kernel%{_alt_kernel}-misc-vboxguest
 Summary:       VirtualBox Guest Additions for Linux Module
 Summary(pl.UTF-8):     Moduł jądra Linuksa dla VirtualBoksa
@@ -317,6 +320,7 @@ Requires:   dev >= 2.9.0-7
 Requires(postun):      %releq_kernel
 %endif
 Requires:      systemd-units >= 38
+Suggests:      %{name}-kernel-init-guest >= %{version}-%{rel}
 Provides:      kernel(vboxguest) = %{version}-%{rel}
 Obsoletes:     kernel%{_alt_kernel}-misc-vboxadd
 Conflicts:     kernel%{_alt_kernel}-misc-vboxdrv
@@ -343,6 +347,7 @@ Requires:   dev >= 2.9.0-7
 Requires(postun):      %releq_kernel
 %endif
 Requires:      systemd-units >= 38
+Suggests:      %{name}-kernel-init-host >= %{version}-%{rel}
 Provides:      kernel(vboxdrv) = %{version}-%{rel}
 
 %description -n kernel%{_alt_kernel}-misc-vboxdrv
@@ -368,6 +373,7 @@ Requires:   kernel%{_alt_kernel}-misc-vboxdrv
 Requires(postun):      %releq_kernel
 %endif
 Requires:      systemd-units >= 38
+Suggests:      %{name}-kernel-init-host >= %{version}-%{rel}
 Provides:      kernel(vboxnetflt) = %{version}-%{rel}
 
 %description -n kernel%{_alt_kernel}-misc-vboxnetadp
@@ -393,6 +399,7 @@ Requires:   kernel%{_alt_kernel}-misc-vboxdrv
 Requires(postun):      %releq_kernel
 %endif
 Requires:      systemd-units >= 38
+Suggests:      %{name}-kernel-init-host >= %{version}-%{rel}
 Provides:      kernel(vboxnetflt) = %{version}-%{rel}
 
 %description -n kernel%{_alt_kernel}-misc-vboxnetflt
@@ -418,6 +425,7 @@ Requires:   kernel%{_alt_kernel}-misc-vboxdrv
 Requires(postun):      %releq_kernel
 %endif
 Requires:      systemd-units >= 38
+Suggests:      %{name}-kernel-init-host >= %{version}-%{rel}
 Provides:      kernel(vboxpci) = %{version}-%{rel}
 
 %description -n kernel%{_alt_kernel}-misc-vboxpci
@@ -444,6 +452,7 @@ Requires:   kernel%{_alt_kernel}-misc-vboxguest
 Requires(postun):      %releq_kernel
 %endif
 Requires:      systemd-units >= 38
+Suggests:      %{name}-kernel-init-guest >= %{version}-%{rel}
 Provides:      kernel(vboxsf) = %{version}-%{rel}
 Obsoletes:     kernel%{_alt_kernel}-misc-vboxvfs
 
@@ -465,9 +474,7 @@ Requires(post,postun):      /sbin/depmod
 Requires:      dev >= 2.9.0-7
 %if %{with dist_kernel}
 %requires_releq_kernel
-%if "%{rpm_build_macros}" >= "1.531"
 %requires_releq_kernel -n drm
-%endif
 Requires(postun):      %releq_kernel
 %endif
 Provides:      kernel(vboxvideo) = %{version}-%{rel}
@@ -481,20 +488,22 @@ You should install this package in your Guest OS.
 Moduł jądra Linuksa dla VirtualBoksa - sterownik obsługi DRM.
 
 %prep
-%setup -q -n %{pname}-%{version}_RC3
+%setup -q -n %{pname}-%{version}
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-
+%patch4 -p1
 %patch5 -p1
-%patch6 -p1
-%patch7 -p1
 
 %{__sed} -i -e 's,@VBOX_DOC_PATH@,%{_docdir}/%{name}-%{version},' \
        -e 's/Categories=.*/Categories=Utility;Emulator;/' src/VBox/Installer/common/virtualbox.desktop.in
 
-sed 's#@LIBDIR@#%{_libdir}#' < %{SOURCE9} > VirtualBox-wrapper.sh
+# Respect LDFLAGS
+%{__sed} -i -e "s@_LDFLAGS\.%{vbox_arch}*.*=@& %{rpmldflags}@g" \
+       -i Config.kmk src/libs/xpcom18a4/Config.kmk
+
+%{__sed} 's#@LIBDIR@#%{_libdir}#' < %{SOURCE9} > VirtualBox-wrapper.sh
 
 install -d PLD-MODULE-BUILD/{GuestDrivers,HostDrivers}
 cd PLD-MODULE-BUILD
@@ -507,6 +516,8 @@ cd -
 %patch10 -p1
 %patch11 -p1
 
+# using system kBuild package
+%{__rm} -r kBuild
 
 %build
 %if %{with userspace}
@@ -518,15 +529,21 @@ echo "VBOX_WITH_TESTCASES := " > LocalConfig.kmk
        --disable-java \
        --disable-hardening \
        --disable-kmods \
-       --enable-vnc
+       --enable-vnc \
+       %{__enable webservice} \
+       %{nil}
 
 XSERVER_VERSION=$(rpm -q --queryformat '%{VERSION}\n' xorg-xserver-server-devel | awk -F. ' { print $1 $2 } ' 2> /dev/null || echo ERROR)
-. ./env.sh && \
-kmk -j1 \
+kmk %{?_smp_mflags} \
        %{?with_verbose:KBUILD_VERBOSE=3} \
-       USER=$(id -un) \
+       USER=%(id -un) \
        VBOX_VERSION_STRING='$(VBOX_VERSION_MAJOR).$(VBOX_VERSION_MINOR).$(VBOX_VERSION_BUILD)'_PLD \
-       XSERVER_VERSION="$XSERVER_VERSION"
+       XSERVER_VERSION="$XSERVER_VERSION" \
+       VBOX_USE_SYSTEM_XORG_HEADERS=1 \
+       TOOL_GCC3_CFLAGS="%{rpmcflags}" \
+       TOOL_GCC3_CXXFLAGS="%{rpmcxxflags}" \
+       VBOX_GCC_OPT="%{rpmcxxflags}" \
+       %{nil}
 %endif
 
 %if %{with kernel}
@@ -541,7 +558,7 @@ cd ../GuestDrivers
 %build_kernel_modules -m vboxguest -C vboxguest
 cp -a vboxguest/Module.symvers vboxsf
 %build_kernel_modules -m vboxsf -C vboxsf -c
-%build_kernel_modules -m vboxvideo -C vboxvideo_drm
+%build_kernel_modules -m vboxvideo -C vboxvideo
 cd ../..
 %{__cc} %{rpmcflags} %{rpmldflags} -Wall -Werror src/VBox/Additions/linux/sharedfolders/{mount.vboxsf.c,vbsfmount.c} -o mount.vboxsf
 %endif
@@ -552,60 +569,62 @@ rm -rf $RPM_BUILD_ROOT
 %if %{with userspace}
 install -d $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_libdir}/%{pname}/ExtensionPacks} \
        $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}} \
-       $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input}
+       $RPM_BUILD_ROOT%{_libdir}/xorg/modules/{drivers,dri,input} \
+       $RPM_BUILD_ROOT{/lib/udev,/etc/udev/rules}
 
 # test if we can hardlink -- %{_builddir} and $RPM_BUILD_ROOT on same partition
 if cp -al VBox.png $RPM_BUILD_ROOT/Vbox.png 2>/dev/null; then
        l=l
-       rm -f $RPM_BUILD_ROOT/VBox.png
+       %{__rm} -f $RPM_BUILD_ROOT/VBox.png
 fi
 
 cp -a$l %{outdir}/* $RPM_BUILD_ROOT%{_libdir}/%{pname}
+
+%if %{with doc}
 ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual.pdf
+ln -sf %{_docdir}/%{pname}-doc-%{version}/UserManual_fr_FR.pdf $RPM_BUILD_ROOT%{_libdir}/%{pname}/UserManual_fr_FR.pdf
+%endif
 
-cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
+install -d $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions
+cp -a$l %{SOURCE1} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/VBoxGuestAdditions.iso
 install -p %{SOURCE10} $RPM_BUILD_ROOT%{_sbindir}/mount.vdi
 install -p VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_libdir}/%{pname}
 for f in {VBox{BFE,Headless,Manage,SDL,SVC,Tunctl,XPCOMIPCD},VirtualBox}; do
        ln -s %{_libdir}/%{pname}/VirtualBox-wrapper.sh $RPM_BUILD_ROOT%{_bindir}/$f
 done
 
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/VBox.png,%{_pixmapsdir}/virtualbox.png}
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/VBox.png,%{_pixmapsdir}/virtualbox.png}
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname},%{_desktopdir}}/virtualbox.desktop
 
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/vboxmouse_drv.so,%{_libdir}/xorg/modules/input/vboxmouse_drv.so}
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
-# xorg other driver versions
-rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxmouse_drv*.{o,so}
-rm -vf $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxvideo_drv*.{o,so}
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/vboxvideo_drv_system.so,%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so}
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions/VBoxOGL.so,%{_libdir}/xorg/modules/dri/vboxvideo_dri.so}
 
 # XXX: where else to install them that vboxvideo_dri.so finds them? patch with rpath?
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
-
-install -d $RPM_BUILD_ROOT/etc/udev/rules.d
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLarrayspu.so
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLcrutil.so
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLerrorspu.so
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLfeedbackspu.so
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpackspu.so
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_libdir}}/VBoxOGLpassthroughspu.so
+
 cp -a %{SOURCE11} $RPM_BUILD_ROOT/etc/udev/rules.d/virtualbox.rules
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname},/lib/udev}/VBoxCreateUSBNode.sh
 
 install -d $RPM_BUILD_ROOT/%{_lib}/security
-mv $RPM_BUILD_ROOT{%{_libdir}/VirtualBox/additions,/%{_lib}/security}/pam_vbox.so
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,/%{_lib}/security}/pam_vbox.so
 
 # cleanup unpackaged
-rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
-rm -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack-license.*
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/{src,sdk,testcase}
+%{__rm} -r $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/src
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxkeyboard.tar.bz2
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/tst*
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack-license.*
 
 # Guest Only Tools
 install -d $RPM_BUILD_ROOT/etc/{X11/xinit/xinitrc.d,xdg/autostart}
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxClient
-mv $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxControl
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxService
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxClient
+%{__mv} $RPM_BUILD_ROOT{%{_libdir}/%{pname}/additions,%{_bindir}}/VBoxControl
 install -p -D src/VBox/Additions/x11/Installer/98vboxadd-xclient \
        $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
 cp -p src/VBox/Additions/x11/Installer/vboxclient.desktop \
@@ -613,16 +632,31 @@ cp -p src/VBox/Additions/x11/Installer/vboxclient.desktop \
 
 # unknown - checkme
 %if 1
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPInstall
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPLoggerCtl
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/SUPUninstall
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/VBox.sh
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/vboxshell.py
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/xpidl
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/runasroot.sh
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/load.sh
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/loadall.sh
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/CPUMInternal.d
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/cpumctx.d
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/vbox-arch-types.d
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/vbox-types.d
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/vm.d
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/lib/%{vbox_arch}/x86.d
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/dtrace/testcase/%{vbox_arch}/vbox-vm-struct-test.d
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/helpers/generate_service_file
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/VBoxHeadlessXOrg.sh
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/generated.sh
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/init_template.sh
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/scripts/install_service
 %endif
 
 # packaged by kernel part
-rm $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{pname}/additions/mount.vboxsf
 %endif
 
 %if %{with kernel}
@@ -639,17 +673,17 @@ install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/vboxpci
 %install_kernel_modules -m PLD-MODULE-BUILD/HostDrivers/vboxpci/vboxpci -d misc
 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxguest/vboxguest -d misc
 %install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxsf/vboxsf -d misc
-%install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo_drm/vboxvideo -d misc
+%install_kernel_modules -m PLD-MODULE-BUILD/GuestDrivers/vboxvideo/vboxvideo -d misc
 
 install -p mount.vboxsf $RPM_BUILD_ROOT%{_sbindir}/mount.vboxsf
 
 # Tell systemd to load modules
-install -p %{SOURCE12} $RPM_BUILD_ROOT/etc/modules-load.d/vboxdrv.conf
-install -p %{SOURCE13} $RPM_BUILD_ROOT/etc/modules-load.d/vboxguest.conf
-install -p %{SOURCE14} $RPM_BUILD_ROOT/etc/modules-load.d/vboxnetflt.conf
-install -p %{SOURCE15} $RPM_BUILD_ROOT/etc/modules-load.d/vboxsf.conf
-install -p %{SOURCE16} $RPM_BUILD_ROOT/etc/modules-load.d/vboxnetadp.conf
-install -p %{SOURCE17} $RPM_BUILD_ROOT/etc/modules-load.d/vboxpci.conf
+cp -p %{SOURCE12} $RPM_BUILD_ROOT/etc/modules-load.d/vboxdrv.conf
+cp -p %{SOURCE13} $RPM_BUILD_ROOT/etc/modules-load.d/vboxguest.conf
+cp -p %{SOURCE14} $RPM_BUILD_ROOT/etc/modules-load.d/vboxnetflt.conf
+cp -p %{SOURCE15} $RPM_BUILD_ROOT/etc/modules-load.d/vboxsf.conf
+cp -p %{SOURCE16} $RPM_BUILD_ROOT/etc/modules-load.d/vboxnetadp.conf
+cp -p %{SOURCE17} $RPM_BUILD_ROOT/etc/modules-load.d/vboxpci.conf
 
 # And mask module-loading services
 ln -sf /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/vboxdrv.service
@@ -668,6 +702,15 @@ rm -rf $RPM_BUILD_ROOT
 
 %post
 %update_desktop_database
+for i in /sys/bus/usb/devices/*; do
+       if [ -r "$i/dev" ]; then
+               dev="`cat "$i/dev" 2>/dev/null || true`"
+               major="`expr "$dev" : '\(.*\):' 2> /dev/null || true`"
+               minor="`expr "$dev" : '.*:\(.*\)' 2> /dev/null || true`"
+               class="`cat $i/bDeviceClass 2> /dev/null || true`"
+               /lib/udev/VBoxCreateUSBNode.sh "$major" "$minor" "$class" vbox 2>/dev/null
+       fi
+done
 
 cat << 'EOF'
 You must install vboxdrv kernel module for this software to work:
@@ -690,112 +733,126 @@ if [ "$1" = "0" ]; then
        %groupremove vbox
 fi
 
-%post  -n kernel%{_alt_kernel}-misc-vboxguest
-%depmod %{_kernel_ver}
-/sbin/chkconfig --add vboxguest
-%service vboxguest restart "VirtualBox Guest additions driver"
-%systemd_reload
-
-%postun        -n kernel%{_alt_kernel}-misc-vboxguest
-%depmod %{_kernel_ver}
-
-%preun -n kernel%{_alt_kernel}-misc-vboxguest
-if [ "$1" = "0" ]; then
-       %service vboxguest stop
-       /sbin/chkconfig --del vboxguest
-fi
-
 %post  -n kernel%{_alt_kernel}-misc-vboxdrv
 %depmod %{_kernel_ver}
-/sbin/chkconfig --add vboxdrv
-%service vboxdrv restart "VirtualBox Support Driver"
-%systemd_reload
-
-%postun        -n kernel%{_alt_kernel}-misc-vboxdrv
-%depmod %{_kernel_ver}
+%vbox_kernel_post -d vboxdrv VirtualBox Support Driver
 
 %preun -n kernel%{_alt_kernel}-misc-vboxdrv
 if [ "$1" = "0" ]; then
        %service vboxdrv stop
-       /sbin/chkconfig --del vboxdrv
 fi
 
-%post  -n kernel%{_alt_kernel}-misc-vboxnetadp
+%postun        -n kernel%{_alt_kernel}-misc-vboxdrv
 %depmod %{_kernel_ver}
-/sbin/chkconfig --add vboxnetadp
-%service vboxnetadp restart "VirtualBox Network HostOnly driver"
-%systemd_reload
 
-%postun        -n kernel%{_alt_kernel}-misc-vboxnetadp
+%post  -n kernel%{_alt_kernel}-misc-vboxnetadp
 %depmod %{_kernel_ver}
+%vbox_kernel_post -d vboxnetadp VirtualBox Network HostOnly driver
 
 %preun -n kernel%{_alt_kernel}-misc-vboxnetadp
 if [ "$1" = "0" ]; then
        %service vboxnetadp stop
-       /sbin/chkconfig --del vboxnetadp
 fi
 
-%post  -n kernel%{_alt_kernel}-misc-vboxnetflt
+%postun        -n kernel%{_alt_kernel}-misc-vboxnetadp
 %depmod %{_kernel_ver}
-/sbin/chkconfig --add vboxnetflt
-%service vboxnetflt restart "VirtualBox Network Filter driver"
-%systemd_reload
 
-%postun        -n kernel%{_alt_kernel}-misc-vboxnetflt
+%post  -n kernel%{_alt_kernel}-misc-vboxnetflt
 %depmod %{_kernel_ver}
+%vbox_kernel_post -d vboxnetflt VirtualBox Network Filter driver
 
 %preun -n kernel%{_alt_kernel}-misc-vboxnetflt
 if [ "$1" = "0" ]; then
        %service vboxnetflt stop
-       /sbin/chkconfig --del vboxnetflt
 fi
 
-%post  -n kernel%{_alt_kernel}-misc-vboxpci
+%postun        -n kernel%{_alt_kernel}-misc-vboxnetflt
 %depmod %{_kernel_ver}
-/sbin/chkconfig --add vboxpci
-%service vboxnetflt restart "VirtualBox PCI passthrough driver"
-%systemd_reload
 
-%postun        -n kernel%{_alt_kernel}-misc-vboxpci
+%post  -n kernel%{_alt_kernel}-misc-vboxpci
 %depmod %{_kernel_ver}
+%vbox_kernel_post -d vboxpci VirtualBox PCI passthrough driver
 
 %preun -n kernel%{_alt_kernel}-misc-vboxpci
 if [ "$1" = "0" ]; then
        %service vboxpci stop
-       /sbin/chkconfig --del vboxpci
 fi
 
-%post  -n kernel%{_alt_kernel}-misc-vboxsf
+%postun        -n kernel%{_alt_kernel}-misc-vboxpci
 %depmod %{_kernel_ver}
-/sbin/chkconfig --add vboxsf
-%service vboxsf restart "VirtualBox Host file system access (Shared Folders)"
-%systemd_reload
 
-%postun        -n kernel%{_alt_kernel}-misc-vboxsf
+%post  -n kernel%{_alt_kernel}-misc-vboxguest
 %depmod %{_kernel_ver}
+%vbox_kernel_post -d vboxguest VirtualBox Guest additions driver
+
+%preun -n kernel%{_alt_kernel}-misc-vboxguest
+if [ "$1" = "0" ]; then
+       %service vboxguest stop
+fi
+
+%postun        -n kernel%{_alt_kernel}-misc-vboxguest
+%depmod %{_kernel_ver}
+
+%post  -n kernel%{_alt_kernel}-misc-vboxsf
+%depmod %{_kernel_ver}
+%vbox_kernel_post -d vboxsf VirtualBox Host file system access (Shared Folders)
 
 %preun -n kernel%{_alt_kernel}-misc-vboxsf
 if [ "$1" = "0" ]; then
        %service vboxsf stop
-       /sbin/chkconfig --del vboxsf
 fi
 
+%postun        -n kernel%{_alt_kernel}-misc-vboxsf
+%depmod %{_kernel_ver}
+
 %post  -n kernel%{_alt_kernel}-misc-vboxvideo
 %depmod %{_kernel_ver}
 
 %postun        -n kernel%{_alt_kernel}-misc-vboxvideo
 %depmod %{_kernel_ver}
 
+%post kernel-init-host
+/sbin/chkconfig --add vboxdrv
+/sbin/chkconfig --add vboxnetadp
+/sbin/chkconfig --add vboxnetflt
+/sbin/chkconfig --add vboxpci
+%systemd_reload
+
+%preun kernel-init-host
+if [ "$1" = "0" ]; then
+       /sbin/chkconfig --del vboxdrv
+       /sbin/chkconfig --del vboxnetadp
+       /sbin/chkconfig --del vboxnetflt
+       /sbin/chkconfig --del vboxpci
+fi
+
+%postun kernel-init-host
+%systemd_reload
+
+%post kernel-init-guest
+/sbin/chkconfig --add vboxguest
+/sbin/chkconfig --add vboxsf
+%systemd_reload
+
+%preun kernel-init-guest
+if [ "$1" = "0" ]; then
+       /sbin/chkconfig --del vboxguest
+       /sbin/chkconfig --del vboxsf
+fi
+
+%postun kernel-init-guest
+%systemd_reload
+
 %if %{with userspace}
 %files
 %defattr(644,root,root,755)
-%dir %{_libdir}/VirtualBox
-%dir %{_libdir}/VirtualBox/ExtensionPacks
-%dir %{_libdir}/VirtualBox/ExtensionPacks/VNC
-%dir %{_libdir}/VirtualBox/ExtensionPacks/VNC/linux*
-%dir %{_libdir}/VirtualBox/additions
-%dir %{_libdir}/VirtualBox/components
-%dir %{_libdir}/VirtualBox/nls
+%dir %{_libdir}/%{pname}
+%dir %{_libdir}/%{pname}/ExtensionPacks
+%dir %{_libdir}/%{pname}/ExtensionPacks/VNC
+%dir %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*
+%dir %{_libdir}/%{pname}/additions
+%dir %{_libdir}/%{pname}/components
+%dir %{_libdir}/%{pname}/nls
 %attr(755,root,root) %{_bindir}/VBoxBFE
 %attr(755,root,root) %{_bindir}/VBoxHeadless
 %attr(755,root,root) %{_bindir}/VBoxManage
@@ -805,109 +862,114 @@ fi
 %attr(755,root,root) %{_bindir}/VBoxXPCOMIPCD
 %attr(755,root,root) %{_bindir}/VirtualBox
 %attr(755,root,root) %{_sbindir}/mount.vdi
-%attr(755,root,root) %{_libdir}/VirtualBox/DBGCPlugInDiggers.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuth.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxAuthSimple.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxAutostart
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxBFE
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxBalloonCtrl
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxCreateUSBNode.sh
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDbg.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD2.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDD.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDDU.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxDragAndDropSvc.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxExtPackHelperApp
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestControlSvc.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxGuestPropSvc.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxHeadless
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxKeyboard.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxManage
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetAdpCtl
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxNetDHCP
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhostcrutil.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLhosterrorspu.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxOGLrenderspu.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxPython*.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM.so
+%attr(755,root,root) %{_libdir}/%{pname}/DBGCPlugInDiggers.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxAuth.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxAuthSimple.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxAutostart
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxBFE
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxBalloonCtrl
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxDbg.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxDD2.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxDD.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxDDU.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxDragAndDropSvc.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxExtPackHelperApp
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestControlSvc.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxGuestPropSvc.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxHeadless
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxHostChannel.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxKeyboard.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxManage
+%if %{with doc}
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxManageHelp
+%endif
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxNetAdpCtl
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxNetDHCP
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhostcrutil.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLhosterrorspu.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxOGLrenderspu.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxPython*.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM.so
 %ifarch %{ix86}
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM32.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxREM64.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM32.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxREM64.so
 %endif
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxRT.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSDL
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedClipboard.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedCrOpenGL.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSharedFolders.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSVC
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxSysInfo.sh
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxTestOGL
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxTunctl
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMM.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxVMMPreload
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMC.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOMIPCD
-%attr(755,root,root) %{_libdir}/VirtualBox/VBoxXPCOM.so
-%attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox
-%attr(755,root,root) %{_libdir}/VirtualBox/VirtualBox-wrapper.sh
-%attr(755,root,root) %{_libdir}/VirtualBox/ExtensionPacks/VNC/linux*/VBoxVNC*.so
-%{_libdir}/VirtualBox/VBoxDD2GC.gc
-%{_libdir}/VirtualBox/VBoxDDGC.gc
-%{_libdir}/VirtualBox/VMMGC.gc
-%{_libdir}/VirtualBox/VBoxDD2R0.r0
-%{_libdir}/VirtualBox/VBoxDDR0.r0
-%{_libdir}/VirtualBox/VMMR0.r0
-#%{_libdir}/VirtualBox/EfiThunk
-%{_libdir}/VirtualBox/VBoxEFI32.fd
-%{_libdir}/VirtualBox/VBoxEFI64.fd
-%{_libdir}/VirtualBox/components/VBoxXPCOMBase.xpt
-%{_libdir}/VirtualBox/ExtensionPacks/VNC/ExtPack.xml
-%{_libdir}/VirtualBox/components/VirtualBox_XPCOM.xpt
-%attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxC.so
-%attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxSVCM.so
-%attr(755,root,root) %{_libdir}/VirtualBox/components/VBoxXPCOMIPCC.so
-%lang(ar) %{_libdir}/VirtualBox/nls/*_ar.qm
-%lang(bg) %{_libdir}/VirtualBox/nls/*_bg.qm
-%lang(ca) %{_libdir}/VirtualBox/nls/*_ca.qm
-%lang(ca_VA) %{_libdir}/VirtualBox/nls/*_ca_VA.qm
-%lang(cs) %{_libdir}/VirtualBox/nls/*_cs.qm
-%lang(da) %{_libdir}/VirtualBox/nls/*_da.qm
-%lang(de) %{_libdir}/VirtualBox/nls/*_de.qm
-%lang(el) %{_libdir}/VirtualBox/nls/*_el.qm
-%lang(en) %{_libdir}/VirtualBox/nls/*_en.qm
-%lang(es) %{_libdir}/VirtualBox/nls/*_es.qm
-%lang(eu) %{_libdir}/VirtualBox/nls/*_eu.qm
-%lang(fi) %{_libdir}/VirtualBox/nls/*_fi.qm
-%lang(fr) %{_libdir}/VirtualBox/nls/*_fr.qm
-%lang(gl_ES) %{_libdir}/VirtualBox/nls/*_gl_ES.qm
-%lang(hu) %{_libdir}/VirtualBox/nls/*_hu.qm
-%lang(id) %{_libdir}/VirtualBox/nls/*_id.qm
-%lang(it) %{_libdir}/VirtualBox/nls/*_it.qm
-%lang(ja) %{_libdir}/VirtualBox/nls/*_ja.qm
-%lang(km_KH) %{_libdir}/VirtualBox/nls/*_km_KH.qm
-%lang(ko) %{_libdir}/VirtualBox/nls/*_ko.qm
-%lang(lt) %{_libdir}/VirtualBox/nls/*_lt.qm
-%lang(nl) %{_libdir}/VirtualBox/nls/*_nl.qm
-%lang(pl) %{_libdir}/VirtualBox/nls/*_pl.qm
-%lang(pt) %{_libdir}/VirtualBox/nls/*_pt.qm
-%lang(pt_BR) %{_libdir}/VirtualBox/nls/*_pt_BR.qm
-%lang(ro) %{_libdir}/VirtualBox/nls/*_ro.qm
-%lang(ru) %{_libdir}/VirtualBox/nls/*_ru.qm
-%lang(sk) %{_libdir}/VirtualBox/nls/*_sk.qm
-%lang(sr) %{_libdir}/VirtualBox/nls/*_sr.qm
-%lang(sv) %{_libdir}/VirtualBox/nls/*_sv.qm
-%lang(tr) %{_libdir}/VirtualBox/nls/*_tr.qm
-%lang(uk) %{_libdir}/VirtualBox/nls/*_uk.qm
-%lang(zh_CN) %{_libdir}/VirtualBox/nls/*_zh_CN.qm
-%lang(zh_TW) %{_libdir}/VirtualBox/nls/*_zh_TW.qm
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxRT.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxSDL
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedClipboard.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedCrOpenGL.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxSharedFolders.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxSVC
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxSysInfo.sh
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxTestOGL
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxTunctl
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxVMM.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxVMMPreload
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMC.so
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOMIPCD
+%attr(755,root,root) %{_libdir}/%{pname}/VBoxXPCOM.so
+%attr(755,root,root) %{_libdir}/%{pname}/VirtualBox
+%attr(755,root,root) %{_libdir}/%{pname}/VirtualBox-wrapper.sh
+%attr(755,root,root) %{_libdir}/%{pname}/ExtensionPacks/VNC/linux*/VBoxVNC*.so
+%{_libdir}/%{pname}/VBoxDD2GC.gc
+%{_libdir}/%{pname}/VBoxDDGC.gc
+%{_libdir}/%{pname}/VMMGC.gc
+%{_libdir}/%{pname}/VBoxDD2R0.r0
+%{_libdir}/%{pname}/VBoxDDR0.r0
+%{_libdir}/%{pname}/VMMR0.r0
+#%{_libdir}/%{pname}/EfiThunk
+%{_libdir}/%{pname}/VBoxEFI32.fd
+%{_libdir}/%{pname}/VBoxEFI64.fd
+%{_libdir}/%{pname}/components/VBoxXPCOMBase.xpt
+%{_libdir}/%{pname}/ExtensionPacks/VNC/ExtPack.xml
+%{_libdir}/%{pname}/components/VirtualBox_XPCOM.xpt
+%attr(755,root,root) %{_libdir}/%{pname}/components/VBoxC.so
+%attr(755,root,root) %{_libdir}/%{pname}/components/VBoxSVCM.so
+%attr(755,root,root) %{_libdir}/%{pname}/components/VBoxXPCOMIPCC.so
+%lang(bg) %{_libdir}/%{pname}/nls/*_bg.qm
+%lang(ca) %{_libdir}/%{pname}/nls/*_ca.qm
+%lang(ca_VA) %{_libdir}/%{pname}/nls/*_ca_VA.qm
+%lang(cs) %{_libdir}/%{pname}/nls/*_cs.qm
+%lang(da) %{_libdir}/%{pname}/nls/*_da.qm
+%lang(de) %{_libdir}/%{pname}/nls/*_de.qm
+%lang(en) %{_libdir}/%{pname}/nls/*_en.qm
+%lang(es) %{_libdir}/%{pname}/nls/*_es.qm
+%lang(eu) %{_libdir}/%{pname}/nls/*_eu.qm
+%lang(fi) %{_libdir}/%{pname}/nls/*_fa_IR.qm
+%lang(fi) %{_libdir}/%{pname}/nls/*_fi.qm
+%lang(fr) %{_libdir}/%{pname}/nls/*_fr.qm
+%lang(gl_ES) %{_libdir}/%{pname}/nls/*_gl_ES.qm
+%lang(hu) %{_libdir}/%{pname}/nls/*_hu.qm
+%lang(id) %{_libdir}/%{pname}/nls/*_id.qm
+%lang(it) %{_libdir}/%{pname}/nls/*_it.qm
+%lang(ja) %{_libdir}/%{pname}/nls/*_ja.qm
+%lang(km_KH) %{_libdir}/%{pname}/nls/*_km_KH.qm
+%lang(ko) %{_libdir}/%{pname}/nls/*_ko.qm
+%lang(lt) %{_libdir}/%{pname}/nls/*_lt.qm
+%lang(nl) %{_libdir}/%{pname}/nls/*_nl.qm
+%lang(pl) %{_libdir}/%{pname}/nls/*_pl.qm
+%lang(pt) %{_libdir}/%{pname}/nls/*_pt.qm
+%lang(pt_BR) %{_libdir}/%{pname}/nls/*_pt_BR.qm
+%lang(ro) %{_libdir}/%{pname}/nls/*_ro.qm
+%lang(ru) %{_libdir}/%{pname}/nls/*_ru.qm
+%lang(sk) %{_libdir}/%{pname}/nls/*_sk.qm
+%lang(sr) %{_libdir}/%{pname}/nls/*_sr.qm
+%lang(sv) %{_libdir}/%{pname}/nls/*_sv.qm
+%lang(tr) %{_libdir}/%{pname}/nls/*_tr.qm
+%lang(uk) %{_libdir}/%{pname}/nls/*_uk.qm
+%lang(zh_CN) %{_libdir}/%{pname}/nls/*_zh_CN.qm
+%lang(zh_TW) %{_libdir}/%{pname}/nls/*_zh_TW.qm
 %{_pixmapsdir}/virtualbox.png
 %{_desktopdir}/*.desktop
-%{_libdir}/VirtualBox/icons
-%{_libdir}/VirtualBox/virtualbox.xml
+%{_libdir}/%{pname}/icons
+%{_libdir}/%{pname}/virtualbox.xml
+
+%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
+%attr(755,root,root) /lib/udev/VBoxCreateUSBNode.sh
 
 %files additions
 %defattr(644,root,root,755)
-%{_libdir}/VirtualBox/additions/VBoxGuestAdditions.iso
+%{_libdir}/%{pname}/additions/VBoxGuestAdditions.iso
 
 %files guest
 %defattr(644,root,root,755)
@@ -920,11 +982,10 @@ fi
 /etc/X11/xinit/xinitrc.d/98vboxadd-xclient.sh
 /etc/xdg/autostart/vboxclient.desktop
 
-%attr(755,root,root) %{_libdir}/VirtualBox/additions/autorun.sh
-%attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd
-%attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-service
-%attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxadd-x11
-%attr(755,root,root) %{_libdir}/VirtualBox/additions/vboxvideo_drv_111.so
+%attr(755,root,root) %{_libdir}/%{pname}/additions/autorun.sh
+%attr(755,root,root) %{_libdir}/%{pname}/additions/vboxadd
+%attr(755,root,root) %{_libdir}/%{pname}/additions/vboxadd-service
+%attr(755,root,root) %{_libdir}/%{pname}/additions/vboxadd-x11
 
 %files -n pam-pam_vbox
 %defattr(644,root,root,755)
@@ -935,18 +996,12 @@ fi
 %defattr(644,root,root,755)
 # this is a symlink...
 %doc %{_libdir}/%{pname}/UserManual.pdf
+%lang(fr) %doc %{_libdir}/%{pname}/UserManual_fr_FR.pdf
 # ..to this file
 %doc %{outdir}/UserManual.pdf
+%lang(fr) %doc %{outdir}/UserManual_fr_FR.pdf
 %endif
 
-%files udev
-%defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) /etc/udev/rules.d/virtualbox.rules
-
-%files -n xorg-driver-input-vboxmouse
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/xorg/modules/input/vboxmouse_drv.so
-
 %files -n xorg-driver-video-vboxvideo
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so
@@ -961,46 +1016,52 @@ fi
 %endif
 
 %if %{with kernel}
-%files -n kernel%{_alt_kernel}-misc-vboxguest
+%files kernel-init-host
+%defattr(644,root,root,755)
+%attr(754,root,root) /etc/rc.d/init.d/vboxdrv
+%attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
+%attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
+%attr(754,root,root) /etc/rc.d/init.d/vboxpci
+%{systemdunitdir}/vboxdrv.service
+%{systemdunitdir}/vboxnetadp.service
+%{systemdunitdir}/vboxnetflt.service
+%{systemdunitdir}/vboxpci.service
+
+%files kernel-init-guest
 %defattr(644,root,root,755)
 %attr(754,root,root) /etc/rc.d/init.d/vboxguest
-%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxguest.conf
+%attr(754,root,root) /etc/rc.d/init.d/vboxsf
 %{systemdunitdir}/vboxguest.service
+%{systemdunitdir}/vboxsf.service
+
+%files -n kernel%{_alt_kernel}-misc-vboxguest
+%defattr(644,root,root,755)
+%config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxguest.conf
 /lib/modules/%{_kernel_ver}/misc/vboxguest.ko*
 
 %files -n kernel%{_alt_kernel}-misc-vboxdrv
 %defattr(644,root,root,755)
-%attr(754,root,root) /etc/rc.d/init.d/vboxdrv
 %config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxdrv.conf
-%{systemdunitdir}/vboxdrv.service
 /lib/modules/%{_kernel_ver}/misc/vboxdrv.ko*
 
 %files -n kernel%{_alt_kernel}-misc-vboxnetadp
 %defattr(644,root,root,755)
-%attr(754,root,root) /etc/rc.d/init.d/vboxnetadp
 %config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxnetadp.conf
-%{systemdunitdir}/vboxnetadp.service
 /lib/modules/%{_kernel_ver}/misc/vboxnetadp.ko*
 
 %files -n kernel%{_alt_kernel}-misc-vboxnetflt
 %defattr(644,root,root,755)
-%attr(754,root,root) /etc/rc.d/init.d/vboxnetflt
 %config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxnetflt.conf
-%{systemdunitdir}/vboxnetflt.service
 /lib/modules/%{_kernel_ver}/misc/vboxnetflt.ko*
 
 %files -n kernel%{_alt_kernel}-misc-vboxpci
 %defattr(644,root,root,755)
-%attr(754,root,root) /etc/rc.d/init.d/vboxpci
 %config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxpci.conf
-%{systemdunitdir}/vboxpci.service
 /lib/modules/%{_kernel_ver}/misc/vboxpci.ko*
 
 %files -n kernel%{_alt_kernel}-misc-vboxsf
 %defattr(644,root,root,755)
-%attr(754,root,root) /etc/rc.d/init.d/vboxsf
 %config(noreplace) %verify(not md5 mtime size) /etc/modules-load.d/vboxsf.conf
-%{systemdunitdir}/vboxsf.service
 %attr(755,root,root) %{_sbindir}/mount.vboxsf
 /lib/modules/%{_kernel_ver}/misc/vboxsf.ko*
 
This page took 0.08913 seconds and 4 git commands to generate.