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