mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-07-31 10:58:21 -07:00
virtualbox packages: Removed old
Package-Manager: Portage-2.3.66, Repoman-2.3.12 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>
This commit is contained in:
@@ -1,7 +1,5 @@
|
||||
DIST VBoxGuestAdditions_5.2.22.iso 58013696 BLAKE2B 196f0048b685200328bcf753f3df23eac6477ce863885e93a54951795368bf62bdaa497589001ec203d75809b1f74ebbaa80419406d26bc7db43a131f5b9d698 SHA512 b320174b2f2ef796ac2c9c920579be38f0cedaa037d21992863ac355ecf6e99ae2aea56c70fb2034e9e03afac2cd7297f7717b447a6981701755593110164d37
|
||||
DIST VBoxGuestAdditions_5.2.26.iso 58433536 BLAKE2B 1d7bae647923a57cdcee38a1609a07cd081d593a0852dcf67b549ed178508e93f7ee4d076ac700ab7e7ec828e660eb09cc8a55a0f2400b1ff0912cc2fafdff7f SHA512 fea91c442d3f05a35435155d3a3890e2c29e2523f1106cc8c7fb6513826263ff450e72b393796e0dff99b3bd85d85d8d55309e81f68ddfd39689df8f54bca1fe
|
||||
DIST VBoxGuestAdditions_5.2.28.iso 58568704 BLAKE2B cc7f0f0c18823f8c7dcae945d0e73b4b8c7d151a07be23bd8d21c44aa555f7964949857af817a9bc4e04d773a18cdc369dcbd8aadffe846ff7200477118aada8 SHA512 ccfdb2705a6c7daa79108fdb3bc6e6070e8de3f45eea308f821a0194e77c092b029119739239a2ccf9c5cb89045e919ba57950994668bc879443a55b53407c9c
|
||||
DIST VBoxGuestAdditions_5.2.30.iso 58578944 BLAKE2B 6a2565fa8e3b19363da82592ba4d93ddfb6d22e107e28e901aa4c0bce84aaa0bd63d781155e44462b90d9f491e4df589cfd346dd33fe8f016862e85d99c2092c SHA512 568312b26647f7932d94a42279f35b9a827145ef2bd0ea4ef00a865c355b1de55dee66e731a90d644ddd35cb301f61315edf684c9a321681882c1537c8159caa
|
||||
DIST VBoxGuestAdditions_6.0.4.iso 85917696 BLAKE2B 2fa419ef8524b46afb327bd1f5e53bec6df7fa53d6608bb25e5d986d8be9eaf2e0e7a37523beb56981380e8f4ad41ae48eb5ec23505a382c57fda737ec999caf SHA512 ad9afd9941cac771a156071df3a054225643e39059c84abc0c0c2525d0fa32d5bc5a144b1fef367f92e0216f8f9fc73ef961eeead648421ea30465650516bc88
|
||||
DIST VBoxGuestAdditions_6.0.6.iso 86321152 BLAKE2B d186d6c14500376b1721e084d9a4859bcbe3c64bfc22835a8e4b4425eee4a3a21c8dc4d48bfb072a793a8f2fb0d7f6ef83f53b1ebedbfb38c2e3fffbe3611d55 SHA512 ced893f8384b0ad74cce77f6d6f74fd748acf3acd18843a08c1b433b40ee73ce4c10d16ab8893aabba7fb3aac57e6faea599ed5733d4e91895bb78e7cf34c7ac
|
||||
DIST VBoxGuestAdditions_6.0.8.iso 86562816 BLAKE2B dddac0dff687982040543bff065719a6b900666886892247d6ca2e6968d601dfd7c01b0b4c79db28ca81f25ed15906ec65c3e77ac4128eeaaf9a8d6d16632336 SHA512 95396a04e436cf2b30f6897f4ee561acaaf3fd3b677bc2f2d58dc92649245f7b105bbf0ec1b8f5612f5465e2c46d8b55786863508192d0a68aa381ddc44a315c
|
||||
|
||||
@@ -1,33 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
MY_PN=VBoxGuestAdditions
|
||||
MY_PV="${PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
MY_P=${MY_PN}_${MY_PV}
|
||||
|
||||
DESCRIPTION="CD image containing guest additions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
|
||||
|
||||
LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE=""
|
||||
RESTRICT="mirror"
|
||||
|
||||
RDEPEND="!app-emulation/virtualbox-bin
|
||||
!=app-emulation/virtualbox-9999"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_unpack() {
|
||||
return 0
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/${PN/-additions}
|
||||
newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
MY_PN=VBoxGuestAdditions
|
||||
MY_PV="${PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
MY_P=${MY_PN}_${MY_PV}
|
||||
|
||||
DESCRIPTION="CD image containing guest additions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
|
||||
|
||||
LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
|
||||
SLOT="0"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
RESTRICT="mirror"
|
||||
|
||||
RDEPEND="!app-emulation/virtualbox-bin
|
||||
!=app-emulation/virtualbox-9999"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
src_unpack() {
|
||||
return 0
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /usr/share/${PN/-additions}
|
||||
newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
|
||||
}
|
||||
@@ -1,25 +1,18 @@
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.22-126460.tar.gz 19640932 BLAKE2B 162ab40da6b2cd30d00e020666a1f4fb026e29af2ca9d6c36c294e5fa299b61ab8fd147f24d2b500426c768808db2c7693c30e88519e695d7759f8eedf1c52c5 SHA512 85b8552668b6580bea24f051ad861c82b9ba32177fb7fa37fe2980d8bab32a84325d02bfa9c8f55c2021a4000ef2546d8996ca8b99ca7fc19f8281a92108dfb0
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.26-128414.tar.gz 19684009 BLAKE2B 81787dcf3b70211fa9c84a40c668100eda0dfd2ce3e1d35c226cb6913ef74027f3444be93069a5e881d8e60905477460a180cb98919050286978edf9c1edcdf3 SHA512 deb4c62d58e2071f4413f0ff769e9ecd756362920b29482a6a3d77566c327b075cb5ecafdc65985305b8b798dc56ca2104a0f8244651fca89c4e15ef879c121e
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.28-130011.tar.gz 19719444 BLAKE2B 4b70bb91f4309efbc9a3127e85aaab2175dee1bd3535dce17f3e36747c60ea4b2951958020c3b922b3f832e5cc2a40785ec7fdbe9be6af8a93513ac3d8012d20 SHA512 9da57baaa508cd86663e57b9c545532207fd8460bddb9fd92c3a0058da05cd81e782f99f7c6cc3bbbe1811ebff67e9e7455ccf4a7851d2c3025c4d4d98acf10d
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.30-130521.tar.gz 26914147 BLAKE2B f595f32a76649a803be490a9a6d46702e82cc835274973f0867f957d944724252b59e9844167b0038b9ba2b91854443f6eeaf084278534f4ab4249444fb8755a SHA512 f08fde658c7c1e916ce2c0ccebe9b05e7963168bbf945156c96f75acbd06ef1dca2088371fc3a6f75c84232bee9ebbed3b6bf92dbd0702cb5ff496cdc11227c5
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.4-128413.tar.gz 23290549 BLAKE2B f9ac1a560d5e8b9b73efa21e3623c9f6f0d7769eb4cad7b01d8f68a135a74573659a0a9b092f7ab35beb348ed2722fcf7862aa66e47987b33038f488b88b1129 SHA512 ee54cbdf58de8d37ba84fffd2baec2c9d3915feeab715767515fd6d6ec3032dad2f02509b08cea24754cfce0974a7c1b29c6050bff466af53c1ac6589f4c0215
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.6-130049.tar.gz 23309541 BLAKE2B 550dcee0893c820e3113344f5990528ec2ade766f0a3ff1efc0965c555f820224070bec1f4b4b8b835b2150a7279d1bf9b247433a42658f0e179326c7d78eb0c SHA512 e0b0061137f2e5db1cba0aaf287be2f06cc5379e8f9b562a661beae1f2cc8855f0a78e173473bf44906ca84d6a09c0afa82e0f4026cfb5fb64f9fe6267ab3044
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.8-130520.tar.gz 23309069 BLAKE2B bbb060e0e13e336ee445234d7a61ded3896a0948a6a24f3d4b1792da4a9003cfb5717b7f608ffd9c74b4bfe2b24ed918fa2e87cf90ec3aaa3a7b31a7ef33dee5 SHA512 f942c08dd905163cadf79897a0ad8e8a280c96a555bfb9b5d2fc50c25872e8fe69c2f30326bd6a074ed73ea2d6f99b02e143870c05c68c663ed32aee62abba1a
|
||||
DIST VirtualBox-5.2.22-126460-Linux_amd64.run 88821201 BLAKE2B 1b0433844247ee9531af915dcbb740183fa29fb296f8c78b4165cc3b48300da71f7d329026983da581ffff0d7b8976a2e5e32d5e948861a557ddfa2437813ea0 SHA512 22b20a68884a114818fcdfe9a459a7c3b1b3598526a74cc66407f5bcdc6eb6bcbe022b820477ccdc081e22349777b73fac9d6126585ee3c8fa0d3d24624006f3
|
||||
DIST VirtualBox-5.2.22-126460-Linux_x86.run 87817677 BLAKE2B 5f11e5f92386c9524869082cf1a5af413c69fe5b36b1ace58887076000c7b928267eb7c3be22282885d6871ccdcee981ec79a526c71f281f0e8ada5858194851 SHA512 32d44b6d691e33a1ee1426cb7a3cb3648722709c588d177951b8be802546faadfd612567981bbbfed3d782b18260e6e638e7879813f3b06bb5a8387b052b0227
|
||||
DIST VirtualBox-5.2.26-128414-Linux_amd64.run 89220562 BLAKE2B d937e3a8f622ed1afc8ab7d2479401c6b41f6b1404197b2d86933d741a209071b1bc98de14ea4f25b2b0f2a22a328393908f85955f8879dbf8b28e2b981e4d04 SHA512 c8d7741408d234e7c05709dd0ed66d30b427b0f39976f232b1fe8a17160d36c4dda7d3adda46a38cbdd6626d34570805f582ac0aae2a975385a1f1d06e97f354
|
||||
DIST VirtualBox-5.2.26-128414-Linux_x86.run 88339918 BLAKE2B 0fe177a8d9ab4c4cb894151a00f9554713dee27af1fe3036591a0e7865c8869eef17368ab42270d5a9081c849e6550ebef809c3f8f09a9238e2f5a5f0c9e76e5 SHA512 6a809cf29a2cd70bddeca0443955ea10044553ef85744949b604f92a8bca96b9deb1c37f723388d1f27f903c9469e7cb853a0bf7d6928bb18ba61cb19b216fba
|
||||
DIST VirtualBox-5.2.28-130011-Linux_amd64.run 89445843 BLAKE2B c5a91dad470ec1bf9c9bc6ff2e8197bb05e16098e8e9c8168d41c8657d0acf8556d77446d3ffbdeee054874b70c744644a00b3a6eb0bb0b6fb51bfc6bdeec367 SHA512 0f4f5ab8248ee65894609a63138b5001d04e1475f3ecd5f38a85f33be5b12eebdd2ab8a2bfeae6a99ba30c2c304b51e2466560316e634d82f47fa99e895e8b43
|
||||
DIST VirtualBox-5.2.28-130011-Linux_x86.run 88544719 BLAKE2B ed76962b9ddcd27136a4ced260cad88825542e690b633bd54a4aa8e877f47560ca93401ec67bb75224cd2a7247d5a477d7d532f78f11d341e69cab03240cbe9d SHA512 7c8292b898f7f701eeeeb7a27112f1350b7a255aaa095a7fb3a3037205d30948033acc368a28eeac70e9bd841f1032b946f802a7c9ab47b88105bbf343a14bb9
|
||||
DIST VirtualBox-5.2.30-130521-Linux_amd64.run 89855442 BLAKE2B ef1b8e2c83a8cc6404ccdc8cb446dfbe7ea827f88e857947779c916745f5058db33ef075c531914e4974d8abc00b4099fb531e0965a7116971d9a0560eb17a1f SHA512 36b5ee0e1815bebd5a75947004206c43c5f84341b7a967b33d37cf4b35fb6261594788859b636a918edaece4af9d08b1892db7c17e0a30a83bf9e69cd175b123
|
||||
DIST VirtualBox-5.2.30-130521-Linux_x86.run 88923599 BLAKE2B e8e5abf4b839c4edd4833c766824255675554cad2050f007d6459f28edc3f70bfd6346bbc893070630efdaf106a2e236974fe7fe09dc918e69dc1c9858edc369 SHA512 d6cddcab262422ee08ebbb796a4c2615dabad3ffde4fa5774a58a087cb14b2b813736053639dd132129a412fd68200d7666bdc110ce44d3ada864b9e7ebadaf5
|
||||
DIST VirtualBox-6.0.4-128413-Linux_amd64.run 154920406 BLAKE2B 518ef3ee6a5b8d066b9238ea3660cce5898b15471805cdcc508471a8a7b1003d5b4d894a8de5be4e70a67abe77dd05ce7d463603081749836d1e6b58aa43aa04 SHA512 a35cbc5d726acde31939d8729695cb041c8e962af3f4894153e5779af4efa1b260f0f021de9c5a3edc651271e7adfa1818d6b9c1e081155f483cb148555e52b5
|
||||
DIST VirtualBox-6.0.6-130049-Linux_amd64.run 132914648 BLAKE2B 720d98a3d271a545e1ff3357731c44d592c2f1e3a5c685f68b1daeecd9880c784f19de905c5ca73fa6a7be77ecc550e97f672b08198f90ead13c059edb4c59d1 SHA512 ee1156e940b1c1c2e4c82d77148f56495845731d73ef68f4a5da9c19f008c978c6ef3e7693b70e7d16ebf44202deeba30928674a26ad3090dad7f5ae2a242a88
|
||||
DIST VirtualBox-6.0.8-130520-Linux_amd64.run 133672408 BLAKE2B 62c8d51502c4b3a15ba2a79356227c9e932c87480b31f3f70a5c89881f757a2725f4c1800ac312866f0e1e2e2970f6288d4970b52428ce94e390dfc68872ea7c SHA512 ea9061f420c2fce424c98903c8f7845cbb60eab83722de2f7ccd5723df81365b8e8b6fe80d183b4b38a30c13432fa4c567ea05e799ee176111130c3060bc25b7
|
||||
DIST VirtualBoxSDK-5.2.22-126460.zip 10154660 BLAKE2B e0a0106f695ca7198d4b2ac5c62bb435fe7934858115dcb3aed57b40d82655bd54cbbae63b279132c23762a227c53affe68131a0bf9452c69dcaf2162b1e4ebf SHA512 1d34b8f7f32602b5656fdb6184e6c35cc54d6ecb36bc41d7df3e154f18c27ea5938635969feb69defe86a53897eee87792514967f15810224ee89e8e523d2b29
|
||||
DIST VirtualBoxSDK-5.2.26-128414.zip 10159276 BLAKE2B 32a9e0a70cc63c8e0daa7080f8e10ac8a514837be98a66b00161cd0c9bf2cc42ef0a11f3a69a742a2f6745b4c8b8fe9e946e18f81cd5ef3ab2f68d5e3c95c568 SHA512 f3d1cc622734ecb0f56fcdf5728fcc747e3b084cb2358d420c55c1acd98d2f24870f0fd18cea430f118f34bca10199526ba195a314d6ce7fb6c4bc8281d89f09
|
||||
DIST VirtualBoxSDK-5.2.28-130011.zip 10157910 BLAKE2B 793918a663027a1396706b3aa0573679526b9c02aaaaadfe7cf4448744fc3ee6ea0484cdd01b07cb03169583b91fb1567d9c2f30046fc4bcb113d709aed30242 SHA512 90b25a1dddc50efe29cc1bd70819ca945be5f474c89e9fea90b0aa2f3ace448ec961ee749b6e3f41f763c05edd824d4a5e3c1c227db8e9a59267f91b87c24770
|
||||
DIST VirtualBoxSDK-5.2.30-130521.zip 10153996 BLAKE2B d0c24220f3d9d10528e10dd65a884d7431bb54b3fe186500685f7ee228b74aae2ed81650e695f7a47d7b8769fc94d7c8d8dfda443fe3ee0f11fc4773f1b34a2c SHA512 6305c7884ede60090726d9f9e6628a20030537d121892d2005e13abce5233df85fcfc465faee199fd38901431e1d9f86c9985698ddd6b0594f80842f34b8b8b3
|
||||
DIST VirtualBoxSDK-6.0.4-128413.zip 10755635 BLAKE2B 60333b130adbacc85a84c65ee638effcb6d1a226957c48907df342853b0a9ba4d5632d93858e539fafe2ec28befaa7de584538b46ee83a05789b065a05c3107c SHA512 de2c3e979fe35cda8b433c27f4ce52d5c86e7c0bdfb061a758fce642d4aab908c7c6808c3110ec81d4967977768de95ee8be5cd330d634d3dc9711dd77f17867
|
||||
DIST VirtualBoxSDK-6.0.6-130049.zip 10759233 BLAKE2B f5fbcdeacfa3d4843b62728ecd2406785355eecd396292502ae2ebdadcdb38c24d0565a1304e935a1b3cc390880c443f9e8e490ab18adcc13f4b461c9750441a SHA512 45c5450249ab5ac43eb5dbc4d6e2b61cd4cd5a22005f38fd019d909f9d4b98147b959ff836ea05cceb7d730196a14763472ac6fe4113d1de7c11fad76300ac82
|
||||
DIST VirtualBoxSDK-6.0.8-130520.zip 10758177 BLAKE2B 6d4f8fc33cb57ff5055775cc0e9f676eede2cc07d62c73ee66813e9aae71ce6a73c2c81699234d5b5eab8244d9f15374a0485cfed1bedec429088e2d82bfd91a SHA512 2a94359904869b228337eb754bf545d32981bdc16ecc33544f30a6ce67d3ee1cec2d0c5bd02ed510ecfc7779871a53dc391a39a37a29fd725a403fd68789a081
|
||||
|
||||
@@ -1,287 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit xdg-utils gnome2 pax-utils python-r1 udev unpacker eapi7-ver
|
||||
|
||||
MAIN_PV="$(ver_cut 1-3)"
|
||||
if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
|
||||
MY_PV="${MAIN_PV}_$(ver_cut 5)"
|
||||
MY_PV="${MY_PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
else
|
||||
MY_PV="${MAIN_PV}"
|
||||
fi
|
||||
VBOX_BUILD_ID="$(ver_cut 4)"
|
||||
VBOX_PV="${MY_PV}-${VBOX_BUILD_ID}"
|
||||
MY_P="VirtualBox-${VBOX_PV}-Linux"
|
||||
# needed as sometimes the extpack gets another build ID
|
||||
EXTP_PV="${VBOX_PV}"
|
||||
EXTP_PN="Oracle_VM_VirtualBox_Extension_Pack"
|
||||
EXTP_P="${EXTP_PN}-${EXTP_PV}"
|
||||
# needed as sometimes the SDK gets another build ID
|
||||
SDK_PV="${VBOX_PV}"
|
||||
SDK_P="VirtualBoxSDK-${SDK_PV}"
|
||||
|
||||
DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="amd64? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_amd64.run )
|
||||
x86? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_x86.run )
|
||||
https://download.virtualbox.org/virtualbox/${MY_PV}/${EXTP_P}.vbox-extpack -> ${EXTP_P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2 PUEL"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="+additions +chm headless python vboxwebsrv rdesktop-vrdp"
|
||||
RESTRICT="mirror"
|
||||
|
||||
if [[ "${PV}" != *beta* ]] ; then
|
||||
SRC_URI+="
|
||||
sdk? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${SDK_P}.zip )"
|
||||
IUSE+=" sdk"
|
||||
fi
|
||||
|
||||
DEPEND="app-arch/unzip
|
||||
${PYTHON_DEPS}"
|
||||
|
||||
RDEPEND="!!app-emulation/virtualbox
|
||||
!app-emulation/virtualbox-additions
|
||||
~app-emulation/virtualbox-modules-${MAIN_PV}
|
||||
!headless? (
|
||||
dev-libs/glib
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
media-libs/libpng
|
||||
media-libs/libsdl[X]
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXft
|
||||
x11-libs/libXi
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
chm? ( dev-libs/expat )
|
||||
)
|
||||
dev-libs/libxml2
|
||||
sys-fs/lvm2
|
||||
x11-libs/libXau
|
||||
x11-libs/libX11
|
||||
x11-libs/libXt
|
||||
x11-libs/libXmu
|
||||
x11-libs/libSM
|
||||
x11-libs/libICE
|
||||
x11-libs/libXdmcp
|
||||
${PYTHON_DEPS}"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
S="${WORKDIR}"
|
||||
|
||||
QA_PREBUILT="opt/VirtualBox/*"
|
||||
|
||||
PYTHON_UPDATER_IGNORE="1"
|
||||
|
||||
src_unpack() {
|
||||
unpack_makeself ${MY_P}_${ARCH}.run
|
||||
unpack ./VirtualBox.tar.bz2
|
||||
|
||||
mkdir "${S}"/${EXTP_PN} || die
|
||||
pushd "${S}"/${EXTP_PN} &>/dev/null || die
|
||||
unpack ${EXTP_P}.tar.gz
|
||||
popd &>/dev/null || die
|
||||
|
||||
if [[ "${PV}" != *beta* ]] && use sdk ; then
|
||||
unpack VirtualBoxSDK-${SDK_PV}.zip
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
:;
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
:;
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# create virtualbox configurations files
|
||||
insinto /etc/vbox
|
||||
newins "${FILESDIR}/${PN}-config" vbox.cfg
|
||||
|
||||
if ! use headless ; then
|
||||
newmenu "${FILESDIR}"/${PN}.desktop-2 ${PN}.desktop
|
||||
|
||||
# set up symlinks (bug #572012)
|
||||
dosym ../../../../opt/VirtualBox/virtualbox.xml /usr/share/mime/packages/virtualbox.xml
|
||||
|
||||
local size ico icofile
|
||||
for size in 16 24 32 48 64 72 96 128 256 ; do
|
||||
pushd "${S}"/icons/${size}x${size} &>/dev/null || die
|
||||
if [[ -f "virtualbox.png" ]] ; then
|
||||
doicon -s ${size} virtualbox.png
|
||||
fi
|
||||
for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
|
||||
icofile="virtualbox-${ico}.png"
|
||||
if [[ -f "${icofile}" ]] ; then
|
||||
doicon -s ${size} ${icofile}
|
||||
fi
|
||||
done
|
||||
popd &>/dev/null || die
|
||||
done
|
||||
doicon -s scalable "${S}"/icons/scalable/virtualbox.svg
|
||||
insinto /usr/share/pixmaps
|
||||
newins "${S}"/icons/48x48/virtualbox.png ${PN}.png
|
||||
fi
|
||||
|
||||
pushd "${S}"/${EXTP_PN} &>/dev/null || die
|
||||
insinto /opt/VirtualBox/ExtensionPacks/${EXTP_PN}
|
||||
doins -r linux.${ARCH}
|
||||
doins ExtPack* PXE-Intel.rom
|
||||
popd &>/dev/null || die
|
||||
rm -rf "${S}"/${EXTP_PN}
|
||||
|
||||
insinto /opt/VirtualBox
|
||||
dodir /opt/bin
|
||||
|
||||
doins UserManual.pdf
|
||||
|
||||
if [[ "${PV}" != *beta* ]] && use sdk ; then
|
||||
doins -r sdk
|
||||
fi
|
||||
|
||||
if use additions; then
|
||||
doins -r additions
|
||||
fi
|
||||
|
||||
if use vboxwebsrv; then
|
||||
doins vboxwebsrv
|
||||
fowners root:vboxusers /opt/VirtualBox/vboxwebsrv
|
||||
fperms 0750 /opt/VirtualBox/vboxwebsrv
|
||||
dosym ../../opt/VirtualBox/VBox.sh /opt/bin/vboxwebsrv
|
||||
newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
|
||||
newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
|
||||
fi
|
||||
|
||||
if use rdesktop-vrdp; then
|
||||
doins rdesktop-vrdp
|
||||
doins -r rdesktop-vrdp-keymaps
|
||||
fperms 0750 /opt/VirtualBox/rdesktop-vrdp
|
||||
dosym ../../opt/VirtualBox/rdesktop-vrdp /opt/bin/rdesktop-vrdp
|
||||
fi
|
||||
|
||||
if ! use headless && use chm; then
|
||||
doins kchmviewer VirtualBox.chm
|
||||
fowners root:vboxusers /opt/VirtualBox/kchmviewer
|
||||
fperms 0750 /opt/VirtualBox/kchmviewer
|
||||
fi
|
||||
|
||||
# This ebuild / package supports only py2.7. When py3 comes is unknown.
|
||||
# The compile phase makes VBoxPython2_7.so.
|
||||
# py3 support would presumably require a binary pre-compiled by py3.
|
||||
use python && doins VBoxPython.so VBoxPython2_7.so
|
||||
|
||||
rm -rf src rdesktop* deffiles install* routines.sh runlevel.sh \
|
||||
vboxdrv.sh VBox.sh VBox.png vboxnet.sh additions VirtualBox.desktop \
|
||||
VirtualBox.tar.bz2 LICENSE VBoxSysInfo.sh rdesktop* vboxwebsrv \
|
||||
webtest kchmviewer VirtualBox.chm vbox-create-usb-node.sh \
|
||||
90-vbox-usb.fdi uninstall.sh vboxshell.py vboxdrv-pardus.py \
|
||||
VBoxPython?_*.so
|
||||
|
||||
if use headless ; then
|
||||
rm -rf VBoxSDL VirtualBox VBoxKeyboard.so
|
||||
fi
|
||||
|
||||
doins -r * || die
|
||||
|
||||
# create symlinks for working around unsupported $ORIGIN/.. in VBoxC.so (setuid)
|
||||
dosym ../VBoxVMM.so /opt/VirtualBox/components/VBoxVMM.so
|
||||
dosym ../VBoxREM.so /opt/VirtualBox/components/VBoxREM.so
|
||||
dosym ../VBoxRT.so /opt/VirtualBox/components/VBoxRT.so
|
||||
dosym ../VBoxDDU.so /opt/VirtualBox/components/VBoxDDU.so
|
||||
dosym ../VBoxXPCOM.so /opt/VirtualBox/components/VBoxXPCOM.so
|
||||
|
||||
local each
|
||||
for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,NetAdpCtl,NetDHCP,NetNAT,TestOGL,ExtPackHelperApp}; do
|
||||
fowners root:vboxusers /opt/VirtualBox/${each}
|
||||
fperms 0750 /opt/VirtualBox/${each}
|
||||
pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
|
||||
done
|
||||
# VBoxNetAdpCtl and VBoxNetDHCP binaries need to be suid root in any case..
|
||||
fperms 4750 /opt/VirtualBox/VBoxNetAdpCtl
|
||||
fperms 4750 /opt/VirtualBox/VBoxNetDHCP
|
||||
fperms 4750 /opt/VirtualBox/VBoxNetNAT
|
||||
|
||||
if ! use headless ; then
|
||||
# Hardened build: Mark selected binaries set-user-ID-on-execution
|
||||
for each in VBox{SDL,Headless} VirtualBox; do
|
||||
fowners root:vboxusers /opt/VirtualBox/${each}
|
||||
fperms 4510 /opt/VirtualBox/${each}
|
||||
pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
|
||||
done
|
||||
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VirtualBox
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VBoxSDL
|
||||
else
|
||||
# Hardened build: Mark selected binaries set-user-ID-on-execution
|
||||
fowners root:vboxusers /opt/VirtualBox/VBoxHeadless
|
||||
fperms 4510 /opt/VirtualBox/VBoxHeadless
|
||||
pax-mark -m "${ED%/}"/opt/VirtualBox/VBoxHeadless
|
||||
fi
|
||||
|
||||
exeinto /opt/VirtualBox
|
||||
newexe "${FILESDIR}/${PN}-3-wrapper" "VBox.sh"
|
||||
fowners root:vboxusers /opt/VirtualBox/VBox.sh
|
||||
fperms 0750 /opt/VirtualBox/VBox.sh
|
||||
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VBoxManage
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VBoxVRDP
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VBoxHeadless
|
||||
dosym ../VirtualBox/VBoxTunctl /opt/bin/VBoxTunctl
|
||||
|
||||
# set an env-variable for 3rd party tools
|
||||
echo -n "VBOX_APP_HOME=/opt/VirtualBox" > "${T}/90virtualbox"
|
||||
doenvd "${T}/90virtualbox"
|
||||
|
||||
local udevdir="$(get_udevdir)"
|
||||
insinto ${udevdir}/rules.d
|
||||
doins "${FILESDIR}"/10-virtualbox.rules
|
||||
sed "s@%UDEVDIR%@${udevdir}@" \
|
||||
-i "${ED%/}"${udevdir}/rules.d/10-virtualbox.rules || die
|
||||
# move udev scripts into ${udevdir} (bug #372491)
|
||||
mv "${ED%/}"/opt/VirtualBox/VBoxCreateUSBNode.sh "${ED%/}"${udevdir} || die
|
||||
fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_desktop_database_update
|
||||
|
||||
gnome2_icon_cache_update
|
||||
|
||||
udevadm control --reload-rules && udevadm trigger --subsystem-match=usb
|
||||
|
||||
elog ""
|
||||
if ! use headless ; then
|
||||
elog "To launch VirtualBox just type: \"VirtualBox\""
|
||||
elog ""
|
||||
fi
|
||||
elog "You must be in the vboxusers group to use VirtualBox."
|
||||
elog ""
|
||||
elog "For advanced networking setups you should emerge:"
|
||||
elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
|
||||
elog ""
|
||||
elog "Please visit http://www.virtualbox.org/wiki/Editions for"
|
||||
elog "an overview about the different features of ${PN}"
|
||||
elog "and virtualbox-ose"
|
||||
if [ -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() {
|
||||
xdg_desktop_database_update
|
||||
}
|
||||
@@ -1,289 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
|
||||
inherit xdg-utils gnome2 pax-utils python-r1 udev unpacker eapi7-ver
|
||||
|
||||
MAIN_PV="$(ver_cut 1-3)"
|
||||
if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
|
||||
MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
|
||||
MY_PV="${MY_PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
else
|
||||
MY_PV="${MAIN_PV}"
|
||||
KEYWORDS="~amd64" #~x86
|
||||
fi
|
||||
VBOX_BUILD_ID="$(ver_cut 4)"
|
||||
VBOX_PV="${MY_PV}-${VBOX_BUILD_ID}"
|
||||
MY_P="VirtualBox-${VBOX_PV}-Linux"
|
||||
# needed as sometimes the extpack gets another build ID
|
||||
EXTP_PV="${VBOX_PV}"
|
||||
EXTP_PN="Oracle_VM_VirtualBox_Extension_Pack"
|
||||
EXTP_P="${EXTP_PN}-${EXTP_PV}"
|
||||
# needed as sometimes the SDK gets another build ID
|
||||
SDK_PV="${VBOX_PV}"
|
||||
SDK_P="VirtualBoxSDK-${SDK_PV}"
|
||||
|
||||
DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="amd64? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_amd64.run )
|
||||
https://download.virtualbox.org/virtualbox/${MY_PV}/${EXTP_P}.vbox-extpack -> ${EXTP_P}.tar.gz"
|
||||
#x86? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_x86.run )
|
||||
|
||||
LICENSE="GPL-2 PUEL"
|
||||
SLOT="0"
|
||||
IUSE="+additions +chm headless python vboxwebsrv rdesktop-vrdp"
|
||||
RESTRICT="mirror"
|
||||
|
||||
if [[ "${PV}" != *beta* ]] ; then
|
||||
SRC_URI+="
|
||||
sdk? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${SDK_P}.zip )"
|
||||
IUSE+=" sdk"
|
||||
fi
|
||||
|
||||
DEPEND="app-arch/unzip
|
||||
${PYTHON_DEPS}"
|
||||
|
||||
RDEPEND="!!app-emulation/virtualbox
|
||||
!app-emulation/virtualbox-additions
|
||||
~app-emulation/virtualbox-modules-${MAIN_PV}
|
||||
!headless? (
|
||||
dev-libs/glib
|
||||
media-libs/fontconfig
|
||||
media-libs/freetype
|
||||
media-libs/libpng
|
||||
media-libs/libsdl[X]
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXext
|
||||
x11-libs/libXfixes
|
||||
x11-libs/libXft
|
||||
x11-libs/libXi
|
||||
x11-libs/libXinerama
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXrender
|
||||
chm? ( dev-libs/expat )
|
||||
)
|
||||
dev-libs/libxml2
|
||||
sys-fs/lvm2
|
||||
x11-libs/libXau
|
||||
x11-libs/libX11
|
||||
x11-libs/libXt
|
||||
x11-libs/libXmu
|
||||
x11-libs/libSM
|
||||
x11-libs/libICE
|
||||
x11-libs/libXdmcp
|
||||
${PYTHON_DEPS}"
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
S="${WORKDIR}"
|
||||
|
||||
QA_PREBUILT="opt/VirtualBox/*"
|
||||
|
||||
PYTHON_UPDATER_IGNORE="1"
|
||||
|
||||
src_unpack() {
|
||||
unpack_makeself ${MY_P}_${ARCH}.run
|
||||
unpack ./VirtualBox.tar.bz2
|
||||
|
||||
mkdir "${S}"/${EXTP_PN} || die
|
||||
pushd "${S}"/${EXTP_PN} &>/dev/null || die
|
||||
unpack ${EXTP_P}.tar.gz
|
||||
popd &>/dev/null || die
|
||||
|
||||
if [[ "${PV}" != *beta* ]] && use sdk ; then
|
||||
unpack VirtualBoxSDK-${SDK_PV}.zip
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
:;
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
:;
|
||||
}
|
||||
|
||||
src_install() {
|
||||
# create virtualbox configurations files
|
||||
insinto /etc/vbox
|
||||
newins "${FILESDIR}/${PN}-config" vbox.cfg
|
||||
|
||||
if ! use headless ; then
|
||||
newmenu "${FILESDIR}"/${PN}.desktop-2 ${PN}.desktop
|
||||
|
||||
# set up symlinks (bug #572012)
|
||||
dosym ../../../../opt/VirtualBox/virtualbox.xml /usr/share/mime/packages/virtualbox.xml
|
||||
|
||||
local size ico icofile
|
||||
for size in 16 24 32 48 64 72 96 128 256 ; do
|
||||
pushd "${S}"/icons/${size}x${size} &>/dev/null || die
|
||||
if [[ -f "virtualbox.png" ]] ; then
|
||||
doicon -s ${size} virtualbox.png
|
||||
fi
|
||||
for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
|
||||
icofile="virtualbox-${ico}.png"
|
||||
if [[ -f "${icofile}" ]] ; then
|
||||
doicon -s ${size} ${icofile}
|
||||
fi
|
||||
done
|
||||
popd &>/dev/null || die
|
||||
done
|
||||
doicon -s scalable "${S}"/icons/scalable/virtualbox.svg
|
||||
insinto /usr/share/pixmaps
|
||||
newins "${S}"/icons/48x48/virtualbox.png ${PN}.png
|
||||
fi
|
||||
|
||||
pushd "${S}"/${EXTP_PN} &>/dev/null || die
|
||||
insinto /opt/VirtualBox/ExtensionPacks/${EXTP_PN}
|
||||
doins -r linux.${ARCH}
|
||||
doins ExtPack* PXE-Intel.rom
|
||||
popd &>/dev/null || die
|
||||
rm -rf "${S}"/${EXTP_PN}
|
||||
|
||||
insinto /opt/VirtualBox
|
||||
dodir /opt/bin
|
||||
|
||||
doins UserManual.pdf
|
||||
|
||||
if [[ "${PV}" != *beta* ]] && use sdk ; then
|
||||
doins -r sdk
|
||||
fi
|
||||
|
||||
if use additions; then
|
||||
doins -r additions
|
||||
fi
|
||||
|
||||
if use vboxwebsrv; then
|
||||
doins vboxwebsrv
|
||||
fowners root:vboxusers /opt/VirtualBox/vboxwebsrv
|
||||
fperms 0750 /opt/VirtualBox/vboxwebsrv
|
||||
dosym ../../opt/VirtualBox/VBox.sh /opt/bin/vboxwebsrv
|
||||
newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
|
||||
newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
|
||||
fi
|
||||
|
||||
if use rdesktop-vrdp; then
|
||||
doins rdesktop-vrdp
|
||||
doins -r rdesktop-vrdp-keymaps
|
||||
fperms 0750 /opt/VirtualBox/rdesktop-vrdp
|
||||
dosym ../../opt/VirtualBox/rdesktop-vrdp /opt/bin/rdesktop-vrdp
|
||||
fi
|
||||
|
||||
if ! use headless && use chm; then
|
||||
doins kchmviewer VirtualBox.chm
|
||||
fowners root:vboxusers /opt/VirtualBox/kchmviewer
|
||||
fperms 0750 /opt/VirtualBox/kchmviewer
|
||||
fi
|
||||
|
||||
# This ebuild / package supports only py2.7. When py3 comes is unknown.
|
||||
# The compile phase makes VBoxPython2_7.so.
|
||||
# py3 support would presumably require a binary pre-compiled by py3.
|
||||
use python && doins VBoxPython.so
|
||||
|
||||
rm -rf src rdesktop* deffiles install* routines.sh runlevel.sh \
|
||||
vboxdrv.sh VBox.sh VBox.png vboxnet.sh additions VirtualBox.desktop \
|
||||
VirtualBox.tar.bz2 LICENSE VBoxSysInfo.sh rdesktop* vboxwebsrv \
|
||||
webtest kchmviewer VirtualBox.chm vbox-create-usb-node.sh \
|
||||
90-vbox-usb.fdi uninstall.sh vboxshell.py vboxdrv-pardus.py \
|
||||
VBoxPython?_*.so
|
||||
|
||||
if use headless ; then
|
||||
rm -rf VBoxSDL VirtualBox{,VM} VBoxKeyboard.so
|
||||
fi
|
||||
|
||||
doins -r * || die
|
||||
|
||||
# create symlinks for working around unsupported $ORIGIN/.. in VBoxC.so (setuid)
|
||||
dosym ../VBoxVMM.so /opt/VirtualBox/components/VBoxVMM.so
|
||||
dosym ../VBoxREM.so /opt/VirtualBox/components/VBoxREM.so
|
||||
dosym ../VBoxRT.so /opt/VirtualBox/components/VBoxRT.so
|
||||
dosym ../VBoxDDU.so /opt/VirtualBox/components/VBoxDDU.so
|
||||
dosym ../VBoxXPCOM.so /opt/VirtualBox/components/VBoxXPCOM.so
|
||||
|
||||
local each
|
||||
for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,TestOGL,ExtPackHelperApp} $(usex headless '' VirtualBox) ; do
|
||||
fowners root:vboxusers /opt/VirtualBox/${each}
|
||||
fperms 0750 /opt/VirtualBox/${each}
|
||||
pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
|
||||
done
|
||||
# VBoxNetAdpCtl and VBoxNetDHCP binaries need to be suid root in any case..
|
||||
for each in VBoxNet{AdpCtl,DHCP,NAT} $(usex headless '' VirtualBoxVM) ; do
|
||||
fowners root:vboxusers /opt/VirtualBox/${each}
|
||||
fperms 4750 /opt/VirtualBox/${each}
|
||||
pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
|
||||
done
|
||||
|
||||
if ! use headless ; then
|
||||
# Hardened build: Mark selected binaries set-user-ID-on-execution
|
||||
for each in VBox{SDL,Headless} ; do
|
||||
fowners root:vboxusers /opt/VirtualBox/${each}
|
||||
fperms 4510 /opt/VirtualBox/${each}
|
||||
pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
|
||||
done
|
||||
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VirtualBox
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VBoxSDL
|
||||
else
|
||||
# Hardened build: Mark selected binaries set-user-ID-on-execution
|
||||
fowners root:vboxusers /opt/VirtualBox/VBoxHeadless
|
||||
fperms 4510 /opt/VirtualBox/VBoxHeadless
|
||||
pax-mark -m "${ED%/}"/opt/VirtualBox/VBoxHeadless
|
||||
fi
|
||||
|
||||
exeinto /opt/VirtualBox
|
||||
newexe "${FILESDIR}/${PN}-3-wrapper" "VBox.sh"
|
||||
fowners root:vboxusers /opt/VirtualBox/VBox.sh
|
||||
fperms 0750 /opt/VirtualBox/VBox.sh
|
||||
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VBoxManage
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VBoxVRDP
|
||||
dosym ../VirtualBox/VBox.sh /opt/bin/VBoxHeadless
|
||||
dosym ../VirtualBox/VBoxTunctl /opt/bin/VBoxTunctl
|
||||
|
||||
# set an env-variable for 3rd party tools
|
||||
echo -n "VBOX_APP_HOME=/opt/VirtualBox" > "${T}/90virtualbox"
|
||||
doenvd "${T}/90virtualbox"
|
||||
|
||||
local udevdir="$(get_udevdir)"
|
||||
insinto ${udevdir}/rules.d
|
||||
doins "${FILESDIR}"/10-virtualbox.rules
|
||||
sed "s@%UDEVDIR%@${udevdir}@" \
|
||||
-i "${ED%/}"${udevdir}/rules.d/10-virtualbox.rules || die
|
||||
# move udev scripts into ${udevdir} (bug #372491)
|
||||
mv "${ED%/}"/opt/VirtualBox/VBoxCreateUSBNode.sh "${ED%/}"${udevdir} || die
|
||||
fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_desktop_database_update
|
||||
|
||||
gnome2_icon_cache_update
|
||||
|
||||
udevadm control --reload-rules && udevadm trigger --subsystem-match=usb
|
||||
|
||||
elog ""
|
||||
if ! use headless ; then
|
||||
elog "To launch VirtualBox just type: \"VirtualBox\""
|
||||
elog ""
|
||||
fi
|
||||
elog "You must be in the vboxusers group to use VirtualBox."
|
||||
elog ""
|
||||
elog "For advanced networking setups you should emerge:"
|
||||
elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
|
||||
elog ""
|
||||
elog "Please visit http://www.virtualbox.org/wiki/Editions for"
|
||||
elog "an overview about the different features of ${PN}"
|
||||
elog "and virtualbox-ose"
|
||||
if [ -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() {
|
||||
xdg_desktop_database_update
|
||||
}
|
||||
@@ -1,7 +1,5 @@
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.22-126460.tar.gz 19640932 BLAKE2B 162ab40da6b2cd30d00e020666a1f4fb026e29af2ca9d6c36c294e5fa299b61ab8fd147f24d2b500426c768808db2c7693c30e88519e695d7759f8eedf1c52c5 SHA512 85b8552668b6580bea24f051ad861c82b9ba32177fb7fa37fe2980d8bab32a84325d02bfa9c8f55c2021a4000ef2546d8996ca8b99ca7fc19f8281a92108dfb0
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.26-128414.tar.gz 19684009 BLAKE2B 81787dcf3b70211fa9c84a40c668100eda0dfd2ce3e1d35c226cb6913ef74027f3444be93069a5e881d8e60905477460a180cb98919050286978edf9c1edcdf3 SHA512 deb4c62d58e2071f4413f0ff769e9ecd756362920b29482a6a3d77566c327b075cb5ecafdc65985305b8b798dc56ca2104a0f8244651fca89c4e15ef879c121e
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.28-130011.tar.gz 19719444 BLAKE2B 4b70bb91f4309efbc9a3127e85aaab2175dee1bd3535dce17f3e36747c60ea4b2951958020c3b922b3f832e5cc2a40785ec7fdbe9be6af8a93513ac3d8012d20 SHA512 9da57baaa508cd86663e57b9c545532207fd8460bddb9fd92c3a0058da05cd81e782f99f7c6cc3bbbe1811ebff67e9e7455ccf4a7851d2c3025c4d4d98acf10d
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.30-130521.tar.gz 26914147 BLAKE2B f595f32a76649a803be490a9a6d46702e82cc835274973f0867f957d944724252b59e9844167b0038b9ba2b91854443f6eeaf084278534f4ab4249444fb8755a SHA512 f08fde658c7c1e916ce2c0ccebe9b05e7963168bbf945156c96f75acbd06ef1dca2088371fc3a6f75c84232bee9ebbed3b6bf92dbd0702cb5ff496cdc11227c5
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.4-128413.tar.gz 23290549 BLAKE2B f9ac1a560d5e8b9b73efa21e3623c9f6f0d7769eb4cad7b01d8f68a135a74573659a0a9b092f7ab35beb348ed2722fcf7862aa66e47987b33038f488b88b1129 SHA512 ee54cbdf58de8d37ba84fffd2baec2c9d3915feeab715767515fd6d6ec3032dad2f02509b08cea24754cfce0974a7c1b29c6050bff466af53c1ac6589f4c0215
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.6-130049.tar.gz 23309541 BLAKE2B 550dcee0893c820e3113344f5990528ec2ade766f0a3ff1efc0965c555f820224070bec1f4b4b8b835b2150a7279d1bf9b247433a42658f0e179326c7d78eb0c SHA512 e0b0061137f2e5db1cba0aaf287be2f06cc5379e8f9b562a661beae1f2cc8855f0a78e173473bf44906ca84d6a09c0afa82e0f4026cfb5fb64f9fe6267ab3044
|
||||
DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.8-130520.tar.gz 23309069 BLAKE2B bbb060e0e13e336ee445234d7a61ded3896a0948a6a24f3d4b1792da4a9003cfb5717b7f608ffd9c74b4bfe2b24ed918fa2e87cf90ec3aaa3a7b31a7ef33dee5 SHA512 f942c08dd905163cadf79897a0ad8e8a280c96a555bfb9b5d2fc50c25872e8fe69c2f30326bd6a074ed73ea2d6f99b02e143870c05c68c663ed32aee62abba1a
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit multilib
|
||||
|
||||
MAIN_PV="$(ver_cut 1-3)"
|
||||
if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
|
||||
MY_PV="${MAIN_PV}_$(ver_cut 5)"
|
||||
DEP_PV="${MY_PV}"
|
||||
MY_PV="${MY_PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
else
|
||||
MY_PV="${MAIN_PV}"
|
||||
DEP_PV="${MAIN_PV}"
|
||||
fi
|
||||
VBOX_BUILD_ID="$(ver_cut 4)"
|
||||
MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
|
||||
MY_P="${MY_PN}-${MY_PV}-${VBOX_BUILD_ID}"
|
||||
|
||||
DESCRIPTION="PUEL extensions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="PUEL"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE=""
|
||||
RESTRICT="mirror strip"
|
||||
|
||||
RDEPEND="~app-emulation/virtualbox-${DEP_PV}"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
|
||||
|
||||
src_install() {
|
||||
insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
|
||||
doins -r linux.${ARCH}
|
||||
doins ExtPack* PXE-Intel.rom
|
||||
}
|
||||
@@ -1,43 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit multilib
|
||||
|
||||
MAIN_PV="$(ver_cut 1-3)"
|
||||
if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
|
||||
MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
|
||||
DEP_PV="${MY_PV}"
|
||||
MY_PV="${MY_PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
else
|
||||
MY_PV="${MAIN_PV}"
|
||||
DEP_PV="${MAIN_PV}"
|
||||
fi
|
||||
VBOX_BUILD_ID="$(ver_cut 4)"
|
||||
MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
|
||||
MY_P="${MY_PN}-${MY_PV}-${VBOX_BUILD_ID}"
|
||||
|
||||
DESCRIPTION="PUEL extensions for VirtualBox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="PUEL"
|
||||
SLOT="0"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
RESTRICT="mirror strip"
|
||||
|
||||
RDEPEND="~app-emulation/virtualbox-${DEP_PV}"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
|
||||
|
||||
src_install() {
|
||||
insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
|
||||
doins -r linux.${ARCH}
|
||||
doins ExtPack* PXE-Intel.rom
|
||||
}
|
||||
@@ -1,8 +1,6 @@
|
||||
DIST VirtualBox-5.2.22.tar.bz2 118757134 BLAKE2B be795cdbfb09d3d443f63e190b63898239622f5a57aefdd90f382d9a849d09cc1abc2624071fbc60b2c04a12f33376184540cc362c19225733f99a3bcc8ff6a3 SHA512 4f6c4611a3114778f45419587dc1519ca07410c1ea6474cdb18ecd3b068639a4fdac3f25146fe9b8e006e30f19eba134ce9f665182008b033f6f78497e1ea722
|
||||
DIST VirtualBox-5.2.26.tar.bz2 118371765 BLAKE2B 32413b72e33f2f63835a2eb2d47dc75a7b63121934bdffd51ff58e9d63d68b77b4f8dac4605916ba8bd6896240d00024ccc3d7d002d4f6f92d6d9b1dc35995e3 SHA512 aee334c74bd02772ac5e0528d84d31661f61c775d0993c00febe125810efc78a2f779db41bf66283be51b19a35540fee14445bada59a8d3b7affa6ef6645005f
|
||||
DIST VirtualBox-5.2.28.tar.bz2 118655475 BLAKE2B 4e4e75b78de3cb3b6dc2fe2c2f306487cb924bf9ca2d1b0ffc6fc349774d3fa38886d386277a32067daaabfad6e8cd58ea058a78a70d16761d76f6ebed035d16 SHA512 085cfcab82851f98c757ea109ba420335d891a99df52a811e19815b3e55a92894cfb7b6fd4a5aaf15def71811f14e21527625adf885a394144cb5f971eb57782
|
||||
DIST VirtualBox-5.2.30.tar.bz2 118462289 BLAKE2B 87126b5af657815d0fcc8aadf49a23ce613ea0998b70f988f78e9d381138c414c7c73a0bf91955481cf484f5b71081ff1bab8dabe1b41fffde877e1003477625 SHA512 6230846ceda47b8ffe942aa8427f04f193095103371b7210d30e49cd9e384b9828d6917f75ef125e63e2c1810e8aa3b7c17b72f3ede7697c55d6de9da9d3f668
|
||||
DIST VirtualBox-6.0.4.tar.bz2 155233564 BLAKE2B 6bc4d450e275e8aac5dc62ab05d9ba1450e13965f3eba64819315d121bd0e515319be2ad92ab429f2e598e157e89660561de69a2aac87e14792284669bcec7e8 SHA512 c2e5418bafd5d50b46e1bc70280753c2fdfbf7248d782fc398771839950fb575eaea437e9699d56f4d8c92ea4dc9ba8bed74379565dac6114f7e9c45aecc9fdb
|
||||
DIST VirtualBox-6.0.6.tar.bz2 155297550 BLAKE2B a886ed99da3aee7a52d8c0654c33e50ae4155077e3d5061e1888a0cb5760b12dd63fb1205b75ec04419d50261f81e56036bdba79d20b57c836f073af232c913a SHA512 eb71ca94220680ac6cba7af13eb9eef132c21e57b1b27d6bc3c564bba58b000e682d19e36b63660bfa4f4471cd0632d365659ef8c4e3e526931622901a432d1b
|
||||
DIST VirtualBox-6.0.8.tar.bz2 155404889 BLAKE2B 3eb6ebf713c32e301db1673b22c367a89ce1ffb25d12baab6c7335389ce17e08efd744139acc4114231c4d4b69c6370b6e5d5b18ce97fe5494ca7a192fa43f7d SHA512 df18d5df2c82761b8a77e509b2873cdeaa46d11bc50ca166af1e6c30d3042b0cf5640957b1d411333f5bd5be3f03f382550f1afaecf0651d847bc88c95863d83
|
||||
DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
|
||||
|
||||
@@ -1,228 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit linux-mod systemd user toolchain-funcs
|
||||
|
||||
MY_PV="${PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
MY_P="VirtualBox-${MY_PV}"
|
||||
DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
|
||||
https://dev.gentoo.org/~polynomial-c/virtualbox/patchsets/virtualbox-5.2.16-patches-02.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="X"
|
||||
|
||||
RDEPEND="
|
||||
X? ( x11-apps/xrandr
|
||||
x11-apps/xrefresh
|
||||
x11-libs/libXmu
|
||||
x11-libs/libX11
|
||||
x11-libs/libXt
|
||||
x11-libs/libXext
|
||||
x11-libs/libXau
|
||||
x11-libs/libXdmcp
|
||||
x11-libs/libSM
|
||||
x11-libs/libICE )
|
||||
sys-apps/dbus
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
>=dev-util/kbuild-0.1.9998.3127
|
||||
>=dev-lang/yasm-0.6.2
|
||||
sys-devel/bin86
|
||||
sys-libs/pam
|
||||
sys-power/iasl
|
||||
x11-base/xorg-proto
|
||||
"
|
||||
PDEPEND="
|
||||
X? ( x11-drivers/xf86-video-vboxvideo )
|
||||
"
|
||||
BUILD_TARGETS="all"
|
||||
BUILD_TARGET_ARCH="${ARCH}"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
export DISTCC_DISABLE=1 #674256
|
||||
MODULE_NAMES="vboxguest(misc:${WORKDIR}/vboxguest:${WORKDIR}/vboxguest)
|
||||
vboxsf(misc:${WORKDIR}/vboxsf:${WORKDIR}/vboxsf)"
|
||||
use X && MODULE_NAMES+=" vboxvideo(misc:${WORKDIR}/vboxvideo::${WORKDIR}/vboxvideo)"
|
||||
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR}"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
|
||||
# Create and unpack a tarball with the sources of the Linux guest
|
||||
# kernel modules, to include all the needed files
|
||||
"${S}"/src/VBox/Additions/linux/export_modules.sh "${WORKDIR}/vbox-kmod.tar.gz"
|
||||
unpack ./vbox-kmod.tar.gz
|
||||
|
||||
# Remove shipped binaries (kBuild,yasm), see bug #232775
|
||||
cd "${S}"
|
||||
rm -rf kBuild/bin tools
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# PaX fixes (see bug #298988)
|
||||
pushd "${WORKDIR}" &>/dev/null || die
|
||||
eapply "${FILESDIR}"/vboxguest-4.1.0-log-use-c99.patch
|
||||
popd &>/dev/null || die
|
||||
|
||||
# Disable things unused or splitted into separate ebuilds
|
||||
cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
|
||||
use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
|
||||
|
||||
# stupid new header references...
|
||||
local vboxheader mdir
|
||||
for vboxheader in {product,revision,version}-generated.h ; do
|
||||
for mdir in vbox{guest,sf} ; do
|
||||
ln -sf "${S}"/out/linux.${ARCH}/release/${vboxheader} \
|
||||
"${WORKDIR}/${mdir}/${vboxheader}"
|
||||
done
|
||||
done
|
||||
|
||||
# Remove pointless GCC version check
|
||||
sed -e '/^check_gcc$/d' -i configure || die
|
||||
|
||||
eapply "${WORKDIR}/patches"
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# build the user-space tools, warnings are harmless
|
||||
local cmd=(
|
||||
./configure
|
||||
--nofatal
|
||||
--disable-xpcom
|
||||
--disable-sdl-ttf
|
||||
--disable-pulse
|
||||
--disable-alsa
|
||||
--with-gcc="$(tc-getCC)"
|
||||
--with-g++="$(tc-getCXX)"
|
||||
--target-arch=${ARCH}
|
||||
--with-linux="${KV_OUT_DIR}"
|
||||
--build-headless
|
||||
)
|
||||
echo "${cmd[@]}"
|
||||
"${cmd[@]}" || die "configure failed"
|
||||
source ./env.sh
|
||||
export VBOX_GCC_OPT="${CFLAGS} ${CPPFLAGS}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
MAKE="kmk" \
|
||||
emake TOOL_YASM_AS=yasm \
|
||||
VBOX_ONLY_ADDITIONS=1 \
|
||||
KBUILD_VERBOSE=2
|
||||
|
||||
# Now creating the kernel modules. We must do this _after_
|
||||
# we compiled the user-space tools as we need two of the
|
||||
# automatically generated header files. (>=3.2.0)
|
||||
linux-mod_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
|
||||
cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
|
||||
|
||||
insinto /sbin
|
||||
newins mount.vboxsf mount.vboxsf
|
||||
fperms 4755 /sbin/mount.vboxsf
|
||||
|
||||
newinitd "${FILESDIR}"/${PN}-8.initd ${PN}
|
||||
|
||||
insinto /usr/sbin/
|
||||
newins VBoxService vboxguest-service
|
||||
fperms 0755 /usr/sbin/vboxguest-service
|
||||
|
||||
insinto /usr/bin
|
||||
doins VBoxControl
|
||||
fperms 0755 /usr/bin/VBoxControl
|
||||
|
||||
# VBoxClient user service and xrandr wrapper
|
||||
if use X ; then
|
||||
doins VBoxClient
|
||||
fperms 0755 /usr/bin/VBoxClient
|
||||
|
||||
pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
|
||||
|| die
|
||||
newins 98vboxadd-xclient VBoxClient-all
|
||||
fperms 0755 /usr/bin/VBoxClient-all
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
|
||||
# udev rule for vboxdrv
|
||||
local udev_rules_dir="/lib/udev/rules.d"
|
||||
dodir ${udev_rules_dir}
|
||||
echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
|
||||
>> "${ED%/}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|
||||
|| die
|
||||
echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
|
||||
>> "${ED%/}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|
||||
|| die
|
||||
|
||||
# VBoxClient autostart file
|
||||
insinto /etc/xdg/autostart
|
||||
doins "${FILESDIR}"/vboxclient.desktop
|
||||
|
||||
# sample xorg.conf
|
||||
insinto /usr/share/doc/${PF}
|
||||
doins "${FILESDIR}"/xorg.conf.vbox
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
enewgroup vboxguest
|
||||
enewuser vboxguest -1 /bin/sh /dev/null vboxguest
|
||||
# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
|
||||
enewgroup vboxsf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
linux-mod_pkg_postinst
|
||||
if ! use X ; then
|
||||
elog "use flag X is off, enable it to install the"
|
||||
elog "X Window System video driver."
|
||||
fi
|
||||
elog ""
|
||||
elog "Please add users to the \"vboxguest\" group so they can"
|
||||
elog "benefit from seamless mode, auto-resize and clipboard."
|
||||
elog ""
|
||||
elog "The vboxsf group has been added to make automount services work."
|
||||
elog "These services are part of the shared folders support."
|
||||
elog ""
|
||||
elog "Please add:"
|
||||
elog "/etc/init.d/${PN}"
|
||||
elog "to the default runlevel in order to start"
|
||||
elog "needed services."
|
||||
elog "To use the VirtualBox X driver, use the following"
|
||||
elog "file as your /etc/X11/xorg.conf:"
|
||||
elog " /usr/share/doc/${PF}/xorg.conf.vbox"
|
||||
elog ""
|
||||
elog "Also make sure you use the Mesa library for OpenGL:"
|
||||
elog " eselect opengl set xorg-x11"
|
||||
elog ""
|
||||
elog "An autostart .desktop file has been installed to start"
|
||||
elog "VBoxClient in desktop sessions."
|
||||
elog ""
|
||||
elog "You can mount shared folders with:"
|
||||
elog " mount -t vboxsf <shared_folder_name> <mount_point>"
|
||||
elog ""
|
||||
elog "Warning:"
|
||||
elog "this ebuild is only needed if you are running gentoo"
|
||||
elog "inside a VirtualBox Virtual Machine, you don't need"
|
||||
elog "it to run VirtualBox itself."
|
||||
elog ""
|
||||
}
|
||||
@@ -1,230 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit linux-mod systemd user toolchain-funcs
|
||||
|
||||
MY_PV="${PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
MY_P="VirtualBox-${MY_PV}"
|
||||
DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
|
||||
https://dev.gentoo.org/~polynomial-c/virtualbox/patchsets/virtualbox-6.0.0_beta2-patches-01.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="X"
|
||||
|
||||
RDEPEND="
|
||||
X? ( x11-apps/xrandr
|
||||
x11-apps/xrefresh
|
||||
x11-libs/libXmu
|
||||
x11-libs/libX11
|
||||
x11-libs/libXt
|
||||
x11-libs/libXext
|
||||
x11-libs/libXau
|
||||
x11-libs/libXdmcp
|
||||
x11-libs/libSM
|
||||
x11-libs/libICE )
|
||||
sys-apps/dbus
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
>=dev-util/kbuild-0.1.9998.3127
|
||||
>=dev-lang/yasm-0.6.2
|
||||
sys-devel/bin86
|
||||
sys-libs/pam
|
||||
sys-power/iasl
|
||||
x11-base/xorg-proto
|
||||
"
|
||||
PDEPEND="
|
||||
X? ( x11-drivers/xf86-video-vboxvideo )
|
||||
"
|
||||
BUILD_TARGETS="all"
|
||||
BUILD_TARGET_ARCH="${ARCH}"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
pkg_setup() {
|
||||
export DISTCC_DISABLE=1 #674256
|
||||
MODULE_NAMES="vboxguest(misc:${WORKDIR}/vboxguest:${WORKDIR}/vboxguest)
|
||||
vboxsf(misc:${WORKDIR}/vboxsf:${WORKDIR}/vboxsf)"
|
||||
use X && MODULE_NAMES+=" vboxvideo(misc:${WORKDIR}/vboxvideo::${WORKDIR}/vboxvideo)"
|
||||
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR}"
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
unpack ${A}
|
||||
|
||||
# Create and unpack a tarball with the sources of the Linux guest
|
||||
# kernel modules, to include all the needed files
|
||||
"${S}"/src/VBox/Additions/linux/export_modules.sh "${WORKDIR}/vbox-kmod.tar.gz"
|
||||
unpack ./vbox-kmod.tar.gz
|
||||
|
||||
# Remove shipped binaries (kBuild,yasm), see bug #232775
|
||||
cd "${S}"
|
||||
rm -rf kBuild/bin tools
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# PaX fixes (see bug #298988)
|
||||
pushd "${WORKDIR}" &>/dev/null || die
|
||||
eapply "${FILESDIR}"/vboxguest-4.1.0-log-use-c99.patch
|
||||
popd &>/dev/null || die
|
||||
|
||||
# Disable things unused or splitted into separate ebuilds
|
||||
cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
|
||||
use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
|
||||
|
||||
# stupid new header references...
|
||||
local vboxheader mdir
|
||||
for vboxheader in {product,revision,version}-generated.h ; do
|
||||
for mdir in vbox{guest,sf} ; do
|
||||
ln -sf "${S}"/out/linux.${ARCH}/release/${vboxheader} \
|
||||
"${WORKDIR}/${mdir}/${vboxheader}"
|
||||
done
|
||||
done
|
||||
|
||||
# Remove pointless GCC version check
|
||||
sed -e '/^check_gcc$/d' -i configure || die
|
||||
|
||||
rm "${WORKDIR}/patches/010_virtualbox-5.2.12-qt511.patch" || die
|
||||
eapply "${WORKDIR}/patches"
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# build the user-space tools, warnings are harmless
|
||||
local cmd=(
|
||||
./configure
|
||||
--nofatal
|
||||
--disable-xpcom
|
||||
--disable-sdl-ttf
|
||||
--disable-pulse
|
||||
--disable-alsa
|
||||
--with-gcc="$(tc-getCC)"
|
||||
--with-g++="$(tc-getCXX)"
|
||||
--target-arch=${ARCH}
|
||||
--with-linux="${KV_OUT_DIR}"
|
||||
--build-headless
|
||||
)
|
||||
echo "${cmd[@]}"
|
||||
"${cmd[@]}" || die "configure failed"
|
||||
source ./env.sh
|
||||
export VBOX_GCC_OPT="${CFLAGS} ${CPPFLAGS}"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
MAKE="kmk" \
|
||||
emake TOOL_YASM_AS=yasm \
|
||||
VBOX_ONLY_ADDITIONS=1 \
|
||||
KBUILD_VERBOSE=2
|
||||
|
||||
# Now creating the kernel modules. We must do this _after_
|
||||
# we compiled the user-space tools as we need two of the
|
||||
# automatically generated header files. (>=3.2.0)
|
||||
linux-mod_src_compile
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
|
||||
cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
|
||||
|
||||
insinto /sbin
|
||||
newins mount.vboxsf mount.vboxsf
|
||||
fperms 4755 /sbin/mount.vboxsf
|
||||
|
||||
newinitd "${FILESDIR}"/${PN}-8.initd ${PN}
|
||||
|
||||
insinto /usr/sbin/
|
||||
newins VBoxService vboxguest-service
|
||||
fperms 0755 /usr/sbin/vboxguest-service
|
||||
|
||||
insinto /usr/bin
|
||||
doins VBoxControl
|
||||
fperms 0755 /usr/bin/VBoxControl
|
||||
|
||||
# VBoxClient user service and xrandr wrapper
|
||||
if use X ; then
|
||||
doins VBoxClient
|
||||
fperms 0755 /usr/bin/VBoxClient
|
||||
|
||||
pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
|
||||
|| die
|
||||
newins 98vboxadd-xclient VBoxClient-all
|
||||
fperms 0755 /usr/bin/VBoxClient-all
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
|
||||
# udev rule for vboxdrv
|
||||
local udev_rules_dir="/lib/udev/rules.d"
|
||||
dodir ${udev_rules_dir}
|
||||
echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
|
||||
>> "${ED%/}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|
||||
|| die
|
||||
echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
|
||||
>> "${ED%/}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
|
||||
|| die
|
||||
|
||||
# VBoxClient autostart file
|
||||
insinto /etc/xdg/autostart
|
||||
doins "${FILESDIR}"/vboxclient.desktop
|
||||
|
||||
# sample xorg.conf
|
||||
insinto /usr/share/doc/${PF}
|
||||
doins "${FILESDIR}"/xorg.conf.vbox
|
||||
|
||||
systemd_dounit "${FILESDIR}/${PN}.service"
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
enewgroup vboxguest
|
||||
enewuser vboxguest -1 /bin/sh /dev/null vboxguest
|
||||
# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
|
||||
enewgroup vboxsf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
linux-mod_pkg_postinst
|
||||
if ! use X ; then
|
||||
elog "use flag X is off, enable it to install the"
|
||||
elog "X Window System video driver."
|
||||
fi
|
||||
elog ""
|
||||
elog "Please add users to the \"vboxguest\" group so they can"
|
||||
elog "benefit from seamless mode, auto-resize and clipboard."
|
||||
elog ""
|
||||
elog "The vboxsf group has been added to make automount services work."
|
||||
elog "These services are part of the shared folders support."
|
||||
elog ""
|
||||
elog "Please add:"
|
||||
elog "/etc/init.d/${PN}"
|
||||
elog "to the default runlevel in order to start"
|
||||
elog "needed services."
|
||||
elog "To use the VirtualBox X driver, use the following"
|
||||
elog "file as your /etc/X11/xorg.conf:"
|
||||
elog " /usr/share/doc/${PF}/xorg.conf.vbox"
|
||||
elog ""
|
||||
elog "Also make sure you use the Mesa library for OpenGL:"
|
||||
elog " eselect opengl set xorg-x11"
|
||||
elog ""
|
||||
elog "An autostart .desktop file has been installed to start"
|
||||
elog "VBoxClient in desktop sessions."
|
||||
elog ""
|
||||
elog "You can mount shared folders with:"
|
||||
elog " mount -t vboxsf <shared_folder_name> <mount_point>"
|
||||
elog ""
|
||||
elog "Warning:"
|
||||
elog "this ebuild is only needed if you are running gentoo"
|
||||
elog "inside a VirtualBox Virtual Machine, you don't need"
|
||||
elog "it to run VirtualBox itself."
|
||||
elog ""
|
||||
}
|
||||
@@ -1,7 +1,5 @@
|
||||
DIST vbox-kernel-module-src-5.2.22.tar.xz 638492 BLAKE2B 71aba29b056bb3dfeffbf4632fbf7f15d89b988267ba24c766b78b1d9c50a4d27fb1b8e699108b973af68024f9f77ca0a8ad787355d7342fe1400f14189487ff SHA512 3361bb536af8e8d490377be04d1b1b9af478538e23ec409d3e0205ad930c16e5228c57ae7d92d214ac533ae64298d9eaff3c9284ff9bb308108d1ad7d69fb507
|
||||
DIST vbox-kernel-module-src-5.2.26.tar.xz 642096 BLAKE2B fa908b8dda4c49e880005f22d4ec159ba4e84b20d3cf8f514ec5ad0ea556499b0df25fb714bb5f9a3474e6fc1cba67f6d56fddaee748b9561bbe31a003dd0657 SHA512 7f37be1b35772d59cd3df9b61dec436450de3c038faf2cd22fb891fee7270aa7f87f146f72497ffeb63dfe869cccd3f2788562d23fc51afd83ca19159f2a6810
|
||||
DIST vbox-kernel-module-src-5.2.28.tar.xz 642000 BLAKE2B 65ffe2345e978e0afba079e9291d55dc0419853718831d4c47e8e3e4f9fa194957342683aec0f362aa3f3924dca90d73ac30d947dec69ff54106d8e229510889 SHA512 bef0601b295d1a5cc0387262a6c75ec33777edaeaa543218bc7ddea5ced3995511978abfb624d2547fc6339c41e638054fb173ee7e0aeb46c7356a24834b3d83
|
||||
DIST vbox-kernel-module-src-5.2.30.tar.xz 642476 BLAKE2B 497a381b10f813ee333f0ac0a0b9f7893b0cc3c842757e85f119bc28dec4ed978bab827df116c8f99bafb412b8bf5a97592a964cf61f7e813284b2e74e7e8a6d SHA512 80511d96c44294a1faae165e874b838f76449a898cdc01411eae0dbdc5f7ee79f75f8c6a52e9e0c9c1ad8bd054c64751f6be6f7790d0053933db8d786dfbc53e
|
||||
DIST vbox-kernel-module-src-6.0.4.tar.xz 666200 BLAKE2B b7a6911a8534ae9e7db5a90fecfaf58394bf61ff1ee925302fdea46443e603535d1508b638c7c3f2440c0fe1176ca85d2f063f99632eb1a9093a9367f2e49fdc SHA512 565d635683f8a5f32c18b1bbf41b38bcab549a019cf0977c8dfbb53310494fb261e485ac11eb48e546c3c4b6ed13b3fb1628013dbc101f042ee9a61b8168122a
|
||||
DIST vbox-kernel-module-src-6.0.6.tar.xz 667936 BLAKE2B 5eca0167ad6c624bb56978c07c0184ef39d789ca5752fee3fcb00a2f5a7af4d20a69dde4288fc5233111ea821eab69d6970a86861459d09d6050d93f09f8f2ef SHA512 aff4b1f200abfdb7e249e6c725ab9c2a4c83010bd0c7b6d2d6595ae7d7bc6b2bd291f77c1597b3fb2c39de61867447c18e06d865a50565ccb07120de2c34d141
|
||||
DIST vbox-kernel-module-src-6.0.8.tar.xz 668380 BLAKE2B 06deabe0bae37503ec2b2df3cf1edb820b190c9e453aad8e211278a27c9ffaf229b98c08b2d7510b3721a30ca53833b43184636fde7ce3e5ac0bcbc588330486 SHA512 a4fb626c5a58637cfef7ebc44ccfcf82d6f2a7e91af665a8854d9fafb0c9b042d473c6767dad64497aed5110aefd23299461d39b43f8e57aa0c255cfcc94b448
|
||||
|
||||
@@ -1,51 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: the tarball here is just the kernel modules split out of the binary
|
||||
# package that comes from virtualbox-bin
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit linux-mod user
|
||||
|
||||
MY_P="vbox-kernel-module-src-${PV}"
|
||||
DESCRIPTION="Kernel Modules for Virtualbox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="pax_kernel"
|
||||
|
||||
RDEPEND="!=app-emulation/virtualbox-9999"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
BUILD_TARGET_ARCH="${ARCH}"
|
||||
MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S}) vboxpci(misc:${S})"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup vboxusers
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="CC=$(tc-getBUILD_CC) KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if use pax_kernel && kernel_is -ge 3 0 0 ; then
|
||||
eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
insinto /usr/lib/modules-load.d/
|
||||
doins "${FILESDIR}"/virtualbox.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
linux-mod_pkg_postinst
|
||||
}
|
||||
@@ -1,52 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# XXX: the tarball here is just the kernel modules split out of the binary
|
||||
# package that comes from virtualbox-bin
|
||||
|
||||
EAPI=7
|
||||
|
||||
inherit linux-mod user
|
||||
|
||||
MY_P="vbox-kernel-module-src-${PV}"
|
||||
DESCRIPTION="Kernel Modules for Virtualbox"
|
||||
HOMEPAGE="https://www.virtualbox.org/"
|
||||
SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="pax_kernel"
|
||||
|
||||
RDEPEND="!=app-emulation/virtualbox-9999"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
BUILD_TARGETS="all"
|
||||
BUILD_TARGET_ARCH="${ARCH}"
|
||||
MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S}) vboxpci(misc:${S})"
|
||||
|
||||
pkg_setup() {
|
||||
enewgroup vboxusers
|
||||
linux-mod_pkg_setup
|
||||
BUILD_PARAMS="CC=$(tc-getBUILD_CC) KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
if use pax_kernel && kernel_is -ge 3 0 0 ; then
|
||||
eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
|
||||
fi
|
||||
|
||||
default
|
||||
}
|
||||
|
||||
src_install() {
|
||||
linux-mod_src_install
|
||||
insinto /usr/lib/modules-load.d/
|
||||
doins "${FILESDIR}"/virtualbox.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
linux-mod_pkg_postinst
|
||||
}
|
||||
@@ -1,8 +1,6 @@
|
||||
DIST VirtualBox-5.2.22.tar.bz2 118757134 BLAKE2B be795cdbfb09d3d443f63e190b63898239622f5a57aefdd90f382d9a849d09cc1abc2624071fbc60b2c04a12f33376184540cc362c19225733f99a3bcc8ff6a3 SHA512 4f6c4611a3114778f45419587dc1519ca07410c1ea6474cdb18ecd3b068639a4fdac3f25146fe9b8e006e30f19eba134ce9f665182008b033f6f78497e1ea722
|
||||
DIST VirtualBox-5.2.26.tar.bz2 118371765 BLAKE2B 32413b72e33f2f63835a2eb2d47dc75a7b63121934bdffd51ff58e9d63d68b77b4f8dac4605916ba8bd6896240d00024ccc3d7d002d4f6f92d6d9b1dc35995e3 SHA512 aee334c74bd02772ac5e0528d84d31661f61c775d0993c00febe125810efc78a2f779db41bf66283be51b19a35540fee14445bada59a8d3b7affa6ef6645005f
|
||||
DIST VirtualBox-5.2.28.tar.bz2 118655475 BLAKE2B 4e4e75b78de3cb3b6dc2fe2c2f306487cb924bf9ca2d1b0ffc6fc349774d3fa38886d386277a32067daaabfad6e8cd58ea058a78a70d16761d76f6ebed035d16 SHA512 085cfcab82851f98c757ea109ba420335d891a99df52a811e19815b3e55a92894cfb7b6fd4a5aaf15def71811f14e21527625adf885a394144cb5f971eb57782
|
||||
DIST VirtualBox-5.2.30.tar.bz2 118462289 BLAKE2B 87126b5af657815d0fcc8aadf49a23ce613ea0998b70f988f78e9d381138c414c7c73a0bf91955481cf484f5b71081ff1bab8dabe1b41fffde877e1003477625 SHA512 6230846ceda47b8ffe942aa8427f04f193095103371b7210d30e49cd9e384b9828d6917f75ef125e63e2c1810e8aa3b7c17b72f3ede7697c55d6de9da9d3f668
|
||||
DIST VirtualBox-6.0.4.tar.bz2 155233564 BLAKE2B 6bc4d450e275e8aac5dc62ab05d9ba1450e13965f3eba64819315d121bd0e515319be2ad92ab429f2e598e157e89660561de69a2aac87e14792284669bcec7e8 SHA512 c2e5418bafd5d50b46e1bc70280753c2fdfbf7248d782fc398771839950fb575eaea437e9699d56f4d8c92ea4dc9ba8bed74379565dac6114f7e9c45aecc9fdb
|
||||
DIST VirtualBox-6.0.6.tar.bz2 155297550 BLAKE2B a886ed99da3aee7a52d8c0654c33e50ae4155077e3d5061e1888a0cb5760b12dd63fb1205b75ec04419d50261f81e56036bdba79d20b57c836f073af232c913a SHA512 eb71ca94220680ac6cba7af13eb9eef132c21e57b1b27d6bc3c564bba58b000e682d19e36b63660bfa4f4471cd0632d365659ef8c4e3e526931622901a432d1b
|
||||
DIST VirtualBox-6.0.8.tar.bz2 155404889 BLAKE2B 3eb6ebf713c32e301db1673b22c367a89ce1ffb25d12baab6c7335389ce17e08efd744139acc4114231c4d4b69c6370b6e5d5b18ce97fe5494ca7a192fa43f7d SHA512 df18d5df2c82761b8a77e509b2873cdeaa46d11bc50ca166af1e6c30d3042b0cf5640957b1d411333f5bd5be3f03f382550f1afaecf0651d847bc88c95863d83
|
||||
DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
|
||||
|
||||
@@ -1,476 +0,0 @@
|
||||
# Copyright 1999-2018 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python2_7 )
|
||||
inherit flag-o-matic gnome2-utils java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
|
||||
|
||||
MY_PV="${PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
MY_P=VirtualBox-${MY_PV}
|
||||
|
||||
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.16-patches-02.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
|
||||
|
||||
RDEPEND="!app-emulation/virtualbox-bin
|
||||
~app-emulation/virtualbox-modules-${PV}
|
||||
dev-libs/libIDL
|
||||
>=dev-libs/libxslt-1.1.19
|
||||
net-misc/curl
|
||||
dev-libs/libxml2
|
||||
media-libs/libpng:0=
|
||||
media-libs/libvpx:0=
|
||||
sys-libs/zlib:=
|
||||
!headless? (
|
||||
media-libs/libsdl:0[X,video]
|
||||
x11-libs/libX11
|
||||
x11-libs/libxcb:=
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXext
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
opengl? ( virtual/opengl media-libs/freeglut )
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtprintsupport:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtx11extras:5
|
||||
opengl? ( dev-qt/qtopengl:5 )
|
||||
x11-libs/libXinerama
|
||||
)
|
||||
)
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
lvm? ( sys-fs/lvm2 )
|
||||
opus? ( media-libs/opus )
|
||||
udev? ( >=virtual/udev-171 )
|
||||
vnc? ( >=net-libs/libvncserver-0.9.9 )"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-util/kbuild-0.1.9998.3127
|
||||
>=dev-lang/yasm-0.6.2
|
||||
sys-devel/bin86
|
||||
sys-libs/libcap
|
||||
sys-power/iasl
|
||||
virtual/pkgconfig
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
doc? (
|
||||
app-text/docbook-sgml-dtd:4.4
|
||||
dev-texlive/texlive-basic
|
||||
dev-texlive/texlive-latex
|
||||
dev-texlive/texlive-latexrecommended
|
||||
dev-texlive/texlive-latexextra
|
||||
dev-texlive/texlive-fontsrecommended
|
||||
dev-texlive/texlive-fontsextra
|
||||
)
|
||||
!headless? ( x11-libs/libXinerama )
|
||||
java? ( >=virtual/jdk-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
|
||||
usr/lib/virtualbox/VBoxSharedFolders.so
|
||||
usr/lib/virtualbox/VBoxDD2.so
|
||||
usr/lib/virtualbox/VBoxOGLrenderspu.so
|
||||
usr/lib/virtualbox/VBoxPython.so
|
||||
usr/lib/virtualbox/VBoxDD.so
|
||||
usr/lib/virtualbox/VBoxDDU.so
|
||||
usr/lib/virtualbox/VBoxREM64.so
|
||||
usr/lib/virtualbox/VBoxSharedClipboard.so
|
||||
usr/lib/virtualbox/VBoxHeadless.so
|
||||
usr/lib/virtualbox/VBoxRT.so
|
||||
usr/lib/virtualbox/VBoxREM.so
|
||||
usr/lib/virtualbox/VBoxSettings.so
|
||||
usr/lib/virtualbox/VBoxKeyboard.so
|
||||
usr/lib/virtualbox/VBoxSharedCrOpenGL.so
|
||||
usr/lib/virtualbox/VBoxVMM.so
|
||||
usr/lib/virtualbox/VirtualBox.so
|
||||
usr/lib/virtualbox/VBoxOGLhosterrorspu.so
|
||||
usr/lib/virtualbox/components/VBoxC.so
|
||||
usr/lib/virtualbox/components/VBoxSVCM.so
|
||||
usr/lib/virtualbox/components/VBoxDDU.so
|
||||
usr/lib/virtualbox/components/VBoxRT.so
|
||||
usr/lib/virtualbox/components/VBoxREM.so
|
||||
usr/lib/virtualbox/components/VBoxVMM.so
|
||||
usr/lib/virtualbox/VBoxREM32.so
|
||||
usr/lib/virtualbox/VBoxPython2_7.so
|
||||
usr/lib/virtualbox/VBoxXPCOMC.so
|
||||
usr/lib/virtualbox/VBoxOGLhostcrutil.so
|
||||
usr/lib/virtualbox/VBoxNetDHCP.so
|
||||
usr/lib/virtualbox/VBoxNetNAT.so"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
REQUIRED_USE="
|
||||
java? ( sdk )
|
||||
python? ( sdk )
|
||||
vboxwebsrv? ( java )
|
||||
${PYTHON_REQUIRED_USE}
|
||||
"
|
||||
|
||||
pkg_setup() {
|
||||
if ! use headless && ! use qt5 ; then
|
||||
einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
|
||||
elif use headless && use qt5 ; then
|
||||
einfo "You selected USE=\"headless qt5\", defaulting to"
|
||||
einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
|
||||
fi
|
||||
|
||||
if ! use opengl ; then
|
||||
einfo "No USE=\"opengl\" selected, this build will lack"
|
||||
einfo "the OpenGL feature."
|
||||
fi
|
||||
if ! use python ; then
|
||||
einfo "You have disabled the \"python\" USE flag. This will only"
|
||||
einfo "disable the python bindings being installed."
|
||||
fi
|
||||
java-pkg-opt-2_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
|
||||
tc-ld-disable-gold #bug 488176
|
||||
tc-export CC CXX LD AR RANLIB
|
||||
export HOST_CC="$(tc-getBUILD_CC)"
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
# 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
|
||||
sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
|
||||
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.2.8-nopie.patch"
|
||||
fi
|
||||
|
||||
# Only add paxmark patch when we're on pax_kernel
|
||||
if use pax_kernel ; then
|
||||
eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
|
||||
fi
|
||||
|
||||
eapply "${WORKDIR}/patches"
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
doecho() {
|
||||
echo "$@"
|
||||
"$@" || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--with-gcc="$(tc-getCC)"
|
||||
--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 opus --build-libopus '')
|
||||
$(usex pulseaudio '' --disable-pulse)
|
||||
$(usex python '' --disable-python)
|
||||
$(usex vboxwebsrv --enable-webservice '')
|
||||
$(usex vnc --enable-vnc '')
|
||||
)
|
||||
if ! use headless ; then
|
||||
myconf+=(
|
||||
$(usex opengl '' --disable-opengl)
|
||||
$(usex qt5 '' --disable-qt)
|
||||
)
|
||||
else
|
||||
myconf+=(
|
||||
--build-headless
|
||||
--disable-opengl
|
||||
)
|
||||
fi
|
||||
if use amd64 && ! has_multilib_profile ; then
|
||||
myconf+=( --disable-vmmraw )
|
||||
fi
|
||||
# not an autoconf script
|
||||
doecho ./configure ${myconf[@]}
|
||||
}
|
||||
|
||||
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}"
|
||||
MAKE="kmk" emake \
|
||||
VBOX_BUILD_PUBLISHER=_Gentoo \
|
||||
TOOL_GCC3_CC="$(tc-getCC)" TOOL_GCC3_CXX="$(tc-getCXX)" \
|
||||
TOOL_GCC3_AS="$(tc-getCC)" TOOL_GCC3_AR="$(tc-getAR)" \
|
||||
TOOL_GCC3_LD="$(tc-getCXX)" TOOL_GCC3_LD_SYSMOD="$(tc-getLD)" \
|
||||
TOOL_GCC3_CFLAGS="${CFLAGS}" TOOL_GCC3_CXXFLAGS="${CXXFLAGS}" \
|
||||
VBOX_GCC_OPT="${CXXFLAGS}" \
|
||||
TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
|
||||
all
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local binpath="release"
|
||||
use debug && binpath="debug"
|
||||
cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
|
||||
|
||||
local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile size ico icofile
|
||||
|
||||
vbox_inst() {
|
||||
local binary="${1}"
|
||||
local perms="${2:-0750}"
|
||||
local path="${3:-${vbox_inst_path}}"
|
||||
|
||||
[[ -n "${binary}" ]] || die "vbox_inst: No binray given!"
|
||||
[[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
|
||||
|
||||
insinto ${path}
|
||||
doins ${binary}
|
||||
fowners root:vboxusers ${path}/${binary}
|
||||
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 "${ED%/}"/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=""
|
||||
fi
|
||||
for each in VBox{ExtPackHelperApp,Manage,SVC,Tunctl,XPCOMIPCD} *so *r0 ${rcfiles} ; do
|
||||
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 "${ED%/}"${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
|
||||
# VRDPAuth only works with this (bug #351949)
|
||||
dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
|
||||
fi
|
||||
|
||||
# set an env-variable for 3rd party tools
|
||||
echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
|
||||
doenvd "${T}/90virtualbox"
|
||||
|
||||
if ! use headless ; then
|
||||
vbox_inst VBoxSDL 4750
|
||||
pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxSDL
|
||||
|
||||
for each in vboxsdl VBoxSDL ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
|
||||
if use qt5 ; then
|
||||
vbox_inst VirtualBox 4750
|
||||
pax-mark -m "${ED%/}"${vbox_inst_path}/VirtualBox
|
||||
|
||||
if use opengl ; then
|
||||
vbox_inst VBoxTestOGL
|
||||
pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxTestOGL
|
||||
fi
|
||||
|
||||
for each in virtualbox VirtualBox ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r nls
|
||||
doins -r UnattendedTemplates
|
||||
|
||||
newmenu "${FILESDIR}"/${PN}-ose.desktop-2 ${PN}.desktop
|
||||
fi
|
||||
|
||||
pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
|
||||
for size in 16 32 48 64 128 ; do
|
||||
newicon -s ${size} ${PN}-${size}px.png ${PN}.png
|
||||
done
|
||||
newicon ${PN}-48px.png ${PN}.png
|
||||
doicon -s scalable ${PN}.svg
|
||||
popd &>/dev/null || die
|
||||
pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
|
||||
for size in 16 24 32 48 64 72 96 128 256 512 ; do
|
||||
for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
|
||||
icofile="${PN}-${ico}-${size}px.png"
|
||||
if [[ -f "${icofile}" ]] ; then
|
||||
newicon -s ${size} ${icofile} ${PN}-${ico}.png
|
||||
fi
|
||||
done
|
||||
done
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
|
||||
if use lvm ; then
|
||||
vbox_inst VBoxVolInfo 4750
|
||||
dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
|
||||
fi
|
||||
|
||||
if use sdk ; then
|
||||
insinto ${vbox_inst_path}
|
||||
doins -r sdk
|
||||
|
||||
if use java ; then
|
||||
java-pkg_regjar "${ED%/}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
|
||||
java-pkg_regso "${ED%/}/${vbox_inst_path}/libvboxjxpcom.so"
|
||||
fi
|
||||
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
|
||||
fowners root:vboxusers ${udevdir}/VBoxCreateUSBNode.sh
|
||||
fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
|
||||
insinto ${udevdir}/rules.d
|
||||
sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
|
||||
> "${T}"/10-virtualbox.rules || die
|
||||
doins "${T}"/10-virtualbox.rules
|
||||
fi
|
||||
|
||||
if use vboxwebsrv ; then
|
||||
vbox_inst vboxwebsrv
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
|
||||
newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
|
||||
newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
|
||||
fi
|
||||
|
||||
if use doc ; then
|
||||
dodoc UserManual.pdf
|
||||
fi
|
||||
|
||||
newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
|
||||
if use udev ; then
|
||||
udevadm control --reload-rules \
|
||||
&& 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 "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() {
|
||||
gnome2_icon_cache_update
|
||||
xdg_desktop_database_update
|
||||
}
|
||||
@@ -1,486 +0,0 @@
|
||||
# Copyright 1999-2019 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=6
|
||||
|
||||
PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
|
||||
inherit flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
|
||||
|
||||
MY_PV="${PV/beta/BETA}"
|
||||
MY_PV="${MY_PV/rc/RC}"
|
||||
MY_P=VirtualBox-${MY_PV}
|
||||
|
||||
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}-6.0.0_beta2-patches-01.tar.xz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
|
||||
|
||||
RDEPEND="!app-emulation/virtualbox-bin
|
||||
~app-emulation/virtualbox-modules-${PV}
|
||||
dev-libs/libIDL
|
||||
>=dev-libs/libxslt-1.1.19
|
||||
net-misc/curl
|
||||
dev-libs/libxml2
|
||||
media-libs/libpng:0=
|
||||
media-libs/libvpx:0=
|
||||
sys-libs/zlib:=
|
||||
!headless? (
|
||||
media-libs/libsdl:0[X,video]
|
||||
x11-libs/libX11
|
||||
x11-libs/libxcb:=
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXext
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXt
|
||||
opengl? ( virtual/opengl media-libs/freeglut )
|
||||
qt5? (
|
||||
dev-qt/qtcore:5
|
||||
dev-qt/qtgui:5
|
||||
dev-qt/qtprintsupport:5
|
||||
dev-qt/qtwidgets:5
|
||||
dev-qt/qtx11extras:5
|
||||
opengl? ( dev-qt/qtopengl:5 )
|
||||
x11-libs/libXinerama
|
||||
)
|
||||
)
|
||||
libressl? ( dev-libs/libressl:= )
|
||||
!libressl? ( dev-libs/openssl:0= )
|
||||
lvm? ( sys-fs/lvm2 )
|
||||
opus? ( media-libs/opus )
|
||||
udev? ( >=virtual/udev-171 )
|
||||
vnc? ( >=net-libs/libvncserver-0.9.9 )"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-util/kbuild-0.1.9998.3127
|
||||
>=dev-lang/yasm-0.6.2
|
||||
sys-devel/bin86
|
||||
sys-libs/libcap
|
||||
sys-power/iasl
|
||||
virtual/pkgconfig
|
||||
alsa? ( >=media-libs/alsa-lib-1.0.13 )
|
||||
doc? (
|
||||
app-text/docbook-sgml-dtd:4.4
|
||||
dev-texlive/texlive-basic
|
||||
dev-texlive/texlive-latex
|
||||
dev-texlive/texlive-latexrecommended
|
||||
dev-texlive/texlive-latexextra
|
||||
dev-texlive/texlive-fontsrecommended
|
||||
dev-texlive/texlive-fontsextra
|
||||
)
|
||||
!headless? ( x11-libs/libXinerama )
|
||||
java? ( >=virtual/jdk-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
|
||||
usr/lib/virtualbox/VBoxSharedFolders.so
|
||||
usr/lib/virtualbox/VBoxDD2.so
|
||||
usr/lib/virtualbox/VBoxOGLrenderspu.so
|
||||
usr/lib/virtualbox/VBoxPython.so
|
||||
usr/lib/virtualbox/VBoxDD.so
|
||||
usr/lib/virtualbox/VBoxDDU.so
|
||||
usr/lib/virtualbox/VBoxREM64.so
|
||||
usr/lib/virtualbox/VBoxSharedClipboard.so
|
||||
usr/lib/virtualbox/VBoxHeadless.so
|
||||
usr/lib/virtualbox/VBoxRT.so
|
||||
usr/lib/virtualbox/VBoxREM.so
|
||||
usr/lib/virtualbox/VBoxSettings.so
|
||||
usr/lib/virtualbox/VBoxKeyboard.so
|
||||
usr/lib/virtualbox/VBoxSharedCrOpenGL.so
|
||||
usr/lib/virtualbox/VBoxVMM.so
|
||||
usr/lib/virtualbox/VirtualBox.so
|
||||
usr/lib/virtualbox/VBoxOGLhosterrorspu.so
|
||||
usr/lib/virtualbox/components/VBoxC.so
|
||||
usr/lib/virtualbox/components/VBoxSVCM.so
|
||||
usr/lib/virtualbox/components/VBoxDDU.so
|
||||
usr/lib/virtualbox/components/VBoxRT.so
|
||||
usr/lib/virtualbox/components/VBoxREM.so
|
||||
usr/lib/virtualbox/components/VBoxVMM.so
|
||||
usr/lib/virtualbox/VBoxREM32.so
|
||||
usr/lib/virtualbox/VBoxPython2_7.so
|
||||
usr/lib/virtualbox/VBoxXPCOMC.so
|
||||
usr/lib/virtualbox/VBoxOGLhostcrutil.so
|
||||
usr/lib/virtualbox/VBoxNetDHCP.so
|
||||
usr/lib/virtualbox/VBoxNetNAT.so"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
REQUIRED_USE="
|
||||
java? ( sdk )
|
||||
python? ( sdk )
|
||||
vboxwebsrv? ( java )
|
||||
${PYTHON_REQUIRED_USE}
|
||||
"
|
||||
|
||||
pkg_pretend() {
|
||||
if ! use headless && ! use qt5 ; then
|
||||
einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
|
||||
elif use headless && use qt5 ; then
|
||||
einfo "You selected USE=\"headless qt5\", defaulting to"
|
||||
einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
|
||||
fi
|
||||
|
||||
if ! use opengl ; then
|
||||
einfo "No USE=\"opengl\" selected, this build will lack"
|
||||
einfo "the OpenGL feature."
|
||||
fi
|
||||
if ! use python ; then
|
||||
einfo "You have disabled the \"python\" USE flag. This will only"
|
||||
einfo "disable the python bindings being installed."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_setup() {
|
||||
java-pkg-opt-2_pkg_setup
|
||||
python-single-r1_pkg_setup
|
||||
|
||||
tc-ld-disable-gold #bug 488176
|
||||
tc-export CC CXX LD AR RANLIB
|
||||
export HOST_CC="$(tc-getBUILD_CC)"
|
||||
}
|
||||
|
||||
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
|
||||
|
||||
# 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
|
||||
sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
|
||||
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.2.8-nopie.patch"
|
||||
fi
|
||||
|
||||
# Only add paxmark patch when we're on pax_kernel
|
||||
if use pax_kernel ; then
|
||||
eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
|
||||
fi
|
||||
|
||||
rm "${WORKDIR}/patches/010_virtualbox-5.2.12-qt511.patch" || die
|
||||
eapply "${WORKDIR}/patches"
|
||||
eapply "${FILESDIR}"/${PN}-6.0.0-libressl.patch #673800
|
||||
|
||||
eapply_user
|
||||
}
|
||||
|
||||
doecho() {
|
||||
echo "$@"
|
||||
"$@" || die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=(
|
||||
--with-gcc="$(tc-getCC)"
|
||||
--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 opus '' --disable-libopus)
|
||||
$(usex pulseaudio '' --disable-pulse)
|
||||
$(usex python '' --disable-python)
|
||||
$(usex vboxwebsrv --enable-webservice '')
|
||||
$(usex vnc --enable-vnc '')
|
||||
)
|
||||
if ! use headless ; then
|
||||
myconf+=(
|
||||
$(usex opengl '' --disable-opengl)
|
||||
$(usex qt5 '' --disable-qt)
|
||||
)
|
||||
else
|
||||
myconf+=(
|
||||
--build-headless
|
||||
--disable-opengl
|
||||
)
|
||||
fi
|
||||
if use amd64 && ! has_multilib_profile ; then
|
||||
myconf+=( --disable-vmmraw )
|
||||
fi
|
||||
# not an autoconf script
|
||||
doecho ./configure ${myconf[@]}
|
||||
}
|
||||
|
||||
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}"
|
||||
MAKE="kmk" emake \
|
||||
VBOX_BUILD_PUBLISHER=_Gentoo \
|
||||
TOOL_GCC3_CC="$(tc-getCC)" TOOL_GCC3_CXX="$(tc-getCXX)" \
|
||||
TOOL_GCC3_AS="$(tc-getCC)" TOOL_GCC3_AR="$(tc-getAR)" \
|
||||
TOOL_GCC3_LD="$(tc-getCXX)" TOOL_GCC3_LD_SYSMOD="$(tc-getLD)" \
|
||||
TOOL_GCC3_CFLAGS="${CFLAGS}" TOOL_GCC3_CXXFLAGS="${CXXFLAGS}" \
|
||||
VBOX_GCC_OPT="${CXXFLAGS}" \
|
||||
TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
|
||||
all
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local binpath="release"
|
||||
use debug && binpath="debug"
|
||||
cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
|
||||
|
||||
local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
|
||||
|
||||
vbox_inst() {
|
||||
local binary="${1}"
|
||||
local perms="${2:-0750}"
|
||||
local path="${3:-${vbox_inst_path}}"
|
||||
|
||||
[[ -n "${binary}" ]] || die "vbox_inst: No binary given!"
|
||||
[[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
|
||||
|
||||
insinto ${path}
|
||||
doins ${binary}
|
||||
fowners root:vboxusers ${path}/${binary}
|
||||
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 "${ED%/}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
|
||||
|
||||
# Install the wrapper script
|
||||
exeinto ${vbox_inst_path}
|
||||
newexe "${FILESDIR}/${PN}-ose-6-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=""
|
||||
fi
|
||||
for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 ${rcfiles} iPxeBaseBin ; do
|
||||
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)
|
||||
for each in VBoxEFI{32,64}.fd ; do
|
||||
vbox_inst ${each} 0644
|
||||
done
|
||||
|
||||
# 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 "${ED%/}"${vbox_inst_path}/${each}
|
||||
done
|
||||
|
||||
# Symlink binaries to the shipped wrapper
|
||||
for each in vbox{autostart,balloonctrl,bugreport,headless,manage} VBox{Autostart,BalloonCtrl,BugReport,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
|
||||
# VRDPAuth only works with this (bug #351949)
|
||||
dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
|
||||
fi
|
||||
|
||||
# set an env-variable for 3rd party tools
|
||||
echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
|
||||
doenvd "${T}/90virtualbox"
|
||||
|
||||
if ! use headless ; then
|
||||
vbox_inst rdesktop-vrdp
|
||||
vbox_inst VBoxSDL 4750
|
||||
pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxSDL
|
||||
|
||||
for each in vboxsdl VBoxSDL ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
|
||||
if use qt5 ; then
|
||||
vbox_inst VirtualBox
|
||||
vbox_inst VirtualBoxVM 4750
|
||||
for each in VirtualBox{,VM} ; do
|
||||
pax-mark -m "${ED%/}"${vbox_inst_path}/${each}
|
||||
done
|
||||
|
||||
if use opengl ; then
|
||||
vbox_inst VBoxTestOGL
|
||||
pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxTestOGL
|
||||
fi
|
||||
|
||||
for each in virtualbox{,vm} VirtualBox{,VM} ; do
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/${each}
|
||||
done
|
||||
|
||||
insinto /usr/share/${PN}
|
||||
doins -r nls
|
||||
doins -r UnattendedTemplates
|
||||
|
||||
domenu ${PN}.desktop
|
||||
fi
|
||||
|
||||
pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
|
||||
for size in 16 32 48 64 128 ; do
|
||||
newicon -s ${size} ${PN}-${size}px.png ${PN}.png
|
||||
done
|
||||
newicon ${PN}-48px.png ${PN}.png
|
||||
doicon -s scalable ${PN}.svg
|
||||
popd &>/dev/null || die
|
||||
pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
|
||||
for size in 16 24 32 48 64 72 96 128 256 512 ; do
|
||||
for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
|
||||
icofile="${PN}-${ico}-${size}px.png"
|
||||
if [[ -f "${icofile}" ]] ; then
|
||||
newicon -s ${size} ${icofile} ${PN}-${ico}.png
|
||||
fi
|
||||
done
|
||||
done
|
||||
popd &>/dev/null || die
|
||||
fi
|
||||
|
||||
if use lvm ; then
|
||||
vbox_inst VBoxVolInfo 4750
|
||||
dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
|
||||
fi
|
||||
|
||||
if use sdk ; then
|
||||
insinto ${vbox_inst_path}
|
||||
doins -r sdk
|
||||
|
||||
if use java ; then
|
||||
java-pkg_regjar "${ED%/}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
|
||||
java-pkg_regso "${ED%/}/${vbox_inst_path}/libvboxjxpcom.so"
|
||||
fi
|
||||
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
|
||||
fowners root:vboxusers ${udevdir}/VBoxCreateUSBNode.sh
|
||||
fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
|
||||
insinto ${udevdir}/rules.d
|
||||
sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
|
||||
> "${T}"/10-virtualbox.rules || die
|
||||
doins "${T}"/10-virtualbox.rules
|
||||
fi
|
||||
|
||||
if use vboxwebsrv ; then
|
||||
vbox_inst vboxwebsrv
|
||||
dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
|
||||
newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
|
||||
newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
|
||||
fi
|
||||
|
||||
if use doc ; then
|
||||
dodoc UserManual.pdf
|
||||
fi
|
||||
|
||||
newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
xdg_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
xdg_pkg_postinst
|
||||
|
||||
if use udev ; then
|
||||
udevadm control --reload-rules \
|
||||
&& 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 "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() {
|
||||
xdg_pkg_postrm
|
||||
}
|
||||
Reference in New Issue
Block a user