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/, app-emulation/virtualbox-guest-additions/, ...
Date: Wed, 21 Apr 2021 09:28:05
Message-Id: 1618997270.f2633d2b33360019952a4af906aaded07c40f51c.polynomial-c@gentoo
1 commit: f2633d2b33360019952a4af906aaded07c40f51c
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Wed Apr 21 09:23:23 2021 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Wed Apr 21 09:27:50 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f2633d2b
7
8 app-emulation/virtualbox*: Bump to version 6.1.20
9
10 Closes: https://bugs.gentoo.org/770859
11 Closes: https://bugs.gentoo.org/772170
12 Closes: https://bugs.gentoo.org/778062
13 Closes: https://bugs.gentoo.org/780906
14 Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
15
16 app-emulation/virtualbox-additions/Manifest | 1 +
17 .../virtualbox-additions-6.1.20.ebuild | 34 ++
18 app-emulation/virtualbox-extpack-oracle/Manifest | 1 +
19 .../virtualbox-extpack-oracle-6.1.20.143896.ebuild | 43 ++
20 app-emulation/virtualbox-guest-additions/Manifest | 1 +
21 .../virtualbox-guest-additions-6.1.20.ebuild | 221 +++++++++
22 app-emulation/virtualbox-modules/Manifest | 1 +
23 .../virtualbox-modules-6.1.20.ebuild | 55 +++
24 app-emulation/virtualbox/Manifest | 1 +
25 app-emulation/virtualbox/virtualbox-6.1.20.ebuild | 503 +++++++++++++++++++++
26 10 files changed, 861 insertions(+)
27
28 diff --git a/app-emulation/virtualbox-additions/Manifest b/app-emulation/virtualbox-additions/Manifest
29 index 96239156354..41ad93779b5 100644
30 --- a/app-emulation/virtualbox-additions/Manifest
31 +++ b/app-emulation/virtualbox-additions/Manifest
32 @@ -1,2 +1,3 @@
33 DIST VBoxGuestAdditions_6.1.16.iso 60987392 BLAKE2B d4452f43c72ab8c49633f717f7a49257e14a8c6c7b60c6d61ee65ae5e4bcce00c30e19ba78d6f28fb85dfbc95ca6139aec2c7069e5afecae145dffc6ff38793a SHA512 e7606fba6e7490318b7dbadff52578040e4370bbe81fa67e6653e798176eb929ed37e363792647ab3c6626ee9e32af40f63167521997af7b446c25173ff60280
34 DIST VBoxGuestAdditions_6.1.18.iso 61157376 BLAKE2B e022cfbc70fa45889c1db7592f30814faf88d7614c30ebd3fccd0127732d7fec51423904a160797ac199315dcbe4791f025e2dc4754141bfef0862b11510626c SHA512 07be8be75feb2d7d9bfc984ce34b955339d391580192817c2eb216b7577576a003dde310cc09f18c6b6bcf2e30ad548e1ee8bde0af420e4d1d43a3486861cf19
35 +DIST VBoxGuestAdditions_6.1.20.iso 61018112 BLAKE2B feb6a292b05e861a90fdc5db80bc15e9df593a365a866a31ab7afce704511463012c18d76dc928dc5ecd0d2a23bc518c37ad9cdc8b4b72397af3ddd4b3eb97d8 SHA512 122bd5d31ab5cac2fe0582d1d541b5e9d0e8e544e1b3c5afb2b2e2c8b26fbfa964d15053ccc256575753d31206bffc09380dabc79d93946b0e56b743d82e40fe
36
37 diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-6.1.20.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-6.1.20.ebuild
38 new file mode 100644
39 index 00000000000..b6488481acd
40 --- /dev/null
41 +++ b/app-emulation/virtualbox-additions/virtualbox-additions-6.1.20.ebuild
42 @@ -0,0 +1,34 @@
43 +# Copyright 1999-2021 Gentoo Authors
44 +# Distributed under the terms of the GNU General Public License v2
45 +
46 +EAPI=7
47 +
48 +MY_PN=VBoxGuestAdditions
49 +MY_PV="${PV/beta/BETA}"
50 +MY_PV="${MY_PV/rc/RC}"
51 +MY_P=${MY_PN}_${MY_PV}
52 +
53 +DESCRIPTION="CD image containing guest additions for VirtualBox"
54 +HOMEPAGE="https://www.virtualbox.org/"
55 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
56 +
57 +LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
58 +SLOT="0/$(ver_cut 1-2)"
59 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
60 +KEYWORDS="~amd64"
61 +IUSE=""
62 +RESTRICT="mirror"
63 +
64 +RDEPEND="!app-emulation/virtualbox-bin
65 + !=app-emulation/virtualbox-9999"
66 +
67 +S="${WORKDIR}"
68 +
69 +src_unpack() {
70 + return 0
71 +}
72 +
73 +src_install() {
74 + insinto /usr/share/${PN/-additions}
75 + newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
76 +}
77
78 diff --git a/app-emulation/virtualbox-extpack-oracle/Manifest b/app-emulation/virtualbox-extpack-oracle/Manifest
79 index 9e4725abc1c..df7d9b228fe 100644
80 --- a/app-emulation/virtualbox-extpack-oracle/Manifest
81 +++ b/app-emulation/virtualbox-extpack-oracle/Manifest
82 @@ -1,2 +1,3 @@
83 DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.16-140961.tar.gz 11145670 BLAKE2B 86e620ebaea9803b9bf633990a39d9e2828fbe70cdc98cbb6ba98accc374e0ea2300a7135cae0f0ec8d13184ccc8e0ff075ca1f81132ed97206f14c20adeb3bc SHA512 89b9c709da1c4b8268c4c1849e074f4d8dc76a36663b401c9ea63f02422bec50e2b77056289144bb161b1dd226b78687379d6ab86281112a71561c1777f525fb
84 DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.18-142142.tar.gz 11157510 BLAKE2B d9ee20abac79ed5de03c39d1e6af3a5f18c5416149e9e64ebe9dfc4a937bd72b6590a2daaccc820e3ee6c6efcfd0c1c8e29bf3844cbbb929f13052415e16f2bb SHA512 3686b1c5dbdc5b28c172b4885c30ca9a444bc10dc7984df14a17e1dcc571456b06e80ad38e1409de8692c483c56f397162a53bd3dc6956d9ca91875fda0bda4e
85 +DIST Oracle_VM_VirtualBox_Extension_Pack-6.1.20-143896.tar.gz 11132930 BLAKE2B a26e05d9869a52187b379b24ed556c6296772d1360b6f7d61afe17c2818351b5ee2256398e0d53a16d2b6014540f343f7f13539c3d5529f079ac363b48ea0d6e SHA512 85cd8327860c253ce2f871dd1138d18d97b8706f64a3dafaaf340a43d8f44f7ee696a1f845761e7c8d6dcf11c7afd1618798194482b6e09cbe7e2657d980116a
86
87 diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.1.20.143896.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.1.20.143896.ebuild
88 new file mode 100644
89 index 00000000000..5e6035fc800
90 --- /dev/null
91 +++ b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.1.20.143896.ebuild
92 @@ -0,0 +1,43 @@
93 +# Copyright 1999-2021 Gentoo Authors
94 +# Distributed under the terms of the GNU General Public License v2
95 +
96 +EAPI=7
97 +
98 +inherit multilib
99 +
100 +MAIN_PV="$(ver_cut 1-3)"
101 +if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
102 + MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
103 + DEP_PV="${MY_PV}"
104 + MY_PV="${MY_PV/beta/BETA}"
105 + MY_PV="${MY_PV/rc/RC}"
106 +else
107 + MY_PV="${MAIN_PV}"
108 + DEP_PV="${MAIN_PV}"
109 +fi
110 +VBOX_BUILD_ID="$(ver_cut 4)"
111 +MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
112 +MY_P="${MY_PN}-${MY_PV}-${VBOX_BUILD_ID}"
113 +
114 +DESCRIPTION="PUEL extensions for VirtualBox"
115 +HOMEPAGE="https://www.virtualbox.org/"
116 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
117 +
118 +LICENSE="PUEL"
119 +SLOT="0/$(ver_cut 1-2)"
120 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
121 +KEYWORDS="~amd64"
122 +IUSE=""
123 +RESTRICT="bindist mirror strip"
124 +
125 +RDEPEND="=app-emulation/virtualbox-${DEP_PV}*"
126 +
127 +S="${WORKDIR}"
128 +
129 +QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
130 +
131 +src_install() {
132 + insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
133 + doins -r linux.${ARCH}
134 + doins ExtPack* PXE-Intel.rom
135 +}
136
137 diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest
138 index 7e4f05e011f..687fce73017 100644
139 --- a/app-emulation/virtualbox-guest-additions/Manifest
140 +++ b/app-emulation/virtualbox-guest-additions/Manifest
141 @@ -1,3 +1,4 @@
142 DIST VirtualBox-6.1.16.tar.bz2 165470821 BLAKE2B 13376322d0ce2ea3ed826c61816ff19c8ce1f022f6cb1f1b0c291d72354cbe574a01589a6dcc39de10080ba32d5961ca980e75fe11c7401736bf8f7e5443d166 SHA512 4373eb35934f894e419e1441f6368e646e4a84b963a0ecf1e5c71bbf0231de0b0e52f4c4377b8cd2d956bc7a11346a9da2285988bf1e4c743971c413c6529421
143 DIST VirtualBox-6.1.18.tar.bz2 165507486 BLAKE2B 3cf18f30671426f533838eb0579928b08ce022b832d509e70274978efce2e3e0e14dc8fbf258ef9a1ce8a3d666081863aa6971340e04600434f58136fe5c221a SHA512 41cb4bd42429b09836c59ef9867dd3d35d0d5512ff6e515a7f8688ed444c079ce353a84f0d45b607ccf08424782d5de09b264f51b2c41a9ec34eb834458c293c
144 +DIST VirtualBox-6.1.20.tar.bz2 165569564 BLAKE2B cf8c110e78e7d7bef3e3243a8966f4d816dacc8dad6cc44737023a13f1b89dfb50661f6dabc742f328e5c03556ec82e7a22f5c1b97cfef774652ec901e733e5d SHA512 b5af4e04e1a52c85b20226a274fac93712b79d426c0268cce3f2a337616a03161a55522ecddd13844bfc24a6808ba3d651366e74ce657cc6f8fd64c34ae745a4
145 DIST virtualbox-6.1.12-patches-01.tar.xz 2528 BLAKE2B a5d7cde0daea41bee2e40e46569c725769927a31865d99d13b8b13c4903e59b4097f85da15dc592b9c7e8baf8ff805397af827620f107ba09a468b4d1198ecab SHA512 f71d10a9fbce99c3f631ef30bcfa9d0e017e702ac509541b039e08ccbcd024beb93fde09c43d90af5d9d28f6842a7947f20e7950d3897da3e6d57859657e1123
146
147 diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.20.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.20.ebuild
148 new file mode 100644
149 index 00000000000..d767c7658dd
150 --- /dev/null
151 +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.1.20.ebuild
152 @@ -0,0 +1,221 @@
153 +# Copyright 1999-2021 Gentoo Authors
154 +# Distributed under the terms of the GNU General Public License v2
155 +
156 +EAPI=7
157 +
158 +inherit linux-mod systemd toolchain-funcs
159 +
160 +MY_PN="VirtualBox"
161 +MY_PV="${PV/beta/BETA}"
162 +MY_PV="${MY_PV/rc/RC}"
163 +MY_P="${MY_PN}-${MY_PV}"
164 +[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
165 +
166 +DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
167 +HOMEPAGE="https://www.virtualbox.org/"
168 +SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
169 + https://dev.gentoo.org/~polynomial-c/virtualbox/patchsets/virtualbox-6.1.12-patches-01.tar.xz"
170 +
171 +LICENSE="GPL-2"
172 +SLOT="0/$(ver_cut 1-2)"
173 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
174 +KEYWORDS="~amd64 ~x86"
175 +IUSE="X"
176 +
177 +# automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
178 +RDEPEND="
179 + acct-group/vboxguest
180 + acct-group/vboxsf
181 + acct-user/vboxguest
182 + X? ( x11-apps/xrandr
183 + x11-apps/xrefresh
184 + x11-libs/libXmu
185 + x11-libs/libX11
186 + x11-libs/libXt
187 + x11-libs/libXext
188 + x11-libs/libXau
189 + x11-libs/libXdmcp
190 + x11-libs/libSM
191 + x11-libs/libICE )
192 + sys-apps/dbus
193 +"
194 +DEPEND="
195 + ${RDEPEND}
196 + >=dev-util/kbuild-0.1.9998.3127
197 + >=dev-lang/yasm-0.6.2
198 + sys-devel/bin86
199 + sys-libs/pam
200 + sys-power/iasl
201 + x11-base/xorg-proto
202 +"
203 +PDEPEND="
204 + X? ( x11-drivers/xf86-video-vboxvideo )
205 +"
206 +BUILD_TARGETS="all"
207 +BUILD_TARGET_ARCH="${ARCH}"
208 +
209 +S="${WORKDIR}/${MY_PN}-${DIR_PV:-${PV}}"
210 +VBOX_MOD_SRC_DIR="${S}/out/linux.${ARCH}/release/bin/additions/src"
211 +
212 +pkg_setup() {
213 + export DISTCC_DISABLE=1 #674256
214 + MODULE_NAMES="vboxguest(misc:${VBOX_MOD_SRC_DIR}/vboxguest:${VBOX_MOD_SRC_DIR}/vboxguest)
215 + vboxsf(misc:${VBOX_MOD_SRC_DIR}/vboxsf:${VBOX_MOD_SRC_DIR}/vboxsf)"
216 + use X && MODULE_NAMES+=" vboxvideo(misc:${VBOX_MOD_SRC_DIR}/vboxvideo::${VBOX_MOD_SRC_DIR}/vboxvideo)"
217 +
218 + linux-mod_pkg_setup
219 + BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR} KBUILD_EXTRA_SYMBOLS=${S}/Module.symvers"
220 +}
221 +
222 +src_prepare() {
223 + # Remove shipped binaries (kBuild,yasm), see bug #232775
224 + rm -r kBuild/bin tools || die
225 +
226 + # Provide kernel sources
227 + pushd src/VBox/Additions &>/dev/null || die
228 + ebegin "Extracting guest kernel module sources"
229 + kmk GuestDrivers-src vboxguest-src vboxsf-src vboxvideo-src &>/dev/null || die
230 + eend
231 + popd &>/dev/null || die
232 +
233 + # PaX fixes (see bug #298988)
234 + pushd "${VBOX_MOD_SRC_DIR}" &>/dev/null || die
235 + eapply "${FILESDIR}"/vboxguest-6.0.6-log-use-c99.patch
236 + popd &>/dev/null || die
237 +
238 + # Disable things unused or splitted into separate ebuilds
239 + cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
240 + use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
241 +
242 + # Remove pointless GCC version check
243 + sed -e '/^check_gcc$/d' -i configure || die
244 +
245 + eapply "${WORKDIR}/patches"
246 +
247 + eapply_user
248 +}
249 +
250 +src_configure() {
251 + # build the user-space tools, warnings are harmless
252 + local cmd=(
253 + ./configure
254 + --nofatal
255 + --disable-xpcom
256 + --disable-sdl-ttf
257 + --disable-pulse
258 + --disable-alsa
259 + --with-gcc="$(tc-getCC)"
260 + --with-g++="$(tc-getCXX)"
261 + --target-arch=${ARCH}
262 + --with-linux="${KV_OUT_DIR}"
263 + --build-headless
264 + )
265 + echo "${cmd[@]}"
266 + "${cmd[@]}" || die "configure failed"
267 + source ./env.sh
268 + export VBOX_GCC_OPT="${CFLAGS} ${CPPFLAGS}"
269 +}
270 +
271 +src_compile() {
272 + MAKE="kmk" emake \
273 + VBOX_BUILD_PUBLISHER=_Gentoo \
274 + TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
275 + TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
276 + TOOL_YASM_AS=yasm \
277 + VBOX_ONLY_ADDITIONS=1 \
278 + KBUILD_VERBOSE=2
279 +
280 + # Now creating the kernel modules. We must do this _after_
281 + # we compiled the user-space tools as we need two of the
282 + # automatically generated header files. (>=3.2.0)
283 + linux-mod_src_compile
284 +}
285 +
286 +src_install() {
287 + linux-mod_src_install
288 +
289 + cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
290 +
291 + insinto /sbin
292 + newins mount.vboxsf mount.vboxsf
293 + fperms 4755 /sbin/mount.vboxsf
294 +
295 + newinitd "${FILESDIR}"/${PN}-8.initd-r1 ${PN}
296 +
297 + insinto /usr/sbin/
298 + newins VBoxService vboxguest-service
299 + fperms 0755 /usr/sbin/vboxguest-service
300 +
301 + insinto /usr/bin
302 + doins VBoxControl
303 + fperms 0755 /usr/bin/VBoxControl
304 +
305 + # VBoxClient user service and xrandr wrapper
306 + if use X ; then
307 + doins VBoxClient
308 + fperms 0755 /usr/bin/VBoxClient
309 +
310 + pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
311 + || die
312 + newins 98vboxadd-xclient VBoxClient-all
313 + fperms 0755 /usr/bin/VBoxClient-all
314 + popd &>/dev/null || die
315 + fi
316 +
317 + # udev rule for vboxdrv
318 + local udev_rules_dir="/lib/udev/rules.d"
319 + dodir ${udev_rules_dir}
320 + echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
321 + >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
322 + || die
323 + echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
324 + >> "${ED}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
325 + || die
326 +
327 + # VBoxClient autostart file
328 + insinto /etc/xdg/autostart
329 + doins "${FILESDIR}"/vboxclient.desktop
330 +
331 + # sample xorg.conf
332 + dodoc "${FILESDIR}"/xorg.conf.vbox
333 + docompress -x "${ED}"/usr/share/doc/${PF}/xorg.conf.vbox
334 +
335 + systemd_dounit "${FILESDIR}/${PN}.service"
336 +}
337 +
338 +pkg_postinst() {
339 + linux-mod_pkg_postinst
340 + if ! use X ; then
341 + elog "use flag X is off, enable it to install the"
342 + elog "X Window System video driver."
343 + fi
344 + elog ""
345 + elog "Please add users to the \"vboxguest\" group so they can"
346 + elog "benefit from seamless mode, auto-resize and clipboard."
347 + elog ""
348 + elog "The vboxsf group has been added to make automount services work."
349 + elog "These services are part of the shared folders support."
350 + elog ""
351 + elog "Please add:"
352 + elog "/etc/init.d/${PN}"
353 + elog "to the default runlevel in order to start"
354 + elog "needed services."
355 + elog "To use the VirtualBox X driver, use the following"
356 + elog "file as your /etc/X11/xorg.conf:"
357 + elog " /usr/share/doc/${PF}/xorg.conf.vbox"
358 + elog ""
359 + elog "Also make sure you use the Mesa library for OpenGL:"
360 + elog " eselect opengl set xorg-x11"
361 + elog ""
362 + elog "An autostart .desktop file has been installed to start"
363 + elog "VBoxClient in desktop sessions."
364 + elog ""
365 + elog "You can mount shared folders with:"
366 + elog " mount -t vboxsf <shared_folder_name> <mount_point>"
367 + elog ""
368 + elog "Warning:"
369 + elog "this ebuild is only needed if you are running gentoo"
370 + elog "inside a VirtualBox Virtual Machine, you don't need"
371 + elog "it to run VirtualBox itself."
372 + elog ""
373 +}
374
375 diff --git a/app-emulation/virtualbox-modules/Manifest b/app-emulation/virtualbox-modules/Manifest
376 index 730ec003094..8083d5fe90f 100644
377 --- a/app-emulation/virtualbox-modules/Manifest
378 +++ b/app-emulation/virtualbox-modules/Manifest
379 @@ -1,2 +1,3 @@
380 DIST vbox-kernel-module-src-6.1.16.tar.xz 671736 BLAKE2B 8b2153874ee7a63f88679a5372215e89def49622caa7679a5c2410423eaf23ced18ece79d638fc96db40fac88857db7568dd72dd8e05371b14add3553d61d3a7 SHA512 c51dfad5f9578ad43e2fbdd35a70659640030108006f89d362bc25dead99eb3b39a78d403633b3813f62f5b510eff22d826a2750b9c88f5fcb1cde6531295bff
381 DIST vbox-kernel-module-src-6.1.18.tar.xz 672004 BLAKE2B 7199ba2a5020e5ab51d82735df16aee78ece74db232733b932c380f90dffd589a72613120bbd5c580381ab6f6308abb8d12f69855b9c0a8345bfb8587d022019 SHA512 49b54898b2701774fdeec0cd99dd51a1dd71ffd9be38e125fde73f0c64a697138d13bddbb0ed0e9582d354fa0394608084effb68bd35b266c87f6e3b44c6f342
382 +DIST vbox-kernel-module-src-6.1.20.tar.xz 672188 BLAKE2B 0b2ef1e02ce6f55211703946dc53df0fe949a94bac2caf050d31a78e674c2934d5cfaf788da2246000d1dc99218a572cb02272a1a92f4df913fcf7635b65a98b SHA512 4fdc16258ec03c720c81b62c680addcbde8257a58a94b3bca8eefd378c126833d84f7f4fa7bb76fcd7c761983f8626d121b2d31d761f608ca7cce6a689ec0469
383
384 diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-6.1.20.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-6.1.20.ebuild
385 new file mode 100644
386 index 00000000000..e179b43d537
387 --- /dev/null
388 +++ b/app-emulation/virtualbox-modules/virtualbox-modules-6.1.20.ebuild
389 @@ -0,0 +1,55 @@
390 +# Copyright 1999-2021 Gentoo Authors
391 +# Distributed under the terms of the GNU General Public License v2
392 +
393 +# XXX: the tarball here is just the kernel modules split out of the binary
394 +# package that comes from virtualbox-bin
395 +
396 +EAPI=7
397 +
398 +inherit linux-mod toolchain-funcs
399 +
400 +MY_P="vbox-kernel-module-src-${PV}"
401 +DESCRIPTION="Kernel Modules for Virtualbox"
402 +HOMEPAGE="https://www.virtualbox.org/"
403 +SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
404 +
405 +LICENSE="GPL-2"
406 +SLOT="0/$(ver_cut 1-2)"
407 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
408 +KEYWORDS="~amd64"
409 +IUSE="pax_kernel"
410 +
411 +RDEPEND="!=app-emulation/virtualbox-9999"
412 +
413 +S="${WORKDIR}"
414 +
415 +BUILD_TARGETS="all"
416 +MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S})"
417 +MODULESD_VBOXDRV_ENABLED="yes"
418 +MODULESD_VBOXNETADP_ENABLED="no"
419 +MODULESD_VBOXNETFLT_ENABLED="no"
420 +
421 +pkg_setup() {
422 + linux-mod_pkg_setup
423 + BUILD_PARAMS="CC=$(tc-getBUILD_CC) KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
424 +}
425 +
426 +src_prepare() {
427 + if use pax_kernel && kernel_is -ge 3 0 0 ; then
428 + eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
429 + fi
430 +
431 + default
432 +}
433 +
434 +src_install() {
435 + linux-mod_src_install
436 + insinto /usr/lib/modules-load.d/
437 + newins "${FILESDIR}"/virtualbox.conf-r1 virtualbox.conf
438 +}
439 +
440 +pkg_postinst() {
441 + # Remove vboxpci.ko from current running kernel
442 + find /lib/modules/${KV_FULL}/misc -type f -name "vboxpci.ko" -delete
443 + linux-mod_pkg_postinst
444 +}
445
446 diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
447 index 7e4f05e011f..687fce73017 100644
448 --- a/app-emulation/virtualbox/Manifest
449 +++ b/app-emulation/virtualbox/Manifest
450 @@ -1,3 +1,4 @@
451 DIST VirtualBox-6.1.16.tar.bz2 165470821 BLAKE2B 13376322d0ce2ea3ed826c61816ff19c8ce1f022f6cb1f1b0c291d72354cbe574a01589a6dcc39de10080ba32d5961ca980e75fe11c7401736bf8f7e5443d166 SHA512 4373eb35934f894e419e1441f6368e646e4a84b963a0ecf1e5c71bbf0231de0b0e52f4c4377b8cd2d956bc7a11346a9da2285988bf1e4c743971c413c6529421
452 DIST VirtualBox-6.1.18.tar.bz2 165507486 BLAKE2B 3cf18f30671426f533838eb0579928b08ce022b832d509e70274978efce2e3e0e14dc8fbf258ef9a1ce8a3d666081863aa6971340e04600434f58136fe5c221a SHA512 41cb4bd42429b09836c59ef9867dd3d35d0d5512ff6e515a7f8688ed444c079ce353a84f0d45b607ccf08424782d5de09b264f51b2c41a9ec34eb834458c293c
453 +DIST VirtualBox-6.1.20.tar.bz2 165569564 BLAKE2B cf8c110e78e7d7bef3e3243a8966f4d816dacc8dad6cc44737023a13f1b89dfb50661f6dabc742f328e5c03556ec82e7a22f5c1b97cfef774652ec901e733e5d SHA512 b5af4e04e1a52c85b20226a274fac93712b79d426c0268cce3f2a337616a03161a55522ecddd13844bfc24a6808ba3d651366e74ce657cc6f8fd64c34ae745a4
454 DIST virtualbox-6.1.12-patches-01.tar.xz 2528 BLAKE2B a5d7cde0daea41bee2e40e46569c725769927a31865d99d13b8b13c4903e59b4097f85da15dc592b9c7e8baf8ff805397af827620f107ba09a468b4d1198ecab SHA512 f71d10a9fbce99c3f631ef30bcfa9d0e017e702ac509541b039e08ccbcd024beb93fde09c43d90af5d9d28f6842a7947f20e7950d3897da3e6d57859657e1123
455
456 diff --git a/app-emulation/virtualbox/virtualbox-6.1.20.ebuild b/app-emulation/virtualbox/virtualbox-6.1.20.ebuild
457 new file mode 100644
458 index 00000000000..53cbfdb3f6e
459 --- /dev/null
460 +++ b/app-emulation/virtualbox/virtualbox-6.1.20.ebuild
461 @@ -0,0 +1,503 @@
462 +# Copyright 1999-2021 Gentoo Authors
463 +# Distributed under the terms of the GNU General Public License v2
464 +
465 +EAPI=7
466 +
467 +PYTHON_COMPAT=( python3_{7..9} )
468 +inherit desktop flag-o-matic java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg
469 +
470 +MY_PN="VirtualBox"
471 +MY_PV="${PV/beta/BETA}"
472 +MY_PV="${MY_PV/rc/RC}"
473 +MY_P=${MY_PN}-${MY_PV}
474 +[[ "${PV}" == *a ]] && DIR_PV="$(ver_cut 1-3)"
475 +
476 +DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
477 +HOMEPAGE="https://www.virtualbox.org/"
478 +SRC_URI="https://download.virtualbox.org/virtualbox/${DIR_PV:-${MY_PV}}/${MY_P}.tar.bz2
479 + https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.1.12-patches-01.tar.xz"
480 +
481 +LICENSE="GPL-2 dtrace? ( CDDL )"
482 +SLOT="0/$(ver_cut 1-2)"
483 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
484 +KEYWORDS="~amd64"
485 +IUSE="alsa debug doc dtrace headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
486 +
487 +CDEPEND="
488 + ${PYTHON_DEPS}
489 + !app-emulation/virtualbox-bin
490 + acct-group/vboxusers
491 + ~app-emulation/virtualbox-modules-${DIR_PV:-${PV}}
492 + dev-libs/libIDL
493 + >=dev-libs/libxslt-1.1.19
494 + net-misc/curl
495 + dev-libs/libxml2
496 + media-libs/libpng:0=
497 + media-libs/libvpx:0=
498 + sys-libs/zlib:=
499 + !headless? (
500 + media-libs/libsdl:0[X,video]
501 + x11-libs/libX11
502 + x11-libs/libxcb:=
503 + x11-libs/libXcursor
504 + x11-libs/libXext
505 + x11-libs/libXmu
506 + x11-libs/libXt
507 + opengl? ( media-libs/libglvnd[X] )
508 + qt5? (
509 + dev-qt/qtcore:5
510 + dev-qt/qtgui:5
511 + dev-qt/qtprintsupport:5
512 + dev-qt/qtwidgets:5
513 + dev-qt/qtx11extras:5
514 + opengl? ( dev-qt/qtopengl:5 )
515 + x11-libs/libXinerama
516 + )
517 + )
518 + libressl? ( dev-libs/libressl:= )
519 + !libressl? ( dev-libs/openssl:0= )
520 + lvm? ( sys-fs/lvm2 )
521 + opus? ( media-libs/opus )
522 + udev? ( >=virtual/udev-171 )
523 + vnc? ( >=net-libs/libvncserver-0.9.9 )
524 +"
525 +DEPEND="
526 + ${CDEPEND}
527 + alsa? ( >=media-libs/alsa-lib-1.0.13 )
528 + !headless? (
529 + x11-libs/libXinerama
530 + opengl? ( virtual/opengl )
531 + )
532 + pam? ( sys-libs/pam )
533 + pax_kernel? ( sys-apps/elfix )
534 + pulseaudio? ( media-sound/pulseaudio )
535 + qt5? ( dev-qt/linguist-tools:5 )
536 + vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
537 +"
538 +BDEPEND="
539 + ${PYTHON_DEPS}
540 + >=dev-util/kbuild-0.1.9998.3127
541 + >=dev-lang/yasm-0.6.2
542 + sys-devel/bin86
543 + sys-libs/libcap
544 + sys-power/iasl
545 + virtual/pkgconfig
546 + doc? (
547 + app-text/docbook-sgml-dtd:4.4
548 + dev-texlive/texlive-basic
549 + dev-texlive/texlive-latex
550 + dev-texlive/texlive-latexrecommended
551 + dev-texlive/texlive-latexextra
552 + dev-texlive/texlive-fontsrecommended
553 + dev-texlive/texlive-fontsextra
554 + )
555 + java? ( >=virtual/jdk-1.6 )
556 +"
557 +RDEPEND="
558 + ${CDEPEND}
559 + java? ( >=virtual/jre-1.6 )
560 +"
561 +
562 +QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
563 + usr/lib/virtualbox/VBoxSDL.so
564 + usr/lib/virtualbox/VBoxSharedFolders.so
565 + usr/lib/virtualbox/VBoxDD2.so
566 + usr/lib/virtualbox/VBoxOGLrenderspu.so
567 + usr/lib/virtualbox/VBoxPython.so
568 + usr/lib/virtualbox/VBoxDD.so
569 + usr/lib/virtualbox/VBoxDDU.so
570 + usr/lib/virtualbox/VBoxREM64.so
571 + usr/lib/virtualbox/VBoxSharedClipboard.so
572 + usr/lib/virtualbox/VBoxHeadless.so
573 + usr/lib/virtualbox/VBoxRT.so
574 + usr/lib/virtualbox/VBoxREM.so
575 + usr/lib/virtualbox/VBoxSettings.so
576 + usr/lib/virtualbox/VBoxKeyboard.so
577 + usr/lib/virtualbox/VBoxSharedCrOpenGL.so
578 + usr/lib/virtualbox/VBoxVMM.so
579 + usr/lib/virtualbox/VirtualBox.so
580 + usr/lib/virtualbox/VBoxOGLhosterrorspu.so
581 + usr/lib/virtualbox/components/VBoxC.so
582 + usr/lib/virtualbox/components/VBoxSVCM.so
583 + usr/lib/virtualbox/components/VBoxDDU.so
584 + usr/lib/virtualbox/components/VBoxRT.so
585 + usr/lib/virtualbox/components/VBoxREM.so
586 + usr/lib/virtualbox/components/VBoxVMM.so
587 + usr/lib/virtualbox/VBoxREM32.so
588 + usr/lib/virtualbox/VBoxPython2_7.so
589 + usr/lib/virtualbox/VBoxXPCOMC.so
590 + usr/lib/virtualbox/VBoxOGLhostcrutil.so
591 + usr/lib/virtualbox/VBoxNetDHCP.so
592 + usr/lib/virtualbox/VBoxNetNAT.so"
593 +
594 +S="${WORKDIR}/${MY_PN}-${DIR_PV:-${MY_PV}}"
595 +
596 +REQUIRED_USE="
597 + java? ( sdk )
598 + python? ( sdk )
599 + vboxwebsrv? ( java )
600 + ${PYTHON_REQUIRED_USE}
601 +"
602 +
603 +pkg_pretend() {
604 + if ! use headless && ! use qt5 ; then
605 + einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
606 + elif use headless && use qt5 ; then
607 + einfo "You selected USE=\"headless qt5\", defaulting to"
608 + einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
609 + fi
610 +
611 + if ! use opengl ; then
612 + einfo "No USE=\"opengl\" selected, this build will lack"
613 + einfo "the OpenGL feature."
614 + fi
615 + if ! use python ; then
616 + einfo "You have disabled the \"python\" USE flag. This will only"
617 + einfo "disable the python bindings being installed."
618 + fi
619 +}
620 +
621 +pkg_setup() {
622 + java-pkg-opt-2_pkg_setup
623 + python-single-r1_pkg_setup
624 +
625 + tc-ld-disable-gold #bug 488176
626 + tc-export CC CXX LD AR RANLIB
627 + export HOST_CC="$(tc-getBUILD_CC)"
628 +}
629 +
630 +src_prepare() {
631 + # Remove shipped binaries (kBuild,yasm), see bug #232775
632 + rm -r kBuild/bin tools || die
633 +
634 + # Replace pointless GCC version check with something less stupid.
635 + # This is needed for the qt5 version check.
636 + sed -e 's@^check_gcc$@cc_maj="$(${CC} -dumpversion | cut -d. -f1)" ; cc_min="$(${CC} -dumpversion | cut -d. -f2)"@' \
637 + -i configure || die
638 +
639 + # Disable things unused or split into separate ebuilds
640 + sed -e "s@MY_LIBDIR@$(get_libdir)@" \
641 + "${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
642 +
643 + # Respect LDFLAGS
644 + sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
645 + -i Config.kmk src/libs/xpcom18a4/Config.kmk || die
646 +
647 + # Do not use hard-coded ld (related to bug #488176)
648 + sed -e '/QUIET)ld /s@ld @$(LD) @' \
649 + -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
650 +
651 + # Use PAM only when pam USE flag is enbaled (bug #376531)
652 + if ! use pam ; then
653 + einfo "Disabling PAM removes the possibility to use the VRDP features."
654 + sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
655 + sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
656 + src/VBox/HostServices/Makefile.kmk || die
657 + fi
658 +
659 + # add correct java path
660 + if use java ; then
661 + sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
662 + -i "${S}"/Config.kmk || die
663 + java-pkg-opt-2_src_prepare
664 + fi
665 +
666 + # Only add nopie patch when we're on hardened
667 + if gcc-specs-pie ; then
668 + eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
669 + fi
670 +
671 + # Only add paxmark patch when we're on pax_kernel
672 + if use pax_kernel ; then
673 + eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
674 + fi
675 +
676 + eapply "${WORKDIR}/patches"
677 +
678 + eapply_user
679 +}
680 +
681 +doecho() {
682 + echo "$@"
683 + "$@" || die
684 +}
685 +
686 +src_configure() {
687 + local myconf=(
688 + --with-gcc="$(tc-getCC)"
689 + --with-g++="$(tc-getCXX)"
690 + --disable-dbus
691 + --disable-kmods
692 + $(usex alsa '' --disable-alsa)
693 + $(usex debug --build-debug '')
694 + $(usex doc '' --disable-docs)
695 + $(usex java '' --disable-java)
696 + $(usex lvm '' --disable-devmapper)
697 + $(usex opus '' --disable-libopus)
698 + $(usex pulseaudio '' --disable-pulse)
699 + $(usex python '' --disable-python)
700 + $(usex vboxwebsrv --enable-webservice '')
701 + $(usex vnc --enable-vnc '')
702 + )
703 + if ! use headless ; then
704 + myconf+=(
705 + $(usex opengl '' --disable-opengl)
706 + $(usex qt5 '' --disable-qt)
707 + )
708 + else
709 + myconf+=(
710 + --build-headless
711 + --disable-opengl
712 + )
713 + fi
714 + if use amd64 && ! has_multilib_profile ; then
715 + myconf+=( --disable-vmmraw )
716 + fi
717 + # not an autoconf script
718 + doecho ./configure ${myconf[@]}
719 +}
720 +
721 +src_compile() {
722 + source ./env.sh || die
723 +
724 + # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
725 + MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
726 + MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
727 + MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
728 + MAKE="kmk" emake \
729 + VBOX_BUILD_PUBLISHER=_Gentoo \
730 + TOOL_GXX3_CC="$(tc-getCC)" TOOL_GXX3_CXX="$(tc-getCXX)" \
731 + TOOL_GXX3_LD="$(tc-getCXX)" VBOX_GCC_OPT="${CXXFLAGS}" \
732 + TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
733 + VBOX_WITH_VBOXIMGMOUNT=1 \
734 + all
735 +}
736 +
737 +src_install() {
738 + cd "${S}"/out/linux.${ARCH}/$(usex debug debug release)/bin || die
739 +
740 + local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
741 +
742 + vbox_inst() {
743 + local binary="${1}"
744 + local perms="${2:-0750}"
745 + local path="${3:-${vbox_inst_path}}"
746 +
747 + [[ -n "${binary}" ]] || die "vbox_inst: No binary given!"
748 + [[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
749 +
750 + insinto ${path}
751 + doins ${binary}
752 + fowners root:vboxusers ${path}/${binary}
753 + fperms ${perms} ${path}/${binary}
754 + }
755 +
756 + # Create configuration files
757 + insinto /etc/vbox
758 + newins "${FILESDIR}/${PN}-4-config" vbox.cfg
759 +
760 + # Set the correct libdir
761 + sed \
762 + -e "s@MY_LIBDIR@$(get_libdir)@" \
763 + -i "${ED}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
764 +
765 + # Install the wrapper script
766 + exeinto ${vbox_inst_path}
767 + newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox"
768 + fowners root:vboxusers ${vbox_inst_path}/VBox
769 + fperms 0750 ${vbox_inst_path}/VBox
770 +
771 + # Install binaries and libraries
772 + insinto ${vbox_inst_path}
773 + doins -r components
774 +
775 + for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} vboximg-mount *so *r0 iPxeBaseBin ; do
776 + vbox_inst ${each}
777 + done
778 +
779 + # These binaries need to be suid root.
780 + for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
781 + vbox_inst ${each} 4750
782 + done
783 +
784 + # Install EFI Firmware files (bug #320757)
785 + for each in VBoxEFI{32,64}.fd ; do
786 + vbox_inst ${each} 0644
787 + done
788 +
789 + # VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
790 + # VBoxXPCOMIPCD (bug #524202)
791 + for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
792 + pax-mark -m "${ED}"${vbox_inst_path}/${each}
793 + done
794 +
795 + # Symlink binaries to the shipped wrapper
796 + for each in vbox{autostart,balloonctrl,bugreport,headless,manage} VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do
797 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
798 + done
799 + dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
800 + dosym ${vbox_inst_path}/vboximg-mount /usr/bin/vboximg-mount
801 +
802 + if use pam ; then
803 + # VRDPAuth only works with this (bug #351949)
804 + dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
805 + fi
806 +
807 + # set an env-variable for 3rd party tools
808 + echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
809 + doenvd "${T}/90virtualbox"
810 +
811 + if ! use headless ; then
812 + vbox_inst rdesktop-vrdp
813 + vbox_inst VBoxSDL 4750
814 + pax-mark -m "${ED}"${vbox_inst_path}/VBoxSDL
815 +
816 + for each in vboxsdl VBoxSDL ; do
817 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
818 + done
819 +
820 + if use qt5 ; then
821 + vbox_inst VirtualBox
822 + vbox_inst VirtualBoxVM 4750
823 + for each in VirtualBox{,VM} ; do
824 + pax-mark -m "${ED}"${vbox_inst_path}/${each}
825 + done
826 +
827 + if use opengl ; then
828 + vbox_inst VBoxTestOGL
829 + pax-mark -m "${ED}"${vbox_inst_path}/VBoxTestOGL
830 + fi
831 +
832 + for each in virtualbox{,vm} VirtualBox{,VM} ; do
833 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
834 + done
835 +
836 + insinto /usr/share/${PN}
837 + doins -r nls
838 + doins -r UnattendedTemplates
839 +
840 + domenu ${PN}.desktop
841 + fi
842 +
843 + pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
844 + for size in 16 32 48 64 128 ; do
845 + newicon -s ${size} ${PN}-${size}px.png ${PN}.png
846 + done
847 + newicon ${PN}-48px.png ${PN}.png
848 + doicon -s scalable ${PN}.svg
849 + popd &>/dev/null || die
850 + pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
851 + for size in 16 24 32 48 64 72 96 128 256 512 ; do
852 + for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
853 + icofile="${PN}-${ico}-${size}px.png"
854 + if [[ -f "${icofile}" ]] ; then
855 + newicon -s ${size} ${icofile} ${PN}-${ico}.png
856 + fi
857 + done
858 + done
859 + popd &>/dev/null || die
860 + fi
861 +
862 + if use lvm ; then
863 + vbox_inst VBoxVolInfo 4750
864 + dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
865 + fi
866 +
867 + if use sdk ; then
868 + insinto ${vbox_inst_path}
869 + doins -r sdk
870 +
871 + if use java ; then
872 + java-pkg_regjar "${ED}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
873 + java-pkg_regso "${ED}/${vbox_inst_path}/libvboxjxpcom.so"
874 + fi
875 + fi
876 +
877 + if use udev ; then
878 + local udevdir="$(get_udevdir)"
879 + insinto ${udevdir}
880 + doins VBoxCreateUSBNode.sh
881 + fowners root:vboxusers ${udevdir}/VBoxCreateUSBNode.sh
882 + fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
883 + insinto ${udevdir}/rules.d
884 + sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
885 + > "${T}"/10-virtualbox.rules || die
886 + doins "${T}"/10-virtualbox.rules
887 + fi
888 +
889 + if use vboxwebsrv ; then
890 + vbox_inst vboxwebsrv
891 + dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
892 + newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
893 + newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
894 + fi
895 +
896 + # Remove dead symlinks (bug #715338)
897 + find "${ED}"/usr/$(get_libdir)/${PN} -xtype l -delete || die
898 +
899 + # Fix version string in extensions or else they don't get accepted
900 + # by the virtualbox host process (see bug #438930)
901 + find ExtensionPacks -type f -name "ExtPack.xml" -print0 \
902 + | xargs --no-run-if-empty --null sed -i '/Version/s@_Gentoo@@' \
903 + || die
904 +
905 + local extensions_dir="${vbox_inst_path}/ExtensionPacks"
906 +
907 + if use vnc ; then
908 + insinto ${extensions_dir}
909 + doins -r ExtensionPacks/VNC
910 + fi
911 +
912 + if use dtrace ; then
913 + insinto ${extensions_dir}
914 + doins -r ExtensionPacks/Oracle_VBoxDTrace_Extension_Pack
915 + fi
916 +
917 + if use doc ; then
918 + dodoc UserManual.pdf
919 + fi
920 +
921 + newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
922 +}
923 +
924 +pkg_postinst() {
925 + xdg_pkg_postinst
926 +
927 + if use udev ; then
928 + udevadm control --reload-rules \
929 + && udevadm trigger --subsystem-match=usb
930 + fi
931 +
932 + tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
933 +
934 + if ! use headless && use qt5 ; then
935 + elog "To launch VirtualBox just type: \"virtualbox\"."
936 + fi
937 + elog "You must be in the vboxusers group to use VirtualBox."
938 + elog ""
939 + elog "The latest user manual is available for download at:"
940 + elog "http://download.virtualbox.org/virtualbox/${DIR_PV:-${PV}}/UserManual.pdf"
941 + elog ""
942 + elog "For advanced networking setups you should emerge:"
943 + elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
944 + elog ""
945 + elog "Starting with version 4.0.0, ${PN} has USB-1 support."
946 + elog "For USB-2 support, PXE-boot ability and VRDP support please emerge"
947 + elog " app-emulation/virtualbox-extpack-oracle"
948 + elog "package."
949 + elog "Starting with version 5.0.0, ${PN} no longer has the \"additions\" and"
950 + elog "the \"extension\" USE flag. For installation of the guest additions ISO"
951 + elog "image, please emerge"
952 + elog " app-emulation/virtualbox-additions"
953 + elog "and for the USB2, USB3, VRDP and PXE boot ROM modules, please emerge"
954 + elog " app-emulation/virtualbox-extpack-oracle"
955 + if ! use udev ; then
956 + elog ""
957 + elog "WARNING!"
958 + elog "Without USE=udev, USB devices will likely not work in ${PN}."
959 + elif [[ -e "${ROOT}/etc/udev/rules.d/10-virtualbox.rules" ]] ; then
960 + elog ""
961 + elog "Please remove \"${ROOT}/etc/udev/rules.d/10-virtualbox.rules\""
962 + elog "or else USB in ${PN} won't work."
963 + fi
964 +}