diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2018-04-11 15:43:21 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2018-04-11 15:43:21 +0100 |
commit | baa351b5b90862669fea1a8f2edf8ee8bc4b2b9b (patch) | |
tree | 80684e0ff0811602ecd715217ca2a89cefd8a5bf /app-emulation/virtualbox | |
parent | 9962d0ecc0c1a275828ddce9a071d3c2337babbb (diff) |
Revert "app-emulation/virtualbox : version bump"
This reverts commit 9962d0ecc0c1a275828ddce9a071d3c2337babbb.
Diffstat (limited to 'app-emulation/virtualbox')
-rw-r--r-- | app-emulation/virtualbox/Manifest | 2 | ||||
-rw-r--r-- | app-emulation/virtualbox/files/virtualbox-vboxusb_tmpfilesd | 1 | ||||
-rw-r--r-- | app-emulation/virtualbox/virtualbox-5.2.4.ebuild (renamed from app-emulation/virtualbox/virtualbox-5.2.8.ebuild) | 117 |
3 files changed, 84 insertions, 36 deletions
diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest index ae456ecf..f24e5773 100644 --- a/app-emulation/virtualbox/Manifest +++ b/app-emulation/virtualbox/Manifest @@ -1,2 +1,2 @@ -DIST VirtualBox-5.2.8.tar.bz2 118500065 BLAKE2B 64d0cc0f928d224332f59e7966ee1bed8adcf097d27c577b6ecea5cbf203e170e38acca9f2371d6d7aa11f63b73e705b43a0516ccbe5993171f928406b8a3876 SHA512 49a3bd1c60d2c4cbd3799ece5fbfe15d9b6a00c5af9692478a1365a8eb4975228410e17dba24a388c0cf5387cb79fb7492feb4e6b2f531bc17322c3d61de7887 +DIST VirtualBox-5.2.4.tar.bz2 118481693 BLAKE2B 874f5e65d97befaf72767626a1f3271a0b7c30f8dc998dc10aee9478039cecd14ce11c9c624ba596c09641aae9a41ca91ae33e5a82218bc8acd8cd32ebb727e1 SHA512 19cb168393098fd28ab2017a27d09a558721d57b31c5d3610deb68a17dfa7fd7ffe9ad7be18714a314724ab5ecb54e7ab5fb76183e8e89afbed2da79649e2798 DIST virtualbox-5.2.0-patches-01.tar.xz 2460 BLAKE2B d3f973dc7ee0557c360f801c3bf84065a7e7bc9960984398b8f86d71fab32c59774e970c6cf873be07bcb9666af168570e8a78705a5999b1fc5d863dbbc6e538 SHA512 b91278dd81a50e412f5a281c72949f591a1c53303080549b74b28763cab9e3948948afb0256e0453d17736683cca3372a8e9c6d63f02f3eff3ef92c2a1ea332b diff --git a/app-emulation/virtualbox/files/virtualbox-vboxusb_tmpfilesd b/app-emulation/virtualbox/files/virtualbox-vboxusb_tmpfilesd deleted file mode 100644 index 39378536..00000000 --- a/app-emulation/virtualbox/files/virtualbox-vboxusb_tmpfilesd +++ /dev/null @@ -1 +0,0 @@ -d /dev/vboxusb 0750 root vboxusers diff --git a/app-emulation/virtualbox/virtualbox-5.2.8.ebuild b/app-emulation/virtualbox/virtualbox-5.2.4.ebuild index f1aa59de..d64c9f56 100644 --- a/app-emulation/virtualbox/virtualbox-5.2.8.ebuild +++ b/app-emulation/virtualbox/virtualbox-5.2.4.ebuild @@ -1,23 +1,24 @@ -# Copyright 1999-2018 Gentoo Foundation +# Copyright 1999-2017 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 EAPI=6 PYTHON_COMPAT=( python2_7 ) -inherit eutils flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils +inherit eutils flag-o-matic java-pkg-opt-2 linux-info multilib pax-utils python-single-r1 toolchain-funcs udev xdg-utils MY_PV="${PV/beta/BETA}" MY_PV="${MY_PV/rc/RC}" MY_P=VirtualBox-${MY_PV} +SRC_URI="http://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2 + https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.0-patches-01.tar.xz" +S="${WORKDIR}/${MY_P}" DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use" -HOMEPAGE="https://www.virtualbox.org/" -SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2 - https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.0-patches-01.tar.xz" +HOMEPAGE="http://www.virtualbox.org/" LICENSE="GPL-2" SLOT="0" -KEYWORDS="amd64" +KEYWORDS="amd64 ~x86" IUSE="alsa debug doc headless java libressl lvm pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc" RDEPEND="!app-emulation/virtualbox-bin @@ -47,6 +48,7 @@ RDEPEND="!app-emulation/virtualbox-bin x11-libs/libXinerama ) ) + java? ( >=virtual/jre-1.6:= ) libressl? ( dev-libs/libressl:= ) !libressl? ( dev-libs/openssl:0= ) lvm? ( sys-fs/lvm2 ) @@ -70,15 +72,13 @@ DEPEND="${RDEPEND} dev-texlive/texlive-fontsextra ) !headless? ( x11-libs/libXinerama ) - java? ( >=virtual/jdk-1.6 ) + java? ( >=virtual/jre-1.6:= ) pam? ( sys-libs/pam ) pax_kernel? ( sys-apps/elfix ) pulseaudio? ( media-sound/pulseaudio ) qt5? ( dev-qt/linguist-tools:5 ) vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] ) ${PYTHON_DEPS}" -RDEPEND="${RDEPEND} - java? ( >=virtual/jre-1.6 )" QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so usr/lib/virtualbox/VBoxSDL.so @@ -112,8 +112,6 @@ QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so usr/lib/virtualbox/VBoxNetDHCP.so usr/lib/virtualbox/VBoxNetNAT.so" -S="${WORKDIR}/${MY_P}" - REQUIRED_USE=" java? ( sdk ) python? ( sdk ) @@ -146,21 +144,29 @@ pkg_setup() { } src_prepare() { + # Remove shipped binaries (kBuild,yasm), see bug #232775 rm -r kBuild/bin tools || die + # Replace pointless GCC version check with something less stupid. + # This is needed for the qt5 version check. sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' -i configure || die + # Don't use "echo -n" sed 's@ECHO_N="echo -n"@ECHO_N="printf"@' -i configure || die + # Disable things unused or split into separate ebuilds sed -e "s@MY_LIBDIR@$(get_libdir)@" \ "${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die + # Respect LDFLAGS sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \ -i Config.kmk src/libs/xpcom18a4/Config.kmk || die + # Do not use hard-coded ld (related to bug #488176) sed -e '/QUIET)ld /s@ld @$(LD) @' \ -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die + # Use PAM only when pam USE flag is enbaled (bug #376531) if ! use pam ; then elog "Disabling PAM removes the possibility to use the VRDP features." sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die @@ -168,16 +174,19 @@ src_prepare() { src/VBox/HostServices/Makefile.kmk || die fi + # add correct java path if use java ; then sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \ -i "${S}"/Config.kmk || die java-pkg-opt-2_src_prepare fi + # Only add nopie patch when we're on hardened if gcc-specs-pie ; then eapply "${FILESDIR}/050_virtualbox-5.1.24-nopie.patch" fi + # Only add paxmark patch when we're on pax_kernel if use pax_kernel ; then eapply "${FILESDIR}"/virtualbox-5.1.4-paxmark-bldprogs.patch fi @@ -193,36 +202,33 @@ src_configure() { --with-g++="$(tc-getCXX)" --disable-dbus --disable-kmods - $(usex alsa '' --disable-alsa) - $(usex debug --build-debug '') - $(usex doc '' --disable-docs) - $(usex java '' --disable-java) - $(usex lvm '' --disable-devmapper) - $(usex pulseaudio '' --disable-pulse) - $(usex python '' --disable-python) - $(usex vboxwebsrv --enable-webservice '') - $(usex vnc --enable-vnc '') ) + use alsa || myconf+=( --disable-alsa ) + use debug && myconf+=( --build-debug ) + use doc || myconf+=( --disable-docs ) + use java || myconf+=( --disable-java ) + use lvm || myconf+=( --disable-devmapper ) + use opengl || myconf+=( --disable-opengl ) + use pulseaudio || myconf+=( --disable-pulse ) + use python || myconf+=( --disable-python ) + use vboxwebsrv && myconf+=( --enable-webservice ) + use vnc && myconf+=( --enable-vnc ) if ! use headless ; then - myconf+=( - $(usex opengl '' --disable-opengl) - $(usex qt5 '' --disable-qt) - ) + use qt5 || myconf+=( --disable-qt ) else - myconf+=( - --build-headless - --disable-opengl - ) + myconf+=( --build-headless --disable-opengl ) fi if use amd64 && ! has_multilib_profile ; then myconf+=( --disable-vmmraw ) fi + # not an autoconf script ./configure ${myconf[@]} || die "configure failed" } src_compile() { source ./env.sh || die + # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529) MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #' MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #' MAKEOPTS="${MAKEJOBS} ${MAKELOAD}" @@ -258,21 +264,26 @@ src_install() { fperms ${perms} ${path}/${binary} } + # Create configuration files insinto /etc/vbox newins "${FILESDIR}/${PN}-4-config" vbox.cfg + # Set the correct libdir sed \ -e "s@MY_LIBDIR@$(get_libdir)@" \ -i "${D}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed" + # Install the wrapper script exeinto ${vbox_inst_path} newexe "${FILESDIR}/${PN}-ose-5-wrapper" "VBox" fowners root:vboxusers ${vbox_inst_path}/VBox fperms 0750 ${vbox_inst_path}/VBox + # Install binaries and libraries insinto ${vbox_inst_path} doins -r components + # *.rc files for x86_64 are only available on multilib systems local rcfiles="*.rc" if use amd64 && ! has_multilib_profile ; then rcfiles="" @@ -281,29 +292,34 @@ src_install() { vbox_inst ${each} done + # These binaries need to be suid root. for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do vbox_inst ${each} 4750 done + # Install EFI Firmware files (bug #320757) pushd "${S}"/src/VBox/Devices/EFI/FirmwareBin &>/dev/null || die for fwfile in VBoxEFI{32,64}.fd ; do vbox_inst ${fwfile} 0644 done popd &>/dev/null || die + # VBoxSVC and VBoxManage need to be pax-marked (bug #403453) + # VBoxXPCOMIPCD (bug #524202) for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do pax-mark -m "${D}"${vbox_inst_path}/${each} done + # Symlink binaries to the shipped wrapper for each in vbox{headless,manage} VBox{Headless,Manage,VRDP} ; do dosym ${vbox_inst_path}/VBox /usr/bin/${each} done dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl - if use pam ; then - dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so - fi + # VRDPAuth only works with this (bug #351949) + dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so + # set an env-variable for 3rd party tools echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox" doenvd "${T}/90virtualbox" @@ -369,6 +385,7 @@ src_install() { fi if use udev ; then + # New way of handling USB device nodes for VBox (bug #356215) local udevdir="$(get_udevdir)" insinto ${udevdir} doins VBoxCreateUSBNode.sh @@ -390,8 +407,6 @@ src_install() { if use doc ; then dodoc UserManual.pdf fi - - newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf } pkg_postinst() { @@ -402,7 +417,41 @@ pkg_postinst() { && udevadm trigger --subsystem-match=usb fi - tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf + if ! use headless && use qt5 ; then + elog "To launch VirtualBox just type: \"virtualbox\"." + fi + elog "You must be in the vboxusers group to use VirtualBox." + elog "" + elog "The latest user manual is available for download at:" + elog "http://download.virtualbox.org/virtualbox/${PV}/UserManual.pdf" + elog "" + elog "For advanced networking setups you should emerge:" + elog "net-misc/bridge-utils and sys-apps/usermode-utilities" + elog "" + elog "IMPORTANT!" + elog "If you upgrade from app-emulation/virtualbox-ose make sure to run" + elog "\"env-update\" as root and logout and relogin as the user you wish" + elog "to run ${PN} as." + elog "" + elog "Starting with version 4.0.0, ${PN} has USB-1 support." + elog "For USB-2 support, PXE-boot ability and VRDP support please emerge" + elog " app-emulation/virtualbox-extpack-oracle" + elog "package." + elog "Starting with version 5.0.0, ${PN} no longer has the \"additions\" and" + elog "the \"extension\" USE flag. For installation of the guest additions ISO" + elog "image, please emerge" + elog " app-emulation/virtualbox-additions" + elog "and for the USB2, USB3, VRDP and PXE boot ROM modules, please emerge" + elog " app-emulation/virtualbox-extpack-oracle" + if ! use udev ; then + elog "" + elog "WARNING!" + elog "Without USE=udev, USB devices will likely not work in ${PN}." + elif [ -e "${ROOT%/}/etc/udev/rules.d/10-virtualbox.rules" ] ; then + elog "" + elog "Please remove \"${ROOT%/}/etc/udev/rules.d/10-virtualbox.rules\"" + elog "or else USB in ${PN} won't work." + fi } pkg_postrm() { |