Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/virtualbox-guest-additions/, app-emulation/virtualbox/, ...
Date: Wed, 04 Sep 2019 09:47:53
Message-Id: 1567590463.e5dbf8fe21edcb909f894cc7a8d334385733af29.polynomial-c@gentoo
1 commit: e5dbf8fe21edcb909f894cc7a8d334385733af29
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Wed Sep 4 09:43:34 2019 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Wed Sep 4 09:47:43 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5dbf8fe
7
8 virtualbox packages: Bump to version 6.0.12
9
10 Package-Manager: Portage-2.3.75, Repoman-2.3.17
11 Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
12
13 app-emulation/virtualbox-additions/Manifest | 1 +
14 .../virtualbox-additions-6.0.12.ebuild | 34 ++
15 app-emulation/virtualbox-bin/Manifest | 3 +
16 .../virtualbox-bin-6.0.12.133076.ebuild | 291 ++++++++++++
17 app-emulation/virtualbox-extpack-oracle/Manifest | 1 +
18 .../virtualbox-extpack-oracle-6.0.12.133076.ebuild | 43 ++
19 app-emulation/virtualbox-guest-additions/Manifest | 1 +
20 .../virtualbox-guest-additions-6.0.12.ebuild | 219 +++++++++
21 app-emulation/virtualbox-modules/Manifest | 1 +
22 .../virtualbox-modules-6.0.12.ebuild | 52 +++
23 app-emulation/virtualbox/Manifest | 1 +
24 app-emulation/virtualbox/virtualbox-6.0.12.ebuild | 510 +++++++++++++++++++++
25 12 files changed, 1157 insertions(+)
26
27 diff --git a/app-emulation/virtualbox-additions/Manifest b/app-emulation/virtualbox-additions/Manifest
28 index 2748272feaf..acf1e5d22b5 100644
29 --- a/app-emulation/virtualbox-additions/Manifest
30 +++ b/app-emulation/virtualbox-additions/Manifest
31 @@ -2,4 +2,5 @@ DIST VBoxGuestAdditions_5.2.26.iso 58433536 BLAKE2B 1d7bae647923a57cdcee38a1609a
32 DIST VBoxGuestAdditions_5.2.30.iso 58578944 BLAKE2B 6a2565fa8e3b19363da82592ba4d93ddfb6d22e107e28e901aa4c0bce84aaa0bd63d781155e44462b90d9f491e4df589cfd346dd33fe8f016862e85d99c2092c SHA512 568312b26647f7932d94a42279f35b9a827145ef2bd0ea4ef00a865c355b1de55dee66e731a90d644ddd35cb301f61315edf684c9a321681882c1537c8159caa
33 DIST VBoxGuestAdditions_5.2.32.iso 49620992 BLAKE2B 04853f4b9a95898263ca7238a78b5d8751882a21874e4745d675642185542eb617f2a74b3e55b4444067822511d33b6d358e37e179d1b1c6464d701a8ab45a54 SHA512 86f1d7071a9033b7826dcacbcf23822acc772d909af8a8a12345bd5fe68375677b522d0e1987f2908412d5a29369d0a1221fd099f8b692c8d25fe9cbe40fd11e
34 DIST VBoxGuestAdditions_6.0.10.iso 77162496 BLAKE2B 71c95b89055a1eeaa38f650c2572d1fbabf4425d13e5473ae4a56a488125781a33e079c6390bcc5b2499b796221ef89e7373c641b8a75bbf31ffeede4f8f0ffc SHA512 d1d1602688ebdad4975b7b800012f6195774cfa29d00900fa49ded88f6cdfe4c1abdfd25ca55b08e2fc97a7f2f204511424dd561aebd68d4ee8222b9b0f0b8ff
35 +DIST VBoxGuestAdditions_6.0.12.iso 77195264 BLAKE2B bc7956a8eaf4a3ddc92b20c52696e298af63980bc607f8caea51ac00b826f62a3214a30a232070c3ded7a2db9d81114a81de2f6d9b04bdec1ea5cfb26808287e SHA512 83c9703588f14b6a24d878cb929fc09dddd94510f8a63092ff91864275abf8dd47f10e8bd300128305e1ed2e8504c76260b72e5d534c6d45de1e0d64d038ec58
36 DIST VBoxGuestAdditions_6.0.8.iso 86562816 BLAKE2B dddac0dff687982040543bff065719a6b900666886892247d6ca2e6968d601dfd7c01b0b4c79db28ca81f25ed15906ec65c3e77ac4128eeaaf9a8d6d16632336 SHA512 95396a04e436cf2b30f6897f4ee561acaaf3fd3b677bc2f2d58dc92649245f7b105bbf0ec1b8f5612f5465e2c46d8b55786863508192d0a68aa381ddc44a315c
37
38 diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-6.0.12.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-6.0.12.ebuild
39 new file mode 100644
40 index 00000000000..5124a818a15
41 --- /dev/null
42 +++ b/app-emulation/virtualbox-additions/virtualbox-additions-6.0.12.ebuild
43 @@ -0,0 +1,34 @@
44 +# Copyright 1999-2019 Gentoo Authors
45 +# Distributed under the terms of the GNU General Public License v2
46 +
47 +EAPI=7
48 +
49 +MY_PN=VBoxGuestAdditions
50 +MY_PV="${PV/beta/BETA}"
51 +MY_PV="${MY_PV/rc/RC}"
52 +MY_P=${MY_PN}_${MY_PV}
53 +
54 +DESCRIPTION="CD image containing guest additions for VirtualBox"
55 +HOMEPAGE="https://www.virtualbox.org/"
56 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
57 +
58 +LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
59 +SLOT="0"
60 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
61 +KEYWORDS="~amd64 ~x86"
62 +IUSE=""
63 +RESTRICT="mirror"
64 +
65 +RDEPEND="!app-emulation/virtualbox-bin
66 + !=app-emulation/virtualbox-9999"
67 +
68 +S="${WORKDIR}"
69 +
70 +src_unpack() {
71 + return 0
72 +}
73 +
74 +src_install() {
75 + insinto /usr/share/${PN/-additions}
76 + newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
77 +}
78
79 diff --git a/app-emulation/virtualbox-bin/Manifest b/app-emulation/virtualbox-bin/Manifest
80 index eb1727c0c3e..ddfe6ecb0d6 100644
81 --- a/app-emulation/virtualbox-bin/Manifest
82 +++ b/app-emulation/virtualbox-bin/Manifest
83 @@ -2,6 +2,7 @@ DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.26-128414.tar.gz 19684009 BLAKE2B 8
84 DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.30-130521.tar.gz 26914147 BLAKE2B f595f32a76649a803be490a9a6d46702e82cc835274973f0867f957d944724252b59e9844167b0038b9ba2b91854443f6eeaf084278534f4ab4249444fb8755a SHA512 f08fde658c7c1e916ce2c0ccebe9b05e7963168bbf945156c96f75acbd06ef1dca2088371fc3a6f75c84232bee9ebbed3b6bf92dbd0702cb5ff496cdc11227c5
85 DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.32-132073.tar.gz 26917593 BLAKE2B e52c746299d32ae908892791d8fb9b4dda264875e66bf0459adfbc64381001e9be1800a8ac93bbea14dceb47a0e81cf79c29a4c0796f7c4a30021e4beb036cfa SHA512 382ed45a90981397da7d46925a73c5aa0cc870fe41992c87ccd3d3a33420b199e4a0a19761a6c6ebeacf93450e2937d81befb6fdaf7fb7961827e23f0f24c645
86 DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.10-132072.tar.gz 23160596 BLAKE2B 5cd7d1490305236f99b759520b4c63afd207cab53e861aaca0b0c318fe96f991756db60652bf65b26b5b9690366b6a5df13c225b44df75a30c1cc04badc7dbb2 SHA512 2c99b9917c65b4287bd1b78e9b9312630850307becea526188f97de569f541fab6bfbc4d5cff2ea9aab784dc4bbb23ada3679f76116ba94169f9c73566cc6c09
87 +DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.12-133076.tar.gz 23160551 BLAKE2B 6174296d97f9e32a79f29e119804b15d288100017ea9da20235325f095e1d10a7ea5acf478d914b4a2e874da7640520691ad9a881228855b047f5c0c529ad120 SHA512 f7d4785ce8e53836cb4b87920765967cb3148ba09ee5921ab67fc4547d8a90923bfbb8a432d67ec6b878775fd67f1dbd826dcf993b57481f71d2f8a71ce13bfd
88 DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.8-130520.tar.gz 23309069 BLAKE2B bbb060e0e13e336ee445234d7a61ded3896a0948a6a24f3d4b1792da4a9003cfb5717b7f608ffd9c74b4bfe2b24ed918fa2e87cf90ec3aaa3a7b31a7ef33dee5 SHA512 f942c08dd905163cadf79897a0ad8e8a280c96a555bfb9b5d2fc50c25872e8fe69c2f30326bd6a074ed73ea2d6f99b02e143870c05c68c663ed32aee62abba1a
89 DIST VirtualBox-5.2.26-128414-Linux_amd64.run 89220562 BLAKE2B d937e3a8f622ed1afc8ab7d2479401c6b41f6b1404197b2d86933d741a209071b1bc98de14ea4f25b2b0f2a22a328393908f85955f8879dbf8b28e2b981e4d04 SHA512 c8d7741408d234e7c05709dd0ed66d30b427b0f39976f232b1fe8a17160d36c4dda7d3adda46a38cbdd6626d34570805f582ac0aae2a975385a1f1d06e97f354
90 DIST VirtualBox-5.2.26-128414-Linux_x86.run 88339918 BLAKE2B 0fe177a8d9ab4c4cb894151a00f9554713dee27af1fe3036591a0e7865c8869eef17368ab42270d5a9081c849e6550ebef809c3f8f09a9238e2f5a5f0c9e76e5 SHA512 6a809cf29a2cd70bddeca0443955ea10044553ef85744949b604f92a8bca96b9deb1c37f723388d1f27f903c9469e7cb853a0bf7d6928bb18ba61cb19b216fba
91 @@ -10,9 +11,11 @@ DIST VirtualBox-5.2.30-130521-Linux_x86.run 88923599 BLAKE2B e8e5abf4b839c4edd48
92 DIST VirtualBox-5.2.32-132073-Linux_amd64.run 83854803 BLAKE2B 3522df31f4f98efcd40adcaaf8ac458078adf0bbfed96c7d309d4726ddb8b8dd78eef830b3cfcb2f1fa6329bcc30ea2449f5c88cab66fa0c7d20818d7b5aa07a SHA512 aea9b27793f3363eba2ed627cc3b35ca51445946e6e9f20382fb3034afbb7470d27fdc476066c04acc595690a9e34109e8b8ce6dcab10fdc990b241b24ec47fb
93 DIST VirtualBox-5.2.32-132073-Linux_x86.run 82943439 BLAKE2B 31a22e8b52a53d6948a5af533b5c8f374d703c44736678c0bbe6fd9b5298bed4817996c32902a69c2c59dbf751cea04f22beb7203deaeadf79d2424e123e9d37 SHA512 05f99b673224c2b3d94b0d568067ae5ee74200c88a3b7f6665988a9d0c35f69f81c07292b838d07c07fd6d5484979615fd255650b138387501a593f3833b9071
94 DIST VirtualBox-6.0.10-132072-Linux_amd64.run 127108569 BLAKE2B f2313b8e797f1292975d6d0f214985b16541b4b05cd0efa3f9b417a02b85ad7affa8c1d4929f161f90548242541628000c3ef39acece29a376f11aaf4d3536e9 SHA512 026c9b5d5f24714293cafb522840c2c84b86ebaa903f7e402472a916bd549cf3b279ef6de02ff0c9c7cb6df74ea402568df64ed224c0173d445d80f04a2d93d1
95 +DIST VirtualBox-6.0.12-133076-Linux_amd64.run 127118808 BLAKE2B b654fce2e9134390c7cf27e30e2c2e15e5d3bfd40df85627b266f250c112b0f4f60062d3f50dbb0e5bc0ac7f4b819694cdb65d2148b4b015b8e0c5c71c13e4ec SHA512 cce0e95de6e7ecb879807ec47cff0f4423c471132fc157e4c1656824ab5c914684db53bf73c77f9a98e72f654a7af13b21ad2954ef8f5a961b39ab9bb7c04990
96 DIST VirtualBox-6.0.8-130520-Linux_amd64.run 133672408 BLAKE2B 62c8d51502c4b3a15ba2a79356227c9e932c87480b31f3f70a5c89881f757a2725f4c1800ac312866f0e1e2e2970f6288d4970b52428ce94e390dfc68872ea7c SHA512 ea9061f420c2fce424c98903c8f7845cbb60eab83722de2f7ccd5723df81365b8e8b6fe80d183b4b38a30c13432fa4c567ea05e799ee176111130c3060bc25b7
97 DIST VirtualBoxSDK-5.2.26-128414.zip 10159276 BLAKE2B 32a9e0a70cc63c8e0daa7080f8e10ac8a514837be98a66b00161cd0c9bf2cc42ef0a11f3a69a742a2f6745b4c8b8fe9e946e18f81cd5ef3ab2f68d5e3c95c568 SHA512 f3d1cc622734ecb0f56fcdf5728fcc747e3b084cb2358d420c55c1acd98d2f24870f0fd18cea430f118f34bca10199526ba195a314d6ce7fb6c4bc8281d89f09
98 DIST VirtualBoxSDK-5.2.30-130521.zip 10153996 BLAKE2B d0c24220f3d9d10528e10dd65a884d7431bb54b3fe186500685f7ee228b74aae2ed81650e695f7a47d7b8769fc94d7c8d8dfda443fe3ee0f11fc4773f1b34a2c SHA512 6305c7884ede60090726d9f9e6628a20030537d121892d2005e13abce5233df85fcfc465faee199fd38901431e1d9f86c9985698ddd6b0594f80842f34b8b8b3
99 DIST VirtualBoxSDK-5.2.32-132073.zip 10200195 BLAKE2B 0de34e166b94889c605014233142887e7a8857d1915866156a0cc63850937730ec063e63b550f0d39ad241259158f033b028dbab7eec3f6f38c3715139413b3a SHA512 ccbe2af819bff46055bd6f079a03d69e721a09286e83d4f650583bc7692f5d19ae1a725cf3a6eb1b75167a2c73ff2e020d1f932bf9cfeee9ee709d1174c4cabf
100 DIST VirtualBoxSDK-6.0.10-132072.zip 10801181 BLAKE2B 9ad30a0db9e0e87594277c10d869f915a1981c8a7fef294c34bbc904714141bc69e9ad80b79fa61b418ab537f65ccb574f72b6a2985110b51c54d8bfeac9f42a SHA512 b1cf9d3d289a3ba765e3ef9af2491b9f785e241c2c1ff9606009d3983c8fa8660a80dbd37404c773aa57b76a06fd2d1136644565643a58d1d4e1700a7cc329fd
101 +DIST VirtualBoxSDK-6.0.12-133076.zip 10799655 BLAKE2B 93fc5093454a21bf5da26d00f35ab107410cddfed63c9af8494cd194cdc080a70ec8cc8af57233be0472b84a25709a3719f51d399585c1b474ddb4d40e6488ab SHA512 f270a6c404f1bf49ca6bbbc8c4fdba70e6c65001e9731a689f391e6d4c18866ceb14c94a241c15a4e5dd01e08f2c5c61f0fe7feb43ffe36acc9868a72a75603c
102 DIST VirtualBoxSDK-6.0.8-130520.zip 10758177 BLAKE2B 6d4f8fc33cb57ff5055775cc0e9f676eede2cc07d62c73ee66813e9aae71ce6a73c2c81699234d5b5eab8244d9f15374a0485cfed1bedec429088e2d82bfd91a SHA512 2a94359904869b228337eb754bf545d32981bdc16ecc33544f30a6ce67d3ee1cec2d0c5bd02ed510ecfc7779871a53dc391a39a37a29fd725a403fd68789a081
103
104 diff --git a/app-emulation/virtualbox-bin/virtualbox-bin-6.0.12.133076.ebuild b/app-emulation/virtualbox-bin/virtualbox-bin-6.0.12.133076.ebuild
105 new file mode 100644
106 index 00000000000..0d68ba80c9d
107 --- /dev/null
108 +++ b/app-emulation/virtualbox-bin/virtualbox-bin-6.0.12.133076.ebuild
109 @@ -0,0 +1,291 @@
110 +# Copyright 1999-2019 Gentoo Authors
111 +# Distributed under the terms of the GNU General Public License v2
112 +
113 +EAPI=6
114 +
115 +PYTHON_COMPAT=( python2_7 )
116 +
117 +inherit xdg-utils gnome2 pax-utils python-r1 udev unpacker eapi7-ver
118 +
119 +MAIN_PV="$(ver_cut 1-3)"
120 +if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
121 + MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
122 + MY_PV="${MY_PV/beta/BETA}"
123 + MY_PV="${MY_PV/rc/RC}"
124 +else
125 + MY_PV="${MAIN_PV}"
126 + KEYWORDS="~amd64" #~x86
127 +fi
128 +VBOX_BUILD_ID="$(ver_cut 4)"
129 +VBOX_PV="${MY_PV}-${VBOX_BUILD_ID}"
130 +MY_P="VirtualBox-${VBOX_PV}-Linux"
131 +# needed as sometimes the extpack gets another build ID
132 +EXTP_PV="${VBOX_PV}"
133 +EXTP_PN="Oracle_VM_VirtualBox_Extension_Pack"
134 +EXTP_P="${EXTP_PN}-${EXTP_PV}"
135 +# needed as sometimes the SDK gets another build ID
136 +SDK_PV="${VBOX_PV}"
137 +SDK_P="VirtualBoxSDK-${SDK_PV}"
138 +
139 +DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
140 +HOMEPAGE="https://www.virtualbox.org/"
141 +SRC_URI="amd64? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_amd64.run )
142 + https://download.virtualbox.org/virtualbox/${MY_PV}/${EXTP_P}.vbox-extpack -> ${EXTP_P}.tar.gz"
143 + #x86? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_x86.run )
144 +
145 +LICENSE="GPL-2 PUEL"
146 +SLOT="0"
147 +IUSE="+additions +chm headless python vboxwebsrv rdesktop-vrdp"
148 +RESTRICT="mirror"
149 +
150 +if [[ "${PV}" != *beta* ]] ; then
151 + SRC_URI+="
152 + sdk? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${SDK_P}.zip )"
153 + IUSE+=" sdk"
154 +fi
155 +
156 +DEPEND="app-arch/unzip
157 + ${PYTHON_DEPS}"
158 +
159 +RDEPEND="!!app-emulation/virtualbox
160 + !app-emulation/virtualbox-additions
161 + ~app-emulation/virtualbox-modules-${MAIN_PV}
162 + !headless? (
163 + dev-libs/glib
164 + media-libs/fontconfig
165 + media-libs/freetype
166 + media-libs/libpng
167 + media-libs/libsdl[X]
168 + x11-libs/libXcursor
169 + x11-libs/libXext
170 + x11-libs/libXfixes
171 + x11-libs/libXft
172 + x11-libs/libXi
173 + x11-libs/libXinerama
174 + x11-libs/libXrandr
175 + x11-libs/libXrender
176 + chm? ( dev-libs/expat )
177 + )
178 + dev-libs/libxml2
179 + sys-fs/lvm2
180 + x11-libs/libXau
181 + x11-libs/libX11
182 + x11-libs/libXt
183 + x11-libs/libXmu
184 + x11-libs/libSM
185 + x11-libs/libICE
186 + x11-libs/libXdmcp
187 + ${PYTHON_DEPS}"
188 +
189 +REQUIRED_USE="${PYTHON_REQUIRED_USE}"
190 +S="${WORKDIR}"
191 +
192 +QA_PREBUILT="opt/VirtualBox/*"
193 +
194 +PYTHON_UPDATER_IGNORE="1"
195 +
196 +src_unpack() {
197 + unpack_makeself ${MY_P}_${ARCH}.run
198 + unpack ./VirtualBox.tar.bz2
199 +
200 + mkdir "${S}"/${EXTP_PN} || die
201 + pushd "${S}"/${EXTP_PN} &>/dev/null || die
202 + unpack ${EXTP_P}.tar.gz
203 + popd &>/dev/null || die
204 +
205 + if [[ "${PV}" != *beta* ]] && use sdk ; then
206 + unpack VirtualBoxSDK-${SDK_PV}.zip
207 + fi
208 +}
209 +
210 +src_configure() {
211 + :;
212 +}
213 +
214 +src_compile() {
215 + :;
216 +}
217 +
218 +src_install() {
219 + # create virtualbox configurations files
220 + insinto /etc/vbox
221 + newins "${FILESDIR}/${PN}-config" vbox.cfg
222 +
223 + if ! use headless ; then
224 + newmenu "${FILESDIR}"/${PN}.desktop-2 ${PN}.desktop
225 +
226 + # set up symlinks (bug #572012)
227 + dosym ../../../../opt/VirtualBox/virtualbox.xml /usr/share/mime/packages/virtualbox.xml
228 +
229 + local size ico icofile
230 + for size in 16 24 32 48 64 72 96 128 256 ; do
231 + pushd "${S}"/icons/${size}x${size} &>/dev/null || die
232 + if [[ -f "virtualbox.png" ]] ; then
233 + doicon -s ${size} virtualbox.png
234 + fi
235 + for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
236 + icofile="virtualbox-${ico}.png"
237 + if [[ -f "${icofile}" ]] ; then
238 + doicon -s ${size} ${icofile}
239 + fi
240 + done
241 + popd &>/dev/null || die
242 + done
243 + doicon -s scalable "${S}"/icons/scalable/virtualbox.svg
244 + insinto /usr/share/pixmaps
245 + newins "${S}"/icons/48x48/virtualbox.png ${PN}.png
246 + fi
247 +
248 + pushd "${S}"/${EXTP_PN} &>/dev/null || die
249 + insinto /opt/VirtualBox/ExtensionPacks/${EXTP_PN}
250 + doins -r linux.${ARCH}
251 + doins ExtPack* PXE-Intel.rom
252 + popd &>/dev/null || die
253 + rm -rf "${S}"/${EXTP_PN}
254 +
255 + insinto /opt/VirtualBox
256 + dodir /opt/bin
257 +
258 + doins UserManual.pdf
259 +
260 + if [[ "${PV}" != *beta* ]] && use sdk ; then
261 + doins -r sdk
262 + fi
263 +
264 + if use additions; then
265 + doins -r additions
266 + fi
267 +
268 + if use vboxwebsrv; then
269 + doins vboxwebsrv
270 + fowners root:vboxusers /opt/VirtualBox/vboxwebsrv
271 + fperms 0750 /opt/VirtualBox/vboxwebsrv
272 + dosym ../../opt/VirtualBox/VBox.sh /opt/bin/vboxwebsrv
273 + newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
274 + newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
275 + fi
276 +
277 + if use rdesktop-vrdp; then
278 + doins rdesktop-vrdp
279 + doins -r rdesktop-vrdp-keymaps
280 + fperms 0750 /opt/VirtualBox/rdesktop-vrdp
281 + dosym ../../opt/VirtualBox/rdesktop-vrdp /opt/bin/rdesktop-vrdp
282 + fi
283 +
284 + if ! use headless && use chm; then
285 + doins kchmviewer VirtualBox.chm
286 + fowners root:vboxusers /opt/VirtualBox/kchmviewer
287 + fperms 0750 /opt/VirtualBox/kchmviewer
288 + fi
289 +
290 + # This ebuild / package supports only py2.7. When py3 comes is unknown.
291 + # The compile phase makes VBoxPython2_7.so.
292 + # py3 support would presumably require a binary pre-compiled by py3.
293 + use python && doins VBoxPython.so
294 +
295 + rm -rf src rdesktop* deffiles install* routines.sh runlevel.sh \
296 + vboxdrv.sh VBox.sh VBox.png vboxnet.sh additions VirtualBox.desktop \
297 + VirtualBox.tar.bz2 LICENSE VBoxSysInfo.sh rdesktop* vboxwebsrv \
298 + webtest kchmviewer VirtualBox.chm vbox-create-usb-node.sh \
299 + 90-vbox-usb.fdi uninstall.sh vboxshell.py vboxdrv-pardus.py \
300 + VBoxPython?_*.so
301 +
302 + if use headless ; then
303 + rm -rf VBoxSDL VirtualBox{,VM} VBoxKeyboard.so
304 + fi
305 +
306 + doins -r * || die
307 +
308 + # create symlinks for working around unsupported $ORIGIN/.. in VBoxC.so (setuid)
309 + dosym ../VBoxVMM.so /opt/VirtualBox/components/VBoxVMM.so
310 + dosym ../VBoxREM.so /opt/VirtualBox/components/VBoxREM.so
311 + dosym ../VBoxRT.so /opt/VirtualBox/components/VBoxRT.so
312 + dosym ../VBoxDDU.so /opt/VirtualBox/components/VBoxDDU.so
313 + dosym ../VBoxXPCOM.so /opt/VirtualBox/components/VBoxXPCOM.so
314 +
315 + local each
316 + for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,TestOGL,ExtPackHelperApp} $(usex headless '' VirtualBox) ; do
317 + fowners root:vboxusers /opt/VirtualBox/${each}
318 + fperms 0750 /opt/VirtualBox/${each}
319 + pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
320 + done
321 + # VBoxNetAdpCtl and VBoxNetDHCP binaries need to be suid root in any case..
322 + for each in VBoxNet{AdpCtl,DHCP,NAT} $(usex headless '' VirtualBoxVM) ; do
323 + fowners root:vboxusers /opt/VirtualBox/${each}
324 + fperms 4750 /opt/VirtualBox/${each}
325 + pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
326 + done
327 +
328 + if ! use headless ; then
329 + # Hardened build: Mark selected binaries set-user-ID-on-execution
330 + for each in VBox{SDL,Headless} ; do
331 + fowners root:vboxusers /opt/VirtualBox/${each}
332 + fperms 4510 /opt/VirtualBox/${each}
333 + pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
334 + done
335 +
336 + dosym ../VirtualBox/VBox.sh /opt/bin/VirtualBox
337 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxSDL
338 + else
339 + # Hardened build: Mark selected binaries set-user-ID-on-execution
340 + fowners root:vboxusers /opt/VirtualBox/VBoxHeadless
341 + fperms 4510 /opt/VirtualBox/VBoxHeadless
342 + pax-mark -m "${ED%/}"/opt/VirtualBox/VBoxHeadless
343 + fi
344 +
345 + exeinto /opt/VirtualBox
346 + newexe "${FILESDIR}/${PN}-3-wrapper" "VBox.sh"
347 + fowners root:vboxusers /opt/VirtualBox/VBox.sh
348 + fperms 0750 /opt/VirtualBox/VBox.sh
349 +
350 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxManage
351 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxVRDP
352 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxHeadless
353 + dosym ../VirtualBox/VBoxTunctl /opt/bin/VBoxTunctl
354 +
355 + # set an env-variable for 3rd party tools
356 + echo -n "VBOX_APP_HOME=/opt/VirtualBox" > "${T}/90virtualbox"
357 + doenvd "${T}/90virtualbox"
358 +
359 + local udevdir="$(get_udevdir)"
360 + insinto ${udevdir}/rules.d
361 + doins "${FILESDIR}"/10-virtualbox.rules
362 + sed "s@%UDEVDIR%@${udevdir}@" \
363 + -i "${ED%/}"${udevdir}/rules.d/10-virtualbox.rules || die
364 + # move udev scripts into ${udevdir} (bug #372491)
365 + mv "${ED%/}"/opt/VirtualBox/VBoxCreateUSBNode.sh "${ED%/}"${udevdir} || die
366 + fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
367 +}
368 +
369 +pkg_postinst() {
370 + xdg_icon_cache_update
371 + xdg_desktop_database_update
372 + xdg_mimeinfo_database_update
373 +
374 + udevadm control --reload-rules && udevadm trigger --subsystem-match=usb
375 +
376 + elog ""
377 + if ! use headless ; then
378 + elog "To launch VirtualBox just type: \"VirtualBox\""
379 + elog ""
380 + fi
381 + elog "You must be in the vboxusers group to use VirtualBox."
382 + elog ""
383 + elog "For advanced networking setups you should emerge:"
384 + elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
385 + elog ""
386 + elog "Please visit http://www.virtualbox.org/wiki/Editions for"
387 + elog "an overview about the different features of ${PN}"
388 + elog "and virtualbox-ose"
389 + if [ -e "${ROOT}/etc/udev/rules.d/10-virtualbox.rules" ] ; then
390 + elog ""
391 + elog "Please remove \"${ROOT}/etc/udev/rules.d/10-virtualbox.rules\""
392 + elog "or else USB in ${PN} won't work."
393 + fi
394 +}
395 +
396 +pkg_postrm() {
397 + xdg_icon_cache_update
398 + xdg_desktop_database_update
399 + xdg_mimeinfo_database_update
400 +}
401
402 diff --git a/app-emulation/virtualbox-extpack-oracle/Manifest b/app-emulation/virtualbox-extpack-oracle/Manifest
403 index 1c0d469d421..23f642cefc0 100644
404 --- a/app-emulation/virtualbox-extpack-oracle/Manifest
405 +++ b/app-emulation/virtualbox-extpack-oracle/Manifest
406 @@ -2,4 +2,5 @@ DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.26-128414.tar.gz 19684009 BLAKE2B 8
407 DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.30-130521.tar.gz 26914147 BLAKE2B f595f32a76649a803be490a9a6d46702e82cc835274973f0867f957d944724252b59e9844167b0038b9ba2b91854443f6eeaf084278534f4ab4249444fb8755a SHA512 f08fde658c7c1e916ce2c0ccebe9b05e7963168bbf945156c96f75acbd06ef1dca2088371fc3a6f75c84232bee9ebbed3b6bf92dbd0702cb5ff496cdc11227c5
408 DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.32-132073.tar.gz 26917593 BLAKE2B e52c746299d32ae908892791d8fb9b4dda264875e66bf0459adfbc64381001e9be1800a8ac93bbea14dceb47a0e81cf79c29a4c0796f7c4a30021e4beb036cfa SHA512 382ed45a90981397da7d46925a73c5aa0cc870fe41992c87ccd3d3a33420b199e4a0a19761a6c6ebeacf93450e2937d81befb6fdaf7fb7961827e23f0f24c645
409 DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.10-132072.tar.gz 23160596 BLAKE2B 5cd7d1490305236f99b759520b4c63afd207cab53e861aaca0b0c318fe96f991756db60652bf65b26b5b9690366b6a5df13c225b44df75a30c1cc04badc7dbb2 SHA512 2c99b9917c65b4287bd1b78e9b9312630850307becea526188f97de569f541fab6bfbc4d5cff2ea9aab784dc4bbb23ada3679f76116ba94169f9c73566cc6c09
410 +DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.12-133076.tar.gz 23160551 BLAKE2B 6174296d97f9e32a79f29e119804b15d288100017ea9da20235325f095e1d10a7ea5acf478d914b4a2e874da7640520691ad9a881228855b047f5c0c529ad120 SHA512 f7d4785ce8e53836cb4b87920765967cb3148ba09ee5921ab67fc4547d8a90923bfbb8a432d67ec6b878775fd67f1dbd826dcf993b57481f71d2f8a71ce13bfd
411 DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.8-130520.tar.gz 23309069 BLAKE2B bbb060e0e13e336ee445234d7a61ded3896a0948a6a24f3d4b1792da4a9003cfb5717b7f608ffd9c74b4bfe2b24ed918fa2e87cf90ec3aaa3a7b31a7ef33dee5 SHA512 f942c08dd905163cadf79897a0ad8e8a280c96a555bfb9b5d2fc50c25872e8fe69c2f30326bd6a074ed73ea2d6f99b02e143870c05c68c663ed32aee62abba1a
412
413 diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.0.12.133076.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.0.12.133076.ebuild
414 new file mode 100644
415 index 00000000000..a260ead1a63
416 --- /dev/null
417 +++ b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.0.12.133076.ebuild
418 @@ -0,0 +1,43 @@
419 +# Copyright 1999-2019 Gentoo Authors
420 +# Distributed under the terms of the GNU General Public License v2
421 +
422 +EAPI=7
423 +
424 +inherit multilib
425 +
426 +MAIN_PV="$(ver_cut 1-3)"
427 +if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
428 + MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
429 + DEP_PV="${MY_PV}"
430 + MY_PV="${MY_PV/beta/BETA}"
431 + MY_PV="${MY_PV/rc/RC}"
432 +else
433 + MY_PV="${MAIN_PV}"
434 + DEP_PV="${MAIN_PV}"
435 +fi
436 +VBOX_BUILD_ID="$(ver_cut 4)"
437 +MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
438 +MY_P="${MY_PN}-${MY_PV}-${VBOX_BUILD_ID}"
439 +
440 +DESCRIPTION="PUEL extensions for VirtualBox"
441 +HOMEPAGE="https://www.virtualbox.org/"
442 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
443 +
444 +LICENSE="PUEL"
445 +SLOT="0"
446 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
447 +KEYWORDS="~amd64 ~x86"
448 +IUSE=""
449 +RESTRICT="mirror strip"
450 +
451 +RDEPEND="~app-emulation/virtualbox-${DEP_PV}"
452 +
453 +S="${WORKDIR}"
454 +
455 +QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
456 +
457 +src_install() {
458 + insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
459 + doins -r linux.${ARCH}
460 + doins ExtPack* PXE-Intel.rom
461 +}
462
463 diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest
464 index 2ed7f78945f..1464ed1cd19 100644
465 --- a/app-emulation/virtualbox-guest-additions/Manifest
466 +++ b/app-emulation/virtualbox-guest-additions/Manifest
467 @@ -2,6 +2,7 @@ DIST VirtualBox-5.2.26.tar.bz2 118371765 BLAKE2B 32413b72e33f2f63835a2eb2d47dc75
468 DIST VirtualBox-5.2.30.tar.bz2 118462289 BLAKE2B 87126b5af657815d0fcc8aadf49a23ce613ea0998b70f988f78e9d381138c414c7c73a0bf91955481cf484f5b71081ff1bab8dabe1b41fffde877e1003477625 SHA512 6230846ceda47b8ffe942aa8427f04f193095103371b7210d30e49cd9e384b9828d6917f75ef125e63e2c1810e8aa3b7c17b72f3ede7697c55d6de9da9d3f668
469 DIST VirtualBox-5.2.32.tar.bz2 118262502 BLAKE2B f42de23ddbef1bb5472f6730b711452049331cf06c80420205844ea4a46ddb3352e0fd91564d94d018cb03921e7f894b30c79ddb684ad498d3f86dee88bf8994 SHA512 4e98d5df5e9e6445dde268d5eacea82e655ce9b96cd6579a9d470a08a0c066b7cd7e212b276e2671e936b4a73a53ecf9daa666cb3a8b9d7dc353c70c9283505e
470 DIST VirtualBox-6.0.10.tar.bz2 154284088 BLAKE2B 6aeb2384a777bb39e7c2692c1e262914296650f1448e8db45a03b864a824d3e8b337208087fa7f4469b1ee15e39c8cdae3707f742eb229872e8cb681d118880c SHA512 96fa3c672790239163829b3c40ac0d75d717b29a7b947ec48709eb7811c5800e314a0fc90d87810e4a03da40b3a65914605f648b287314386b371489e5d974c9
471 +DIST VirtualBox-6.0.12.tar.bz2 154250538 BLAKE2B 1c0da29a1d4f4a9ce57280593b219d1fe507fa31dd419d5ef7e62fa8b76bc8b7b21a414edec79ce03b7b4471176e322cb5a0a592a7f61c1f6096c59ca16072ce SHA512 a2182750c6b7e2f7fe8548a923829c05167b739ad84ed025e6cfd85ce787aaa43d41c72c5a93f17e6b976561bae0aa538d81830c52c1d326b75f5a32ba3d441c
472 DIST VirtualBox-6.0.8.tar.bz2 155404889 BLAKE2B 3eb6ebf713c32e301db1673b22c367a89ce1ffb25d12baab6c7335389ce17e08efd744139acc4114231c4d4b69c6370b6e5d5b18ce97fe5494ca7a192fa43f7d SHA512 df18d5df2c82761b8a77e509b2873cdeaa46d11bc50ca166af1e6c30d3042b0cf5640957b1d411333f5bd5be3f03f382550f1afaecf0651d847bc88c95863d83
473 DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
474 DIST virtualbox-6.0.0_beta2-patches-01.tar.xz 2732 BLAKE2B a138e715d99f135f16ca21c92781bf6cd8913f7f766bb598eddcd63e98280e568e646f56bbd0a3714f273457ca90db0b77ec7940ba25028506a22891f1af7b2d SHA512 954e4b40d6e272efe756ee0965adb4110d45f764433a89080fda7ebaebbc20031f86a3e0027dfdaa1c6a7d6379a1af557cea71512504e4b57b5f5adbfc86b56e
475
476 diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.0.12.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.0.12.ebuild
477 new file mode 100644
478 index 00000000000..efbf2bd2fdf
479 --- /dev/null
480 +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.0.12.ebuild
481 @@ -0,0 +1,219 @@
482 +# Copyright 1999-2019 Gentoo Authors
483 +# Distributed under the terms of the GNU General Public License v2
484 +
485 +EAPI=7
486 +
487 +inherit linux-mod systemd user toolchain-funcs
488 +
489 +MY_PV="${PV/beta/BETA}"
490 +MY_PV="${MY_PV/rc/RC}"
491 +MY_P="VirtualBox-${MY_PV}"
492 +DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
493 +HOMEPAGE="https://www.virtualbox.org/"
494 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
495 + https://dev.gentoo.org/~polynomial-c/virtualbox/patchsets/virtualbox-6.0.0_beta2-patches-01.tar.xz"
496 +
497 +LICENSE="GPL-2"
498 +SLOT="0"
499 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
500 +KEYWORDS="~amd64 ~x86"
501 +IUSE="X"
502 +
503 +RDEPEND="
504 + X? ( x11-apps/xrandr
505 + x11-apps/xrefresh
506 + x11-libs/libXmu
507 + x11-libs/libX11
508 + x11-libs/libXt
509 + x11-libs/libXext
510 + x11-libs/libXau
511 + x11-libs/libXdmcp
512 + x11-libs/libSM
513 + x11-libs/libICE )
514 + sys-apps/dbus
515 +"
516 +DEPEND="
517 + ${RDEPEND}
518 + >=dev-util/kbuild-0.1.9998.3127
519 + >=dev-lang/yasm-0.6.2
520 + sys-devel/bin86
521 + sys-libs/pam
522 + sys-power/iasl
523 + x11-base/xorg-proto
524 +"
525 +PDEPEND="
526 + X? ( x11-drivers/xf86-video-vboxvideo )
527 +"
528 +BUILD_TARGETS="all"
529 +BUILD_TARGET_ARCH="${ARCH}"
530 +
531 +S="${WORKDIR}/${MY_P}"
532 +VBOX_MOD_SRC_DIR="${S}/out/linux.${ARCH}/release/bin/additions/src"
533 +
534 +pkg_setup() {
535 + export DISTCC_DISABLE=1 #674256
536 + MODULE_NAMES="vboxguest(misc:${VBOX_MOD_SRC_DIR}/vboxguest:${VBOX_MOD_SRC_DIR}/vboxguest)
537 + vboxsf(misc:${VBOX_MOD_SRC_DIR}/vboxsf:${VBOX_MOD_SRC_DIR}/vboxsf)"
538 + use X && MODULE_NAMES+=" vboxvideo(misc:${VBOX_MOD_SRC_DIR}/vboxvideo::${VBOX_MOD_SRC_DIR}/vboxvideo)"
539 +
540 + linux-mod_pkg_setup
541 + BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR}"
542 +}
543 +
544 +src_prepare() {
545 + # Remove shipped binaries (kBuild,yasm), see bug #232775
546 + rm -r kBuild/bin tools || die
547 +
548 + # Provide kernel sources
549 + pushd src/VBox/Additions &>/dev/null || die
550 + ebegin "Extracting guest kernel module sources"
551 + kmk GuestDrivers-src vboxguest-src vboxsf-src vboxvideo-src &>/dev/null || die
552 + eend
553 + popd &>/dev/null || die
554 +
555 + # PaX fixes (see bug #298988)
556 + pushd "${VBOX_MOD_SRC_DIR}" &>/dev/null || die
557 + eapply "${FILESDIR}"/vboxguest-6.0.6-log-use-c99.patch
558 + popd &>/dev/null || die
559 +
560 + # Disable things unused or splitted into separate ebuilds
561 + cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
562 + use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
563 +
564 + # Remove pointless GCC version check
565 + sed -e '/^check_gcc$/d' -i configure || die
566 +
567 + rm "${WORKDIR}/patches/010_virtualbox-5.2.12-qt511.patch" || die
568 + eapply "${WORKDIR}/patches"
569 +
570 + eapply_user
571 +}
572 +
573 +src_configure() {
574 + # build the user-space tools, warnings are harmless
575 + local cmd=(
576 + ./configure
577 + --nofatal
578 + --disable-xpcom
579 + --disable-sdl-ttf
580 + --disable-pulse
581 + --disable-alsa
582 + --with-gcc="$(tc-getCC)"
583 + --with-g++="$(tc-getCXX)"
584 + --target-arch=${ARCH}
585 + --with-linux="${KV_OUT_DIR}"
586 + --build-headless
587 + )
588 + echo "${cmd[@]}"
589 + "${cmd[@]}" || die "configure failed"
590 + source ./env.sh
591 + export VBOX_GCC_OPT="${CFLAGS} ${CPPFLAGS}"
592 +}
593 +
594 +src_compile() {
595 + MAKE="kmk" \
596 + emake TOOL_YASM_AS=yasm \
597 + VBOX_ONLY_ADDITIONS=1 \
598 + KBUILD_VERBOSE=2
599 +
600 + # Now creating the kernel modules. We must do this _after_
601 + # we compiled the user-space tools as we need two of the
602 + # automatically generated header files. (>=3.2.0)
603 + linux-mod_src_compile
604 +}
605 +
606 +src_install() {
607 + linux-mod_src_install
608 +
609 + cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
610 +
611 + insinto /sbin
612 + newins mount.vboxsf mount.vboxsf
613 + fperms 4755 /sbin/mount.vboxsf
614 +
615 + newinitd "${FILESDIR}"/${PN}-8.initd ${PN}
616 +
617 + insinto /usr/sbin/
618 + newins VBoxService vboxguest-service
619 + fperms 0755 /usr/sbin/vboxguest-service
620 +
621 + insinto /usr/bin
622 + doins VBoxControl
623 + fperms 0755 /usr/bin/VBoxControl
624 +
625 + # VBoxClient user service and xrandr wrapper
626 + if use X ; then
627 + doins VBoxClient
628 + fperms 0755 /usr/bin/VBoxClient
629 +
630 + pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
631 + || die
632 + newins 98vboxadd-xclient VBoxClient-all
633 + fperms 0755 /usr/bin/VBoxClient-all
634 + popd &>/dev/null || die
635 + fi
636 +
637 + # udev rule for vboxdrv
638 + local udev_rules_dir="/lib/udev/rules.d"
639 + dodir ${udev_rules_dir}
640 + echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
641 + >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
642 + || die
643 + echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
644 + >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
645 + || die
646 +
647 + # VBoxClient autostart file
648 + insinto /etc/xdg/autostart
649 + doins "${FILESDIR}"/vboxclient.desktop
650 +
651 + # sample xorg.conf
652 + insinto /usr/share/doc/${PF}
653 + doins "${FILESDIR}"/xorg.conf.vbox
654 +
655 + systemd_dounit "${FILESDIR}/${PN}.service"
656 +}
657 +
658 +pkg_preinst() {
659 + enewgroup vboxguest
660 + enewuser vboxguest -1 /bin/sh /dev/null vboxguest
661 + # automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
662 + enewgroup vboxsf
663 +}
664 +
665 +pkg_postinst() {
666 + linux-mod_pkg_postinst
667 + if ! use X ; then
668 + elog "use flag X is off, enable it to install the"
669 + elog "X Window System video driver."
670 + fi
671 + elog ""
672 + elog "Please add users to the \"vboxguest\" group so they can"
673 + elog "benefit from seamless mode, auto-resize and clipboard."
674 + elog ""
675 + elog "The vboxsf group has been added to make automount services work."
676 + elog "These services are part of the shared folders support."
677 + elog ""
678 + elog "Please add:"
679 + elog "/etc/init.d/${PN}"
680 + elog "to the default runlevel in order to start"
681 + elog "needed services."
682 + elog "To use the VirtualBox X driver, use the following"
683 + elog "file as your /etc/X11/xorg.conf:"
684 + elog " /usr/share/doc/${PF}/xorg.conf.vbox"
685 + elog ""
686 + elog "Also make sure you use the Mesa library for OpenGL:"
687 + elog " eselect opengl set xorg-x11"
688 + elog ""
689 + elog "An autostart .desktop file has been installed to start"
690 + elog "VBoxClient in desktop sessions."
691 + elog ""
692 + elog "You can mount shared folders with:"
693 + elog " mount -t vboxsf <shared_folder_name> <mount_point>"
694 + elog ""
695 + elog "Warning:"
696 + elog "this ebuild is only needed if you are running gentoo"
697 + elog "inside a VirtualBox Virtual Machine, you don't need"
698 + elog "it to run VirtualBox itself."
699 + elog ""
700 +}
701
702 diff --git a/app-emulation/virtualbox-modules/Manifest b/app-emulation/virtualbox-modules/Manifest
703 index 95e0a709345..b43d45bcc87 100644
704 --- a/app-emulation/virtualbox-modules/Manifest
705 +++ b/app-emulation/virtualbox-modules/Manifest
706 @@ -2,4 +2,5 @@ DIST vbox-kernel-module-src-5.2.26.tar.xz 642096 BLAKE2B fa908b8dda4c49e880005f2
707 DIST vbox-kernel-module-src-5.2.30.tar.xz 642476 BLAKE2B 497a381b10f813ee333f0ac0a0b9f7893b0cc3c842757e85f119bc28dec4ed978bab827df116c8f99bafb412b8bf5a97592a964cf61f7e813284b2e74e7e8a6d SHA512 80511d96c44294a1faae165e874b838f76449a898cdc01411eae0dbdc5f7ee79f75f8c6a52e9e0c9c1ad8bd054c64751f6be6f7790d0053933db8d786dfbc53e
708 DIST vbox-kernel-module-src-5.2.32.tar.xz 642428 BLAKE2B 0dda5cb5608c1eed22bea209564d53c5f7eab58ca620db2cc441e3c1ba9ad66609c4ef13df07fd29b691f2941a070f9852e8729cd386081df6a82ede345f33c5 SHA512 fadedab690cb7dee8b9a6747ed711d924bf3bce8999b24e7b64cb8738c53c2fa7372b1a8e8535e7e4ef0235aec02d4a3f1f67cd07d7621934fab684c5163329e
709 DIST vbox-kernel-module-src-6.0.10.tar.xz 669008 BLAKE2B 80250aeca8421aa0b88efb1d090f78d0bc6c7b4b2c3b7e0c5c7953d9ef5246ee25df6fa14b75b821e1e3d05cda3ff975560ede89dc482e34faa801a592405a9f SHA512 afab0130c14b86e822f2a9528373388a9eeee952deec9ff7158e4b788b64343235f3a3da10218bfabcb71dd4d89c8ace0031ea9b64d7385140f6c580b5087333
710 +DIST vbox-kernel-module-src-6.0.12.tar.xz 669148 BLAKE2B 2291e3fcb9f049ce5657288151d182dfc9a3d6d6e8e1b32047e4b682f35e56f0a5bb5d3ad7efbc98082d2d1823aeb821099e9878b8a237322e8900fb2e2d65de SHA512 e9d8fcbfc076bf4e7d4dc5954e0c24509273c6358ee2de9ddfa87ea650b69fdc31d223595d610c1dd921efd6620ba5285f7f6a10170e90e706bf731e3629dc51
711 DIST vbox-kernel-module-src-6.0.8.tar.xz 668380 BLAKE2B 06deabe0bae37503ec2b2df3cf1edb820b190c9e453aad8e211278a27c9ffaf229b98c08b2d7510b3721a30ca53833b43184636fde7ce3e5ac0bcbc588330486 SHA512 a4fb626c5a58637cfef7ebc44ccfcf82d6f2a7e91af665a8854d9fafb0c9b042d473c6767dad64497aed5110aefd23299461d39b43f8e57aa0c255cfcc94b448
712
713 diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-6.0.12.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-6.0.12.ebuild
714 new file mode 100644
715 index 00000000000..7257cb3b581
716 --- /dev/null
717 +++ b/app-emulation/virtualbox-modules/virtualbox-modules-6.0.12.ebuild
718 @@ -0,0 +1,52 @@
719 +# Copyright 1999-2019 Gentoo Authors
720 +# Distributed under the terms of the GNU General Public License v2
721 +
722 +# XXX: the tarball here is just the kernel modules split out of the binary
723 +# package that comes from virtualbox-bin
724 +
725 +EAPI=7
726 +
727 +inherit linux-mod user
728 +
729 +MY_P="vbox-kernel-module-src-${PV}"
730 +DESCRIPTION="Kernel Modules for Virtualbox"
731 +HOMEPAGE="https://www.virtualbox.org/"
732 +SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
733 +
734 +LICENSE="GPL-2"
735 +SLOT="0"
736 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
737 +KEYWORDS="~amd64 ~x86"
738 +IUSE="pax_kernel"
739 +
740 +RDEPEND="!=app-emulation/virtualbox-9999"
741 +
742 +S="${WORKDIR}"
743 +
744 +BUILD_TARGETS="all"
745 +BUILD_TARGET_ARCH="${ARCH}"
746 +MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S}) vboxpci(misc:${S})"
747 +
748 +pkg_setup() {
749 + enewgroup vboxusers
750 + linux-mod_pkg_setup
751 + BUILD_PARAMS="CC=$(tc-getBUILD_CC) KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
752 +}
753 +
754 +src_prepare() {
755 + if use pax_kernel && kernel_is -ge 3 0 0 ; then
756 + eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
757 + fi
758 +
759 + default
760 +}
761 +
762 +src_install() {
763 + linux-mod_src_install
764 + insinto /usr/lib/modules-load.d/
765 + doins "${FILESDIR}"/virtualbox.conf
766 +}
767 +
768 +pkg_postinst() {
769 + linux-mod_pkg_postinst
770 +}
771
772 diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
773 index 2ed7f78945f..1464ed1cd19 100644
774 --- a/app-emulation/virtualbox/Manifest
775 +++ b/app-emulation/virtualbox/Manifest
776 @@ -2,6 +2,7 @@ DIST VirtualBox-5.2.26.tar.bz2 118371765 BLAKE2B 32413b72e33f2f63835a2eb2d47dc75
777 DIST VirtualBox-5.2.30.tar.bz2 118462289 BLAKE2B 87126b5af657815d0fcc8aadf49a23ce613ea0998b70f988f78e9d381138c414c7c73a0bf91955481cf484f5b71081ff1bab8dabe1b41fffde877e1003477625 SHA512 6230846ceda47b8ffe942aa8427f04f193095103371b7210d30e49cd9e384b9828d6917f75ef125e63e2c1810e8aa3b7c17b72f3ede7697c55d6de9da9d3f668
778 DIST VirtualBox-5.2.32.tar.bz2 118262502 BLAKE2B f42de23ddbef1bb5472f6730b711452049331cf06c80420205844ea4a46ddb3352e0fd91564d94d018cb03921e7f894b30c79ddb684ad498d3f86dee88bf8994 SHA512 4e98d5df5e9e6445dde268d5eacea82e655ce9b96cd6579a9d470a08a0c066b7cd7e212b276e2671e936b4a73a53ecf9daa666cb3a8b9d7dc353c70c9283505e
779 DIST VirtualBox-6.0.10.tar.bz2 154284088 BLAKE2B 6aeb2384a777bb39e7c2692c1e262914296650f1448e8db45a03b864a824d3e8b337208087fa7f4469b1ee15e39c8cdae3707f742eb229872e8cb681d118880c SHA512 96fa3c672790239163829b3c40ac0d75d717b29a7b947ec48709eb7811c5800e314a0fc90d87810e4a03da40b3a65914605f648b287314386b371489e5d974c9
780 +DIST VirtualBox-6.0.12.tar.bz2 154250538 BLAKE2B 1c0da29a1d4f4a9ce57280593b219d1fe507fa31dd419d5ef7e62fa8b76bc8b7b21a414edec79ce03b7b4471176e322cb5a0a592a7f61c1f6096c59ca16072ce SHA512 a2182750c6b7e2f7fe8548a923829c05167b739ad84ed025e6cfd85ce787aaa43d41c72c5a93f17e6b976561bae0aa538d81830c52c1d326b75f5a32ba3d441c
781 DIST VirtualBox-6.0.8.tar.bz2 155404889 BLAKE2B 3eb6ebf713c32e301db1673b22c367a89ce1ffb25d12baab6c7335389ce17e08efd744139acc4114231c4d4b69c6370b6e5d5b18ce97fe5494ca7a192fa43f7d SHA512 df18d5df2c82761b8a77e509b2873cdeaa46d11bc50ca166af1e6c30d3042b0cf5640957b1d411333f5bd5be3f03f382550f1afaecf0651d847bc88c95863d83
782 DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
783 DIST virtualbox-6.0.0_beta2-patches-01.tar.xz 2732 BLAKE2B a138e715d99f135f16ca21c92781bf6cd8913f7f766bb598eddcd63e98280e568e646f56bbd0a3714f273457ca90db0b77ec7940ba25028506a22891f1af7b2d SHA512 954e4b40d6e272efe756ee0965adb4110d45f764433a89080fda7ebaebbc20031f86a3e0027dfdaa1c6a7d6379a1af557cea71512504e4b57b5f5adbfc86b56e
784
785 diff --git a/app-emulation/virtualbox/virtualbox-6.0.12.ebuild b/app-emulation/virtualbox/virtualbox-6.0.12.ebuild
786 new file mode 100644
787 index 00000000000..7b77c187229
788 --- /dev/null
789 +++ b/app-emulation/virtualbox/virtualbox-6.0.12.ebuild
790 @@ -0,0 +1,510 @@
791 +# Copyright 1999-2019 Gentoo Authors
792 +# Distributed under the terms of the GNU General Public License v2
793 +
794 +EAPI=7
795 +
796 +PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
797 +inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
798 +
799 +MY_PV="${PV/beta/BETA}"
800 +MY_PV="${MY_PV/rc/RC}"
801 +MY_P=VirtualBox-${MY_PV}
802 +
803 +DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
804 +HOMEPAGE="https://www.virtualbox.org/"
805 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
806 + https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.0.0_beta2-patches-01.tar.xz"
807 +
808 +LICENSE="GPL-2 dtrace? ( CDDL )"
809 +SLOT="0"
810 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
811 +KEYWORDS="~amd64 ~x86"
812 +IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
813 +
814 +CDEPEND="
815 + ${PYTHON_DEPS}
816 + !app-emulation/virtualbox-bin
817 + ~app-emulation/virtualbox-modules-${PV}
818 + dev-libs/libIDL
819 + >=dev-libs/libxslt-1.1.19
820 + net-misc/curl
821 + dev-libs/libxml2
822 + media-libs/libpng:0=
823 + media-libs/libvpx:0=
824 + sys-libs/zlib:=
825 + !headless? (
826 + media-libs/libsdl:0[X,video]
827 + x11-libs/libX11
828 + x11-libs/libxcb:=
829 + x11-libs/libXcursor
830 + x11-libs/libXext
831 + x11-libs/libXmu
832 + x11-libs/libXt
833 + opengl? ( virtual/opengl media-libs/freeglut )
834 + qt5? (
835 + dev-qt/qtcore:5
836 + dev-qt/qtgui:5
837 + dev-qt/qtprintsupport:5
838 + dev-qt/qtwidgets:5
839 + dev-qt/qtx11extras:5
840 + opengl? ( dev-qt/qtopengl:5 )
841 + x11-libs/libXinerama
842 + )
843 + )
844 + libressl? ( dev-libs/libressl:= )
845 + !libressl? ( dev-libs/openssl:0= )
846 + lvm? ( sys-fs/lvm2 )
847 + opus? ( media-libs/opus )
848 + udev? ( >=virtual/udev-171 )
849 + vnc? ( >=net-libs/libvncserver-0.9.9 )
850 +"
851 +DEPEND="
852 + ${CDEPEND}
853 + alsa? ( >=media-libs/alsa-lib-1.0.13 )
854 + !headless? ( x11-libs/libXinerama )
855 + pam? ( sys-libs/pam )
856 + pax_kernel? ( sys-apps/elfix )
857 + pulseaudio? ( media-sound/pulseaudio )
858 + qt5? ( dev-qt/linguist-tools:5 )
859 + vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
860 +"
861 +BDEPEND="
862 + ${PYTHON_DEPS}
863 + >=dev-util/kbuild-0.1.9998.3127
864 + >=dev-lang/yasm-0.6.2
865 + sys-devel/bin86
866 + sys-libs/libcap
867 + sys-power/iasl
868 + virtual/pkgconfig
869 + doc? (
870 + app-text/docbook-sgml-dtd:4.4
871 + dev-texlive/texlive-basic
872 + dev-texlive/texlive-latex
873 + dev-texlive/texlive-latexrecommended
874 + dev-texlive/texlive-latexextra
875 + dev-texlive/texlive-fontsrecommended
876 + dev-texlive/texlive-fontsextra
877 + )
878 + java? ( >=virtual/jdk-1.6 )
879 +"
880 +RDEPEND="
881 + ${CDEPEND}
882 + java? ( >=virtual/jre-1.6 )
883 +"
884 +
885 +QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
886 + usr/lib/virtualbox/VBoxSDL.so
887 + usr/lib/virtualbox/VBoxSharedFolders.so
888 + usr/lib/virtualbox/VBoxDD2.so
889 + usr/lib/virtualbox/VBoxOGLrenderspu.so
890 + usr/lib/virtualbox/VBoxPython.so
891 + usr/lib/virtualbox/VBoxDD.so
892 + usr/lib/virtualbox/VBoxDDU.so
893 + usr/lib/virtualbox/VBoxREM64.so
894 + usr/lib/virtualbox/VBoxSharedClipboard.so
895 + usr/lib/virtualbox/VBoxHeadless.so
896 + usr/lib/virtualbox/VBoxRT.so
897 + usr/lib/virtualbox/VBoxREM.so
898 + usr/lib/virtualbox/VBoxSettings.so
899 + usr/lib/virtualbox/VBoxKeyboard.so
900 + usr/lib/virtualbox/VBoxSharedCrOpenGL.so
901 + usr/lib/virtualbox/VBoxVMM.so
902 + usr/lib/virtualbox/VirtualBox.so
903 + usr/lib/virtualbox/VBoxOGLhosterrorspu.so
904 + usr/lib/virtualbox/components/VBoxC.so
905 + usr/lib/virtualbox/components/VBoxSVCM.so
906 + usr/lib/virtualbox/components/VBoxDDU.so
907 + usr/lib/virtualbox/components/VBoxRT.so
908 + usr/lib/virtualbox/components/VBoxREM.so
909 + usr/lib/virtualbox/components/VBoxVMM.so
910 + usr/lib/virtualbox/VBoxREM32.so
911 + usr/lib/virtualbox/VBoxPython2_7.so
912 + usr/lib/virtualbox/VBoxXPCOMC.so
913 + usr/lib/virtualbox/VBoxOGLhostcrutil.so
914 + usr/lib/virtualbox/VBoxNetDHCP.so
915 + usr/lib/virtualbox/VBoxNetNAT.so"
916 +
917 +S="${WORKDIR}/${MY_P}"
918 +
919 +REQUIRED_USE="
920 + java? ( sdk )
921 + python? ( sdk )
922 + vboxwebsrv? ( java )
923 + ${PYTHON_REQUIRED_USE}
924 +"
925 +
926 +pkg_pretend() {
927 + if ! use headless && ! use qt5 ; then
928 + einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
929 + elif use headless && use qt5 ; then
930 + einfo "You selected USE=\"headless qt5\", defaulting to"
931 + einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
932 + fi
933 +
934 + if ! use opengl ; then
935 + einfo "No USE=\"opengl\" selected, this build will lack"
936 + einfo "the OpenGL feature."
937 + fi
938 + if ! use python ; then
939 + einfo "You have disabled the \"python\" USE flag. This will only"
940 + einfo "disable the python bindings being installed."
941 + fi
942 +}
943 +
944 +pkg_setup() {
945 + java-pkg-opt-2_pkg_setup
946 + python-single-r1_pkg_setup
947 +
948 + tc-ld-disable-gold #bug 488176
949 + tc-export CC CXX LD AR RANLIB
950 + export HOST_CC="$(tc-getBUILD_CC)"
951 +}
952 +
953 +src_prepare() {
954 + # Remove shipped binaries (kBuild,yasm), see bug #232775
955 + rm -r kBuild/bin tools || die
956 +
957 + # Replace pointless GCC version check with something less stupid.
958 + # This is needed for the qt5 version check.
959 + sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
960 + -i configure || die
961 +
962 + # Disable things unused or split into separate ebuilds
963 + sed -e "s@MY_LIBDIR@$(get_libdir)@" \
964 + "${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
965 +
966 + # Respect LDFLAGS
967 + sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
968 + -i Config.kmk src/libs/xpcom18a4/Config.kmk || die
969 +
970 + # Do not use hard-coded ld (related to bug #488176)
971 + sed -e '/QUIET)ld /s@ld @$(LD) @' \
972 + -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
973 +
974 + # Use PAM only when pam USE flag is enbaled (bug #376531)
975 + if ! use pam ; then
976 + elog "Disabling PAM removes the possibility to use the VRDP features."
977 + sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
978 + sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
979 + src/VBox/HostServices/Makefile.kmk || die
980 + fi
981 +
982 + # add correct java path
983 + if use java ; then
984 + sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
985 + -i "${S}"/Config.kmk || die
986 + java-pkg-opt-2_src_prepare
987 + fi
988 +
989 + # Only add nopie patch when we're on hardened
990 + if gcc-specs-pie ; then
991 + eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
992 + fi
993 +
994 + # Only add paxmark patch when we're on pax_kernel
995 + if use pax_kernel ; then
996 + eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
997 + fi
998 +
999 + rm "${WORKDIR}/patches/010_virtualbox-5.2.12-qt511.patch" || die
1000 + eapply "${WORKDIR}/patches"
1001 +
1002 + eapply_user
1003 +}
1004 +
1005 +doecho() {
1006 + echo "$@"
1007 + "$@" || die
1008 +}
1009 +
1010 +src_configure() {
1011 + local myconf=(
1012 + --with-gcc="$(tc-getCC)"
1013 + --with-g++="$(tc-getCXX)"
1014 + --disable-dbus
1015 + --disable-kmods
1016 + $(usex alsa '' --disable-alsa)
1017 + $(usex debug --build-debug '')
1018 + $(usex doc '' --disable-docs)
1019 + $(usex java '' --disable-java)
1020 + $(usex lvm '' --disable-devmapper)
1021 + $(usex opus '' --disable-libopus)
1022 + $(usex pulseaudio '' --disable-pulse)
1023 + $(usex python '' --disable-python)
1024 + $(usex vboxwebsrv --enable-webservice '')
1025 + $(usex vnc --enable-vnc '')
1026 + )
1027 + if ! use headless ; then
1028 + myconf+=(
1029 + $(usex opengl '' --disable-opengl)
1030 + $(usex qt5 '' --disable-qt)
1031 + )
1032 + else
1033 + myconf+=(
1034 + --build-headless
1035 + --disable-opengl
1036 + )
1037 + fi
1038 + if use amd64 && ! has_multilib_profile ; then
1039 + myconf+=( --disable-vmmraw )
1040 + fi
1041 + # not an autoconf script
1042 + doecho ./configure ${myconf[@]}
1043 +}
1044 +
1045 +src_compile() {
1046 + source ./env.sh || die
1047 +
1048 + # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
1049 + MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
1050 + MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
1051 + MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
1052 + MAKE="kmk" emake \
1053 + VBOX_BUILD_PUBLISHER=_Gentoo \
1054 + TOOL_GCC3_CC="$(tc-getCC)" TOOL_GCC3_CXX="$(tc-getCXX)" \
1055 + TOOL_GCC3_AS="$(tc-getCC)" TOOL_GCC3_AR="$(tc-getAR)" \
1056 + TOOL_GCC3_LD="$(tc-getCXX)" TOOL_GCC3_LD_SYSMOD="$(tc-getLD)" \
1057 + TOOL_GCC3_CFLAGS="${CFLAGS}" TOOL_GCC3_CXXFLAGS="${CXXFLAGS}" \
1058 + VBOX_GCC_OPT="${CXXFLAGS}" \
1059 + TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
1060 + all
1061 +}
1062 +
1063 +src_install() {
1064 + cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
1065 +
1066 + local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
1067 +
1068 + vbox_inst() {
1069 + local binary="${1}"
1070 + local perms="${2:-0750}"
1071 + local path="${3:-${vbox_inst_path}}"
1072 +
1073 + [[ -n "${binary}" ]] || die "vbox_inst: No binary given!"
1074 + [[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
1075 +
1076 + insinto ${path}
1077 + doins ${binary}
1078 + fowners root:vboxusers ${path}/${binary}
1079 + fperms ${perms} ${path}/${binary}
1080 + }
1081 +
1082 + # Create configuration files
1083 + insinto /etc/vbox
1084 + newins "${FILESDIR}/${PN}-4-config" vbox.cfg
1085 +
1086 + # Set the correct libdir
1087 + sed \
1088 + -e "s@MY_LIBDIR@$(get_libdir)@" \
1089 + -i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
1090 +
1091 + # Install the wrapper script
1092 + exeinto ${vbox_inst_path}
1093 + newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox"
1094 + fowners root:vboxusers ${vbox_inst_path}/VBox
1095 + fperms 0750 ${vbox_inst_path}/VBox
1096 +
1097 + # Install binaries and libraries
1098 + insinto ${vbox_inst_path}
1099 + doins -r components
1100 +
1101 + # *.rc files for x86_64 are only available on multilib systems
1102 + local rcfiles="*.rc"
1103 + if use amd64 && ! has_multilib_profile ; then
1104 + rcfiles=""
1105 + fi
1106 + for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 ${rcfiles} iPxeBaseBin ; do
1107 + vbox_inst ${each}
1108 + done
1109 +
1110 + # These binaries need to be suid root.
1111 + for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
1112 + vbox_inst ${each} 4750
1113 + done
1114 +
1115 + # Install EFI Firmware files (bug #320757)
1116 + for each in VBoxEFI{32,64}.fd ; do
1117 + vbox_inst ${each} 0644
1118 + done
1119 +
1120 + # VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
1121 + # VBoxXPCOMIPCD (bug #524202)
1122 + for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
1123 + pax-mark -m "${ED}"${vbox_inst_path}/${each}
1124 + done
1125 +
1126 + # Symlink binaries to the shipped wrapper
1127 + for each in vbox{autostart,balloonctrl,bugreport,headless,manage} VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do
1128 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
1129 + done
1130 + dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
1131 +
1132 + if use pam ; then
1133 + # VRDPAuth only works with this (bug #351949)
1134 + dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
1135 + fi
1136 +
1137 + # set an env-variable for 3rd party tools
1138 + echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
1139 + doenvd "${T}/90virtualbox"
1140 +
1141 + if ! use headless ; then
1142 + vbox_inst rdesktop-vrdp
1143 + vbox_inst VBoxSDL 4750
1144 + pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
1145 +
1146 + for each in vboxsdl VBoxSDL ; do
1147 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
1148 + done
1149 +
1150 + if use qt5 ; then
1151 + vbox_inst VirtualBox
1152 + vbox_inst VirtualBoxVM 4750
1153 + for each in VirtualBox{,VM} ; do
1154 + pax-mark -m "${ED}"${vbox_inst_path}/${each}
1155 + done
1156 +
1157 + if use opengl ; then
1158 + vbox_inst VBoxTestOGL
1159 + pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
1160 + fi
1161 +
1162 + for each in virtualbox{,vm} VirtualBox{,VM} ; do
1163 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
1164 + done
1165 +
1166 + insinto /usr/share/${PN}
1167 + doins -r nls
1168 + doins -r UnattendedTemplates
1169 +
1170 + domenu ${PN}.desktop
1171 + fi
1172 +
1173 + pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
1174 + for size in 16 32 48 64 128 ; do
1175 + newicon -s ${size} ${PN}-${size}px.png ${PN}.png
1176 + done
1177 + newicon ${PN}-48px.png ${PN}.png
1178 + doicon -s scalable ${PN}.svg
1179 + popd &>/dev/null || die
1180 + pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
1181 + for size in 16 24 32 48 64 72 96 128 256 512 ; do
1182 + for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
1183 + icofile="${PN}-${ico}-${size}px.png"
1184 + if [[ -f "${icofile}" ]] ; then
1185 + newicon -s ${size} ${icofile} ${PN}-${ico}.png
1186 + fi
1187 + done
1188 + done
1189 + popd &>/dev/null || die
1190 + fi
1191 +
1192 + if use lvm ; then
1193 + vbox_inst VBoxVolInfo 4750
1194 + dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
1195 + fi
1196 +
1197 + if use sdk ; then
1198 + insinto ${vbox_inst_path}
1199 + doins -r sdk
1200 +
1201 + if use java ; then
1202 + java-pkg_regjar "${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
1203 + java-pkg_regso "${ED}/${vbox_inst_path}/libvboxjxpcom.so"
1204 + fi
1205 + fi
1206 +
1207 + if use udev ; then
1208 + # New way of handling USB device nodes for VBox (bug #356215)
1209 + local udevdir="$(get_udevdir)"
1210 + insinto ${udevdir}
1211 + doins VBoxCreateUSBNode.sh
1212 + fowners root:vboxusers ${udevdir}/VBoxCreateUSBNode.sh
1213 + fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
1214 + insinto ${udevdir}/rules.d
1215 + sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
1216 + > "${T}"/10-virtualbox.rules || die
1217 + doins "${T}"/10-virtualbox.rules
1218 + fi
1219 +
1220 + if use vboxwebsrv ; then
1221 + vbox_inst vboxwebsrv
1222 + dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
1223 + newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
1224 + newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
1225 + fi
1226 +
1227 + # Fix version string in extensions or else they don't get accepted
1228 + # by the virtualbox host process (see bug #438930)
1229 + find ExtensionPacks -type f -name "ExtPack.xml" -print0 \
1230 + | xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
1231 + || die
1232 +
1233 + local extensions_dir="${vbox_inst_path}/ExtensionPacks"
1234 +
1235 + if use vnc ; then
1236 + insinto ${extensions_dir}
1237 + doins -r ExtensionPacks/VNC
1238 + fi
1239 +
1240 + if use dtrace ; then
1241 + insinto ${extensions_dir}
1242 + doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
1243 + fi
1244 +
1245 + if use doc ; then
1246 + dodoc UserManual.pdf
1247 + fi
1248 +
1249 + newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
1250 +}
1251 +
1252 +pkg_preinst() {
1253 + xdg_pkg_preinst
1254 +}
1255 +
1256 +pkg_postinst() {
1257 + xdg_pkg_postinst
1258 +
1259 + if use udev ; then
1260 + udevadm control --reload-rules \
1261 + && udevadm trigger --subsystem-match=usb
1262 + fi
1263 +
1264 + tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
1265 +
1266 + if ! use headless && use qt5 ; then
1267 + elog "To launch VirtualBox just type: \"virtualbox\"."
1268 + fi
1269 + elog "You must be in the vboxusers group to use VirtualBox."
1270 + elog ""
1271 + elog "The latest user manual is available for download at:"
1272 + elog "http://download.virtualbox.org/virtualbox/${PV}/UserManual.pdf"
1273 + elog ""
1274 + elog "For advanced networking setups you should emerge:"
1275 + elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
1276 + elog ""
1277 + elog "Starting with version 4.0.0, ${PN} has USB-1 support."
1278 + elog "For USB-2 support, PXE-boot ability and VRDP support please emerge"
1279 + elog " app-emulation/virtualbox-extpack-oracle"
1280 + elog "package."
1281 + elog "Starting with version 5.0.0, ${PN} no longer has the \"additions\" and"
1282 + elog "the \"extension\" USE flag. For installation of the guest additions ISO"
1283 + elog "image, please emerge"
1284 + elog " app-emulation/virtualbox-additions"
1285 + elog "and for the USB2, USB3, VRDP and PXE boot ROM modules, please emerge"
1286 + elog " app-emulation/virtualbox-extpack-oracle"
1287 + if ! use udev ; then
1288 + elog ""
1289 + elog "WARNING!"
1290 + elog "Without USE=udev, USB devices will likely not work in ${PN}."
1291 + elif [[ -e "${ROOT}/etc/udev/rules.d/10-virtualbox.rules" ]] ; then
1292 + elog ""
1293 + elog "Please remove \"${ROOT}/etc/udev/rules.d/10-virtualbox.rules\""
1294 + elog "or else USB in ${PN} won't work."
1295 + fi
1296 +}
1297 +
1298 +pkg_postrm() {
1299 + xdg_pkg_postrm
1300 +}