# # spec file for package virtualbox # # Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild %define _vbox_instdir /usr/lib/virtualbox Name: virtualbox BuildRequires: fdupes %if %suse_version > 1110 BuildRequires: acpica dmidecode %else BuildRequires: pmtools %endif #drop hal dependency %if %suse_version < 1210 BuildRequires: hal-devel %endif BuildRequires: bin86 dev86 libidl-devel libqt4-devel libxslt-devel yasm BuildRequires: SDL-devel kernel-syms module-init-tools BuildRequires: e2fsprogs-devel libcap-devel libcurl-devel python-devel update-desktop-files BuildRequires: pulseaudio-devel xorg-x11 xorg-x11-devel xorg-x11-server xorg-x11-server-sdk BuildRequires: LibVNCServer-devel gcc gcc-c++ kbuild pam-devel quilt udev BuildRequires: boost-devel %if %suse_version > 1110 BuildRequires: zlib-devel-static %endif %ifarch amd64 x86_64 ia32e em64t #drop hal dependency %if %suse_version < 1210 BuildRequires: hal-32bit %endif BuildRequires: xorg-x11-libX11-devel-32bit xorg-x11-libXt-devel-32bit xorg-x11-libs-32bit BuildRequires: xorg-x11-libXext-devel-32bit xorg-x11-libXmu-devel-32bit BuildRequires: gcc-32bit gcc-c++-32bit %endif # ExclusiveArch: %ix86 x86_64 Version: 4.0.8 Release: 3 Summary: VirtualBox is an Emulator License: GPLv2+ Group: System/Emulators/PC Url: http://www.virtualbox.org/ # # so you don't need to repack virtualbox by hand, just add new release of VirtualBox-x.x.x.tar.bz2 and line below with # script virtualbox-patch-source.sh will do the job :) # WARNING: This is not a comment, but the real command to repack souce #%(bash %{_sourcedir}/virtualbox-patch-source.sh VirtualBox-%{version}.tar.bz2) Source0: VirtualBox-%{version}-patched.tar.bz2 Source1: VirtualBox-%{version}-UserManual.pdf Source2: %{name}-60-vboxdrv.rules Source3: %{name}-60-vboxguest.rules Source4: %{name}-default.virtualbox Source5: %{name}-host-kmp-files Source6: %{name}-guest-kmp-files Source7: %{name}-host-preamble Source8: %{name}-guest-preamble Source9: %{name}-wrapper.sh # since 11.3 we need this conf instead of HAL's fdi to define vbox mouse Source10: %{name}-60-vboxmouse.conf # init script to start virtual boxes during boot, to be configured via /etc/sysconfig/vbox bnc#582398 Source12: %{name}-vboxes Source13: %{name}-sysconfig.vbox Source98: %{name}-%{version}-rpmlintrc Source99: %{name}-patch-source.sh #rework init script Patch1: vbox-vboxdrv-init-script.diff Patch2: vbox-vboxadd-init-script.diff #fix return values which trigger post build checks and coused build error - should goes to upstream Patch4: vbox-ret-in-nonvoid-fnc.diff #fix/enable config (rpath, docs, VNC) Patch5: vbox-config.diff #fix build : "Error 4001 - String must be entirely alphanumeric" #with renaming we probably break some macosx functionality however ths is just quick fix #file :http://www.virtualbox.org/browser/trunk/src/VBox/Devices/PC/vbox.ds #see thread : http://lists.freebsd.org/pipermail/freebsd-acpi/2010-October/006795.html Patch6: vbox-smc-napa.diff #fix build of Python and dev package on openSUSE 11.3 Patch8: vbox-python-detection.diff #bnc#694311 http://www.virtualbox.org/ticket/8076 Patch9: vbox-netflt_start_xmit_enable.diff #PATCH-FIX-OPENSUSE implement messagebox (VBoxPermissionMessage app), which is displayed, when user #try to start VirtualBox and is not memeber of vboxusers group Patch99: vbox-permissions_warning.diff #PATCH-FIX-OPENSUSE Do not include build dates on binaries, makes build-compare happier Patch100: vbox-no-build-dates.diff Patch101: vbox-default-os-type.diff #disable update in vbox gui Patch102: vbox-disable-updates.diff Patch103: virtualbox-ose_%{version}-dfsg-1.diff.gz BuildRoot: %{_tmppath}/%{name}-%{version}-build PreReq: pwdutils permissions Requires: %{name}-host-kmp = %version Recommends: %{name}-gui = %version #rename from ose version: Provides: %{name}-ose = %version Obsoletes: %{name}-ose < %version %if 0%{suse_version} > 1130 PreReq: sysvinit(syslog) %endif %description VirtualBox is an extremely feature rich, high performance product for enterprise customers, it is also the only professional solution that is freely available as Open Source Software under the terms of the GNU Public License (GPL). ########################################## %package qt License: GPLv2+ Summary: Qt GUI part for %{name} Group: System/Emulators/PC Requires: %{name} = %{version} Provides: %{name}-gui = %{version} #this is needed during update to trigger installing qt subpackage #http://en.opensuse.org/openSUSE:Upgrade_dependencies_explanation#Splitting_and_Merging Provides: %{name}-ose:/usr/lib/virtualbox/VirtualBox.so #rename from "ose" version: Provides: %{name}-ose-qt = %version Obsoletes: %{name}-ose-qt < %version PreReq: permissions %description qt Qt GUI part for %{name}. ######################################### %package host-KMP License: GPLv2+ Summary: Host kernel module for VirtualBox Group: System/Emulators/PC # SUSE specify macro to define host kmp package %{?suse_kernel_module_package:%suse_kernel_module_package -p %{S:7} -n %{name}-host -f %{S:5} kdump um xen xenpae} %description host-KMP This package contains the kernel-module for VirtualBox. ########################################## %package guest-KMP License: GPLv2+ Summary: Guest kernel modules for VirtualBox Group: System/Emulators/PC #SUSE specify macro to define guest kmp package %{?suse_kernel_module_package:%suse_kernel_module_package -p %{S:8} -n %{name}-guest -f %{S:6} kdump um xen xenpae} %description guest-KMP This package contains the kernel-module for VirtualBox. ########################################## %package guest-x11 License: GPLv2+ Summary: VirtualBox X11 drivers for mouse and video Group: System/X11/Servers/XF86_4 Requires: %{name}-guest-kmp = %version Supplements: modalias(pci:v000080EEd0000BEEFsv*sd*bc*sc*i*) #rename from xorg-x11-driver-virtualbox-ose: Provides: xorg-x11-driver-virtualbox-ose = %version Obsoletes: xorg-x11-driver-virtualbox-ose < %version %description guest-x11 VirtualBox This package contains X11 guest utilities and X11 guest mouse and video drivers ########################################### %package guest-tools License: GPLv2+ Summary: VirtualBox guest tools Group: System/Emulators/PC Requires: %{name}-guest-kmp = %version Supplements: modalias(pci:v000080EEd0000BEEFsv*sd*bc*sc*i*) #rename from "ose" version: Provides: %{name}-ose-guest-tools = %version Obsoletes: %{name}-ose-guest-tools < %version %description guest-tools VirtualBox guest addition tools. ########################################### %package -n python-%{name} Summary: Python bindings for %{name} Group: Development/Libraries/Python Requires: %{name} = %{version} #rename from "ose" version: Provides: python-%{name}-ose = %version Obsoletes: python-%{name}-ose < %version %description -n python-%{name} Python XPCOM bindings to %{name}. Used e.g. by vboxgtk package. ########################################### %package devel License: GPLv2+ Summary: Devel files for %{name} Group: Development/Libraries/Other Requires: %{name} = %{version} Requires: python-%{name} = %{version} #rename from "ose" version: Provides: %{name}-ose-devel = %version Obsoletes: %{name}-ose-devel < %version %description devel Development file for %{name} ########################################### %prep %setup -q -n VirtualBox-%{version}_OSE %patch103 -p1 export QUILT_PATCHES=debian/patches #echo "18-system-xorg.patch" > debian/patches/series echo "22-no-static-libstdcpp.patch" > debian/patches/series echo "29-fix-ftbfs-as-needed.patch" >> debian/patches/series quilt push -a %patch1 %patch2 %patch4 -p1 %patch5 -p1 %patch6 -p1 %patch8 -p1 %patch9 -p1 %patch99 -p1 %patch100 %patch101 %patch102 -p1 #copy user manual %__cp %{S:1} ./UserManual.pdf %build #ensure we dont ever use them rm -rf src/libs/{libpng-*,libxml2-*,libxslt-*,zlib-*,boost-*} # --disable-kmods \ don't build Linux kernel modules - but use SUSE specific way see few lines under # --with-gcc=/usr/bin/gxx-4.3 do configure and set proper gcc - currently vbox support only gcc<=4.4 # --nofatal try to avoid build fail caused by missing makeself package ./configure \ --disable-kmods \ --disable-java \ --disable-docs \ --nofatal # configure actually warns we should source env.sh (which seems like it could influence the build...) source env.sh # # VBOX_PATH_PACKAGE_DOCS set propper path for link to pdf in .desktop file # VBOX_WITH_REGISTRATION_REQUEST= VBOX_WITH_UPDATE_REQUEST= just disable some functionality in gui # -j1 disable parallel build to avoid "Out of memory: Kill process" crash of build in buildservice /usr/bin/kmk \ -j2 \ VBOX_GCC_WERR= \ KBUILD_VERBOSE=2 \ VBOX_WITH_REGISTRATION_REQUEST= VBOX_WITH_UPDATE_REQUEST= \ TOOL_YASM_AS=yasm \ VBOX_PATH_PACKAGE_DOCS=/usr/share/doc/packages/virtualbox \ all # # build kernel modules for guest and host (check novel-kmp package as example) # host modules : vboxdrv,vboxnetflt,vboxnetadp # guest modules : vboxguest,vboxsf,vboxvideo for vbox_module in out/linux.*/release/bin/src/vbox{drv,netflt,netadp} \ out/linux.*/release/bin/additions/src/vbox{guest,sf,video}; do #get the module name from path module_name=$(basename "$vbox_module") # go through the all flavors (desktop,default ...) for flavor in %flavors_to_build; do # delete old build dir for sure %__rm -rf modules_build_dir/${module_name}_${flavor} # create build directory for specific flavor %__mkdir -p modules_build_dir/$flavor # copy sources which will be used to build vbox module in last step %__cp -r $vbox_module/ modules_build_dir/$flavor/ # copy vboxdrv (for host) module symbols which are used by vboxnetflt and vboxnetadp km's: if [ "$module_name" = "vboxnetflt" -o \ "$module_name" = "vboxnetadp" ]; then %__cp $PWD/modules_build_dir/$flavor/vboxdrv/Module.symvers \ $PWD/modules_build_dir/$flavor/$module_name fi # copy vboxguest (for guest) module symbols which are used by vboxsf km: if [ "$module_name" = "vboxsf" ]; then %__cp $PWD/modules_build_dir/$flavor/vboxguest/Module.symvers \ $PWD/modules_build_dir/$flavor/$module_name fi # build the module for the specific flavor %__make -C /usr/src/linux-obj/%_target_cpu/$flavor modules \ M=$PWD/modules_build_dir/$flavor/$module_name done done %install ################################# echo "create directory structure" ################################# %__install -d -m 755 %{buildroot}/sbin %__install -d -m 755 %{buildroot}%{_bindir} %__install -d -m 755 %{buildroot}%{_sbindir} %__install -d -m 755 %{buildroot}%{_datadir}/virtualbox/nls %__install -d -m 755 %{buildroot}%{_datadir}/pixmaps %__install -d -m 755 %{buildroot}%{_datadir}/applications %if %suse_version >= 1130 %__install -d -m 755 %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/ %else #since 11.3 we don't use hal to detect vbox mouse %__install -d -m 755 %{buildroot}%{_datadir}/hal/fdi/policy/20thirdparty %endif %__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom #%__install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/glue %__install -d -m 755 %{buildroot}%{_vbox_instdir}/components %__install -d -m 755 %{buildroot}%{_libdir}/dri %__install -d -m 755 %{buildroot}%{_libdir}/xorg/modules/drivers %__install -d -m 755 %{buildroot}%{_libdir}/xorg/modules/input %__install -d -m 755 %{buildroot}%{_sysconfdir}/default %__install -d -m 755 %{buildroot}%{_sysconfdir}/init.d %__install -d -m 755 %{buildroot}%{_sysconfdir}/vbox %__install -d -m 755 %{buildroot}%{_sysconfdir}/udev/rules.d %__install -d -m 755 %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d #################################################################################### echo "entering virtualbox-kmp-guest and virtualbox-kmp-host install section" #################################################################################### export INSTALL_MOD_PATH=$RPM_BUILD_ROOT export INSTALL_MOD_DIR=updates #to install modules we use here similar steps like in build phase, go trought the all modules : for module_name in vbox{drv,netflt,netadp,guest,sf,video} do #and trought the all flavors for flavor in %flavors_to_build; do #to install modules use Makefile from /usr/src/linux-obj/%_target_cpu/$flavor and builds from $PWD/modules_build_dir/$flavor/$module_name %__make -C /usr/src/linux-obj/%_target_cpu/$flavor modules_install M=$PWD/modules_build_dir/$flavor/$module_name done done ########################################### echo "entering guest-tools install section" ########################################### %__install -m 755 out/linux.*/release/bin/additions/VBoxControl \ %{buildroot}%{_bindir}/VBoxControl %__install -m 755 out/linux.*/release/bin/additions/VBoxService \ %{buildroot}%{_bindir}/VBoxService %__install -m 755 out/linux.*/release/bin/additions/mount.vboxsf \ %{buildroot}/sbin/mount.vboxsf %__install -m 744 src/VBox/Additions/linux/installer/vboxadd.sh \ %{buildroot}%{_sysconfdir}/init.d/vboxadd %__ln_s %{_sysconfdir}/init.d/vboxadd \ %{buildroot}%{_sbindir}/rcvboxadd # udev rule for guest (virtualbox-guest-tools) %__install -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/udev/rules.d/60-vboxguest.rules # ############################################################## echo "entering guest-x11 install section" ############################################################## pushd out/linux.*/release/bin/additions/ #VBoxClient daemon (support for clipboard,autoresize,seamless windows) %__install -m 755 VBoxClient %{buildroot}%{_bindir} # xorg drivers for mouse and videos check suse version to add propper driver %if %suse_version > 1130 %__install -m 755 vboxmouse_drv_19.so \ %{buildroot}%{_libdir}/xorg/modules/input/vboxmouse_drv.so %__install -m 755 vboxvideo_drv_19.so \ %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so %else %if %suse_version == 1130 %__install -m 755 vboxmouse_drv_18.so \ %{buildroot}%{_libdir}/xorg/modules/input/vboxmouse_drv.so %__install -m 755 vboxvideo_drv_18.so \ %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so %else %if %suse_version == 1120 %__install -m 755 vboxmouse_drv_16.so \ %{buildroot}%{_libdir}/xorg/modules/input/vboxmouse_drv.so %__install -m 755 vboxvideo_drv_16.so \ %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so %else %__install -m 755 vboxmouse_drv_15.so \ %{buildroot}%{_libdir}/xorg/modules/input/vboxmouse_drv.so %__install -m 755 vboxvideo_drv_15.so \ %{buildroot}%{_libdir}/xorg/modules/drivers/vboxvideo_drv.so %endif %endif %endif popd # VBoxOGL* libs for guest-x11 subpackage %__install -m 644 out/linux.*/release/bin/additions/VBoxOGL*.so \ %{buildroot}%{_libdir} # make link for dri lib %__ln_s %{_libdir}/VBoxOGL.so %{buildroot}%{_libdir}/dri/vboxvideo_dri.so # install init script which start VBoxClient daemon (support for clipboard,autoresize,seamless windows) %__install -m 755 src/VBox/Additions/x11/Installer/98vboxadd-xclient \ %{buildroot}%{_sysconfdir}/X11/xinit/xinitrc.d/vboxadd-xclient.sh %if %suse_version >= 1130 # add xorg config snipet to vbox mouse integration recognize %__install -m 644 %{SOURCE10} %{buildroot}%{_sysconfdir}/X11/xorg.conf.d/60-vboxmouse.conf %else # hal policy file to autodetect the virtualbox mouse %__install -m 644 src/VBox/Additions/linux/installer/90-vboxguest.fdi \ %{buildroot}%{_datadir}/hal/fdi/policy/20thirdparty/90-vboxguest.fdi %endif ############################################## echo "entering virtualbox(-qt) install section" ############################################## # copy the main files to %{_vbox_instdir} pushd out/linux.*/release/bin %__install -m 755 VBoxManage %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxHeadless %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxSDL %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxTunctl %{buildroot}%{_vbox_instdir} # 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 %__ln_s %{_vbox_instdir}/VBoxSDL %{buildroot}%{_bindir}/VBoxSDL %__ln_s %{_vbox_instdir}/VBoxTunctl %{buildroot}%{_bindir}/VBoxTunctl %__install -m 755 VBoxSVC %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxXPCOMIPCD %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxExtPackHelperApp %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxTestOGL %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxPermissionMessage \ %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxNetDHCP %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxNetAdpCtl %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxBFE %{buildroot}%{_vbox_instdir} %__install -m 755 VirtualBox %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxEFI*.fd %{buildroot}%{_vbox_instdir} %__install -m 755 VBoxSysInfo.sh %{buildroot}%{_vbox_instdir} %__install -m 755 *.so %{buildroot}%{_vbox_instdir} %__install -m 644 V*.gc %{buildroot}%{_vbox_instdir} %__install -m 644 *.r0 %{buildroot}%{_vbox_instdir} %__install -m 644 components/* %{buildroot}%{_vbox_instdir}/components/ # install languages %__install -m 644 nls/* %{buildroot}%{_datadir}/virtualbox/nls/ popd # the build process tells us the desktop file is missing a semicolon...(repackage?) #%__sed 's/^MimeType.*[^;]$/&;/' out/linux.*/release/bin/virtualbox.desktop > %{_tmppath}/virtualbox.desktop #%__sed 's/Icon=VBox/Icon=VBox.png/' out/linux.*/release/bin/virtualbox.desktop > %{_tmppath}/virtualbox.desktop # install desktop file #%__install -m 644 %{_tmppath}/virtualbox.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop %__install -m 644 out/linux.*/release/bin/virtualbox.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop %suse_update_desktop_file %{buildroot}%{_datadir}/applications/%{name}.desktop 'System Emulator' # create a menu entry %__install -m 644 out/linux.*/release/bin/VBox.png \ %{buildroot}%{_datadir}/pixmaps/virtualbox.png # install udev rule for host (virtualbox) %__install -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/udev/rules.d/60-vboxdrv.rules # install config with session shutdown defs %__install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/default/virtualbox #install wrapper script %__install -m 644 %{S:9} %{buildroot}%{_bindir}/VirtualBox # modify and install the vboxdrv init script # TODO: some of this stuff breaks the fillup macros below? %__sed -i "s|%NOLSB%|yes|g;s|%DEBIAN%||g;s|%PACKAGE%|virtualbox|g" src/VBox/Installer/linux/vboxdrv.sh.in %__install -m 744 src/VBox/Installer/linux/vboxdrv.sh.in \ %{buildroot}%{_sysconfdir}/init.d/vboxdrv %__ln_s %{_sysconfdir}/init.d/vboxdrv \ %{buildroot}%{_sbindir}/rcvboxdrv # Init script to start virtual boxes during boot %__install -m 755 %{S:12} %{buildroot}%{_sysconfdir}/init.d/vboxes %__ln_s %{_sysconfdir}/init.d/vboxes \ %{buildroot}%{_sbindir}/rcvboxes %__install -d -m 755 %{buildroot}%{_var}/adm/fillup-templates install -m 700 %{S:13} %{buildroot}%{_var}/adm/fillup-templates/sysconfig.vbox ###################################################### echo "entrering python-virtualbox install section" ###################################################### pushd out/linux.*/release/bin/sdk/installer VBOX_INSTALL_PATH=%{_vbox_instdir} python vboxapisetup.py install --prefix=%{_prefix} --root=%{buildroot} --record-rpm=%{_tmppath}/SITE_FILES popd %__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 %py_compile %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom/python ###################################################### 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 %__cp -r include %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom %__cp -r idl %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom %__cp -r cbinding %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom %__cp -r samples %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom popd %__cp out/linux.*/release/bin/sdk/bindings/VirtualBox.xidl %{buildroot}%{_vbox_instdir}/sdk/bindings ###################################################### # run fdupes ###################################################### #run fdupes because we lost link for virtualbox/components directory %fdupes %{buildroot}/%{_vbox_instdir} #also some translation files are duplicated %fdupes %{buildroot}/%{_datadir}/virtualbox/nls %pre echo "creating group vboxusers..." groupadd -r vboxusers 2>/dev/null || : %post /sbin/ldconfig %fillup_and_insserv -f -y vboxdrv %fillup_only -an vboxes %if %suse_version >=1140 %set_permissions %else %run_permissions %endif %post qt %if %suse_version >=1140 %set_permissions %else %run_permissions %endif %verifyscript %if %suse_version >=1140 %verify_permissions -e %{_vbox_instdir}/VBoxNetDHCP %endif %if %suse_version > 1110 %verify_permissions -e %{_vbox_instdir}/VBoxNetAdpCtl %endif %verify_permissions -e %{_vbox_instdir}/VBoxBFE -e %{_vbox_instdir}/VBoxHeadless -e %{_vbox_instdir}/VBoxSDL %verifyscript qt %verify_permissions -e %{_vbox_instdir}/VirtualBox %post guest-tools %fillup_and_insserv -f -y vboxadd %preun %stop_on_removal vboxdrv exit 0 %preun guest-tools %stop_on_removal vboxadd exit 0 %postun /sbin/ldconfig %restart_on_update vboxdrv %insserv_cleanup %postun guest-tools %restart_on_update vboxadd %insserv_cleanup %clean [ -d "%{buildroot}" -a "%{buildroot}" != "" ] && %__rm -rf "%{buildroot}" %files %defattr(-, root, root) %doc UserManual.pdf %{_bindir}/VBoxManage %{_bindir}/VBoxHeadless %{_bindir}/VBoxSDL %{_bindir}/VBoxTunctl %dir %{_vbox_instdir} %{_vbox_instdir}/VBoxSysInfo.sh %{_vbox_instdir}/VBoxBFE.so %{_vbox_instdir}/VBoxDD2.so %{_vbox_instdir}/VBoxDD.so %{_vbox_instdir}/VBoxDDU.so %{_vbox_instdir}/VBoxGuestControlSvc.so %{_vbox_instdir}/VBoxGuestPropSvc.so %{_vbox_instdir}/VBoxHeadless.so %{_vbox_instdir}/VBoxKeyboard.so %{_vbox_instdir}/VBoxNetDHCP.so %{_vbox_instdir}/VBoxOGLhostcrutil.so %{_vbox_instdir}/VBoxOGLhosterrorspu.so %{_vbox_instdir}/VBoxOGLrenderspu.so %{_vbox_instdir}/VBoxREM*.so %{_vbox_instdir}/VBoxRT.so %{_vbox_instdir}/VBoxSDL.so %{_vbox_instdir}/VBoxSharedClipboard.so %{_vbox_instdir}/VBoxSharedCrOpenGL.so %{_vbox_instdir}/VBoxSharedFolders.so %{_vbox_instdir}/VBoxVMM.so %{_vbox_instdir}/VBoxXPCOMC.so %{_vbox_instdir}/VBoxXPCOM.so %{_vbox_instdir}/VBox*.gc %{_vbox_instdir}/VBox*.r0 %{_vbox_instdir}/VMMGC.gc %{_vbox_instdir}/VMMR0.r0 %{_vbox_instdir}/VBoxEFI*.fd %{_vbox_instdir}/VBoxManage %{_vbox_instdir}/VBoxSVC %{_vbox_instdir}/VBoxTunctl %{_vbox_instdir}/VBoxXPCOMIPCD #added for 4.0.0 %{_vbox_instdir}/VBoxExtPackHelperApp %{_vbox_instdir}/DBGCPlugInDiggers.so %{_vbox_instdir}/VBoxAuth.so %{_vbox_instdir}/VBoxAuthSimple.so %{_vbox_instdir}/VBoxDbg.so # %dir %{_vbox_instdir}/components %{_vbox_instdir}/components/*.so %{_vbox_instdir}/components/*.xpt %dir %{_datadir}/virtualbox %config %{_sysconfdir}/default/virtualbox %config %{_sysconfdir}/udev/rules.d/60-vboxdrv.rules %config %{_sysconfdir}/init.d/vboxdrv %{_sysconfdir}/init.d/vboxes %{_var}/adm/fillup-templates/sysconfig.vbox %{_sbindir}/rcvboxes %{_sbindir}/rcvboxdrv %if %suse_version >= 1140 %verify(not mode) %attr(0755,root,vboxusers) %{_vbox_instdir}/VBoxNetDHCP %else %{_vbox_instdir}/VBoxNetDHCP %endif %if %suse_version > 1110 %verify(not mode) %attr(0755,root,vboxusers) %{_vbox_instdir}/VBoxNetAdpCtl %else %{_vbox_instdir}/VBoxNetAdpCtl %endif %verify(not mode) %attr(0755,root,vboxusers) %{_vbox_instdir}/VBoxBFE %verify(not mode) %attr(0755,root,vboxusers) %{_vbox_instdir}/VBoxHeadless %verify(not mode) %attr(0755,root,vboxusers) %{_vbox_instdir}/VBoxSDL # %files qt %defattr(-, root, root) %{_vbox_instdir}/VBoxPermissionMessage %verify(not mode) %attr(0755,root,vboxusers) %{_vbox_instdir}/VirtualBox #wrapper script is in bindir %attr(0755,root,root) %{_bindir}/VirtualBox #ldd shows libQt* dependency %{_vbox_instdir}/VBoxTestOGL #qm's translations %{_datadir}/virtualbox/nls %{_vbox_instdir}/VirtualBox.so %{_datadir}/pixmaps/virtualbox.png %{_datadir}/applications/%{name}.desktop # %files guest-x11 %defattr(-, root, root) %dir %{_libdir}/xorg/modules/drivers %dir %{_libdir}/xorg/modules/input %dir %{_libdir}/dri/ %{_bindir}/VBoxClient %{_libdir}/VBoxOGL*.so %{_libdir}/xorg/modules/drivers/vboxvideo_drv.so %{_libdir}/xorg/modules/input/vboxmouse_drv.so %{_libdir}/dri/vboxvideo_dri.so %{_sysconfdir}/X11/xinit/xinitrc.d/vboxadd-xclient.sh %if %suse_version >= 1130 %config %{_sysconfdir}/X11/xorg.conf.d/60-vboxmouse.conf %else %{_datadir}/hal/fdi/policy/20thirdparty/90-vboxguest.fdi %endif # %files guest-tools %defattr(-, root, root) %{_bindir}/VBoxControl %{_bindir}/VBoxService /sbin/mount.vboxsf %config %{_sysconfdir}/udev/rules.d/60-vboxguest.rules %config %{_sysconfdir}/init.d/vboxadd %{_sbindir}/rcvboxadd # %files -n python-%{name} -f %{_tmppath}/SITE_FILES %defattr(-, root, root) %dir %{_vbox_instdir}/sdk %dir %{_vbox_instdir}/sdk/bindings %dir %{_vbox_instdir}/sdk/bindings/xpcom %{_vbox_instdir}/sdk/bindings/xpcom/python %if 0%{?suse_version} > 1130 %attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_7.so %else %attr(0755, root, root) %{_vbox_instdir}/VBoxPython2_6.so %endif %files devel %defattr(-,root, root) %dir %{_vbox_instdir}/sdk %dir %{_vbox_instdir}/sdk/bindings %dir %{_vbox_instdir}/sdk/bindings/xpcom %{_vbox_instdir}/sdk/bindings/VirtualBox.xidl %{_vbox_instdir}/sdk/bindings/xpcom/cbinding %{_vbox_instdir}/sdk/bindings/xpcom/idl %{_vbox_instdir}/sdk/bindings/xpcom/include %{_vbox_instdir}/sdk/bindings/xpcom/samples %{_vbox_instdir}/sdk/bindings/auth #%{_vbox_instdir}/sdk/bindings/glue/java %changelog