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-additions/, app-emulation/virtualbox-bin/, ...
Date: Mon, 28 Jan 2019 22:26:47
Message-Id: 1548714394.7531aeb325c12539f92e9e36d94de95b21605c34.polynomial-c@gentoo
1 commit: 7531aeb325c12539f92e9e36d94de95b21605c34
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jan 28 22:23:55 2019 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Mon Jan 28 22:26:34 2019 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7531aeb3
7
8 virtualbox packages: Bump to version 5.2.26 and 6.0.4
9
10 Package-Manager: Portage-2.3.59, Repoman-2.3.12
11 Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
12
13 app-emulation/virtualbox-additions/Manifest | 2 +
14 .../virtualbox-additions-5.2.26.ebuild | 33 ++
15 .../virtualbox-additions-6.0.4.ebuild | 34 ++
16 app-emulation/virtualbox-bin/Manifest | 7 +
17 .../virtualbox-bin-5.2.26.128414.ebuild | 287 ++++++++++++
18 .../virtualbox-bin-6.0.4.128413.ebuild | 289 ++++++++++++
19 app-emulation/virtualbox-extpack-oracle/Manifest | 2 +
20 .../virtualbox-extpack-oracle-5.2.26.128414.ebuild | 42 ++
21 .../virtualbox-extpack-oracle-6.0.4.128413.ebuild | 43 ++
22 app-emulation/virtualbox-guest-additions/Manifest | 2 +
23 .../virtualbox-guest-additions-5.2.26.ebuild | 228 ++++++++++
24 .../virtualbox-guest-additions-6.0.4.ebuild | 229 ++++++++++
25 app-emulation/virtualbox-modules/Manifest | 2 +
26 .../virtualbox-modules-5.2.26.ebuild | 51 +++
27 .../virtualbox-modules-6.0.4.ebuild | 52 +++
28 app-emulation/virtualbox/Manifest | 2 +
29 app-emulation/virtualbox/virtualbox-5.2.26.ebuild | 480 ++++++++++++++++++++
30 app-emulation/virtualbox/virtualbox-6.0.4.ebuild | 485 +++++++++++++++++++++
31 18 files changed, 2270 insertions(+)
32
33 diff --git a/app-emulation/virtualbox-additions/Manifest b/app-emulation/virtualbox-additions/Manifest
34 index d8aaa0e6715..3b1485cc62d 100644
35 --- a/app-emulation/virtualbox-additions/Manifest
36 +++ b/app-emulation/virtualbox-additions/Manifest
37 @@ -1,4 +1,6 @@
38 DIST VBoxGuestAdditions_5.2.22.iso 58013696 BLAKE2B 196f0048b685200328bcf753f3df23eac6477ce863885e93a54951795368bf62bdaa497589001ec203d75809b1f74ebbaa80419406d26bc7db43a131f5b9d698 SHA512 b320174b2f2ef796ac2c9c920579be38f0cedaa037d21992863ac355ecf6e99ae2aea56c70fb2034e9e03afac2cd7297f7717b447a6981701755593110164d37
39 DIST VBoxGuestAdditions_5.2.24.iso 58429440 BLAKE2B ee5b2751238da4372c4164c02e96c5bc6a1dbfb6670f7cd8912415680e99118e65c8f4c765c7d5f9dcf521644a011540e289357fe38e715d6264fa84b5d7ef1b SHA512 e05f75f3a5974efba6f64606d255a03ddf104deec3c300a9369c06d603aa3cbf70b73cdfeda2ce1fcd1c36da472bc190da0ed4e908bd6dbcf857104c99a61b05
40 +DIST VBoxGuestAdditions_5.2.26.iso 58433536 BLAKE2B 1d7bae647923a57cdcee38a1609a07cd081d593a0852dcf67b549ed178508e93f7ee4d076ac700ab7e7ec828e660eb09cc8a55a0f2400b1ff0912cc2fafdff7f SHA512 fea91c442d3f05a35435155d3a3890e2c29e2523f1106cc8c7fb6513826263ff450e72b393796e0dff99b3bd85d85d8d55309e81f68ddfd39689df8f54bca1fe
41 DIST VBoxGuestAdditions_6.0.0.iso 79245312 BLAKE2B 413501b62bb6c8a0b1cef8255c631d4bc6c919b3a9c15e0fd780f6196e299f72ede083d51ca8f32bb83ec6d9384f1959c619bc5df67495a23bce503cf45c39e8 SHA512 4064bab634e8ebd75bc80c47ebd9a2596701505e15ebe872e1b599a42588ece307f90febfd474e429cd7e5e4ecf063bc7e37d666c6ae369f8f97b36a0e0ed81d
42 DIST VBoxGuestAdditions_6.0.2.iso 85905408 BLAKE2B c5ce6d2cc3c15032f5d6733df72f938f2e5b0e996d467464e0229cfd8b8a2ba57f4f3878d94f769f0dfda48b14e426815925d883add6934a2c3f72ac1a41d6cb SHA512 53e82fbec7f1e04f473f0add3a0e03e2abfb9e88b57d7501d28310c36ae26af835d52a76104b31a8a4dc69ff31b6826c7c391622cdf3977df7ab7c4181d0e7dd
43 +DIST VBoxGuestAdditions_6.0.4.iso 85917696 BLAKE2B 2fa419ef8524b46afb327bd1f5e53bec6df7fa53d6608bb25e5d986d8be9eaf2e0e7a37523beb56981380e8f4ad41ae48eb5ec23505a382c57fda737ec999caf SHA512 ad9afd9941cac771a156071df3a054225643e39059c84abc0c0c2525d0fa32d5bc5a144b1fef367f92e0216f8f9fc73ef961eeead648421ea30465650516bc88
44
45 diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-5.2.26.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-5.2.26.ebuild
46 new file mode 100644
47 index 00000000000..6faf7e7e8a0
48 --- /dev/null
49 +++ b/app-emulation/virtualbox-additions/virtualbox-additions-5.2.26.ebuild
50 @@ -0,0 +1,33 @@
51 +# Copyright 1999-2019 Gentoo Authors
52 +# Distributed under the terms of the GNU General Public License v2
53 +
54 +EAPI=7
55 +
56 +MY_PN=VBoxGuestAdditions
57 +MY_PV="${PV/beta/BETA}"
58 +MY_PV="${MY_PV/rc/RC}"
59 +MY_P=${MY_PN}_${MY_PV}
60 +
61 +DESCRIPTION="CD image containing guest additions for VirtualBox"
62 +HOMEPAGE="https://www.virtualbox.org/"
63 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
64 +
65 +LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
66 +SLOT="0"
67 +KEYWORDS="~amd64 ~x86"
68 +IUSE=""
69 +RESTRICT="mirror"
70 +
71 +RDEPEND="!app-emulation/virtualbox-bin
72 + !=app-emulation/virtualbox-9999"
73 +
74 +S="${WORKDIR}"
75 +
76 +src_unpack() {
77 + return 0
78 +}
79 +
80 +src_install() {
81 + insinto /usr/share/${PN/-additions}
82 + newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
83 +}
84
85 diff --git a/app-emulation/virtualbox-additions/virtualbox-additions-6.0.4.ebuild b/app-emulation/virtualbox-additions/virtualbox-additions-6.0.4.ebuild
86 new file mode 100644
87 index 00000000000..5124a818a15
88 --- /dev/null
89 +++ b/app-emulation/virtualbox-additions/virtualbox-additions-6.0.4.ebuild
90 @@ -0,0 +1,34 @@
91 +# Copyright 1999-2019 Gentoo Authors
92 +# Distributed under the terms of the GNU General Public License v2
93 +
94 +EAPI=7
95 +
96 +MY_PN=VBoxGuestAdditions
97 +MY_PV="${PV/beta/BETA}"
98 +MY_PV="${MY_PV/rc/RC}"
99 +MY_P=${MY_PN}_${MY_PV}
100 +
101 +DESCRIPTION="CD image containing guest additions for VirtualBox"
102 +HOMEPAGE="https://www.virtualbox.org/"
103 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.iso"
104 +
105 +LICENSE="GPL-2+ LGPL-2.1+ MIT SGI-B-2.0 CDDL"
106 +SLOT="0"
107 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
108 +KEYWORDS="~amd64 ~x86"
109 +IUSE=""
110 +RESTRICT="mirror"
111 +
112 +RDEPEND="!app-emulation/virtualbox-bin
113 + !=app-emulation/virtualbox-9999"
114 +
115 +S="${WORKDIR}"
116 +
117 +src_unpack() {
118 + return 0
119 +}
120 +
121 +src_install() {
122 + insinto /usr/share/${PN/-additions}
123 + newins "${DISTDIR}"/${MY_P}.iso ${MY_PN}.iso
124 +}
125
126 diff --git a/app-emulation/virtualbox-bin/Manifest b/app-emulation/virtualbox-bin/Manifest
127 index 3cb7a5e910d..2ea1d554670 100644
128 --- a/app-emulation/virtualbox-bin/Manifest
129 +++ b/app-emulation/virtualbox-bin/Manifest
130 @@ -1,14 +1,21 @@
131 DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.22-126460.tar.gz 19640932 BLAKE2B 162ab40da6b2cd30d00e020666a1f4fb026e29af2ca9d6c36c294e5fa299b61ab8fd147f24d2b500426c768808db2c7693c30e88519e695d7759f8eedf1c52c5 SHA512 85b8552668b6580bea24f051ad861c82b9ba32177fb7fa37fe2980d8bab32a84325d02bfa9c8f55c2021a4000ef2546d8996ca8b99ca7fc19f8281a92108dfb0
132 DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.24-128163.tar.gz 19683939 BLAKE2B ce05e159172e34e1d520b3783d77db06aa8f91067cc743beb1eeafaf01508e830f5fe9501cb1f3a6d99492e3046ec2dd2fec94ffd39a237ef4679352492aaa1a SHA512 035103e420d773201ad24093910d7175a5d548f19de4a58900e78e2ebfac711851c99375977ba9fd47fced234346437164d226592b7070a867a1d13fd534a3b5
133 +DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.26-128414.tar.gz 19684009 BLAKE2B 81787dcf3b70211fa9c84a40c668100eda0dfd2ce3e1d35c226cb6913ef74027f3444be93069a5e881d8e60905477460a180cb98919050286978edf9c1edcdf3 SHA512 deb4c62d58e2071f4413f0ff769e9ecd756362920b29482a6a3d77566c327b075cb5ecafdc65985305b8b798dc56ca2104a0f8244651fca89c4e15ef879c121e
134 DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.0-127566.tar.gz 23284806 BLAKE2B 4b34e1640ac74be3acc4cddc6140f77a2e5456ec29c6523fc2fe27c5e7c4652dd28f523b85a6cb17aab52e3594e68ee64cbe2c4cb8edd68f7deda05ed8b9e05d SHA512 cd8cd82bf9cea29f50101c8cccd0b8f699dcc4c4e7e720fe80df82154339b787d154a6376adc9d0f4a3015ec1ee2d67d6575ac5197dfda63af3f758294c165b8
135 DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.2-128162.tar.gz 23289693 BLAKE2B 13e1ad30b40676ed2e11cf26957377696a9f30a7a92bda0ca5f69039ffebe4abf3bb0224844609a29ac217b227e4d1906c70cd404d3967a26dc0ace3bf4d2ccd SHA512 29b682bf8130f73b25a82e97053847077d9eb48f0510db7fb0cf2e817e1e6b9a6e7ded54ede7447c56aa7b219d32a2d6ee19cb0efbe5c7e0a984c5e137fada51
136 +DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.4-128413.tar.gz 23290549 BLAKE2B f9ac1a560d5e8b9b73efa21e3623c9f6f0d7769eb4cad7b01d8f68a135a74573659a0a9b092f7ab35beb348ed2722fcf7862aa66e47987b33038f488b88b1129 SHA512 ee54cbdf58de8d37ba84fffd2baec2c9d3915feeab715767515fd6d6ec3032dad2f02509b08cea24754cfce0974a7c1b29c6050bff466af53c1ac6589f4c0215
137 DIST VirtualBox-5.2.22-126460-Linux_amd64.run 88821201 BLAKE2B 1b0433844247ee9531af915dcbb740183fa29fb296f8c78b4165cc3b48300da71f7d329026983da581ffff0d7b8976a2e5e32d5e948861a557ddfa2437813ea0 SHA512 22b20a68884a114818fcdfe9a459a7c3b1b3598526a74cc66407f5bcdc6eb6bcbe022b820477ccdc081e22349777b73fac9d6126585ee3c8fa0d3d24624006f3
138 DIST VirtualBox-5.2.22-126460-Linux_x86.run 87817677 BLAKE2B 5f11e5f92386c9524869082cf1a5af413c69fe5b36b1ace58887076000c7b928267eb7c3be22282885d6871ccdcee981ec79a526c71f281f0e8ada5858194851 SHA512 32d44b6d691e33a1ee1426cb7a3cb3648722709c588d177951b8be802546faadfd612567981bbbfed3d782b18260e6e638e7879813f3b06bb5a8387b052b0227
139 DIST VirtualBox-5.2.24-128163-Linux_amd64.run 89282001 BLAKE2B affd8768878cf25209b7a53dc024ff1798d2c2e007031d40b39c5245df608cc09fdb19c216075b0ec7a4fd63ff580731b1b04838d5d6dc81bd126fed005ea355 SHA512 f22e3c71e5c3f923edc14fbae0191a5d1262426166984e19c784e2b0a332296f949d2a9eeca6972c1f16a0f9573c1f9807c556d4dab2bd500d5b73e22485c7e1
140 DIST VirtualBox-5.2.24-128163-Linux_x86.run 88391118 BLAKE2B ffc44c55f664e4bc2c2e8bf09d95fda3631541b4b4b1dca7735dd5fcbf12da8258065fa13466ce23229126fb84b0193eee7cd794cf09f631ce124c4fd6558f16 SHA512 a7350a8266c6b3522be91158d765ce31b69acbfd67b6056a96361e0cb48926cee115c8f3df4d1965fd7b082d3f487f9f655253620a8357dbfadfbd2320ad6a3b
141 +DIST VirtualBox-5.2.26-128414-Linux_amd64.run 89220562 BLAKE2B d937e3a8f622ed1afc8ab7d2479401c6b41f6b1404197b2d86933d741a209071b1bc98de14ea4f25b2b0f2a22a328393908f85955f8879dbf8b28e2b981e4d04 SHA512 c8d7741408d234e7c05709dd0ed66d30b427b0f39976f232b1fe8a17160d36c4dda7d3adda46a38cbdd6626d34570805f582ac0aae2a975385a1f1d06e97f354
142 +DIST VirtualBox-5.2.26-128414-Linux_x86.run 88339918 BLAKE2B 0fe177a8d9ab4c4cb894151a00f9554713dee27af1fe3036591a0e7865c8869eef17368ab42270d5a9081c849e6550ebef809c3f8f09a9238e2f5a5f0c9e76e5 SHA512 6a809cf29a2cd70bddeca0443955ea10044553ef85744949b604f92a8bca96b9deb1c37f723388d1f27f903c9469e7cb853a0bf7d6928bb18ba61cb19b216fba
143 DIST VirtualBox-6.0.0-127566-Linux_amd64.run 148766154 BLAKE2B 2e23341dc798aabc1fd696422073516b6f2f70b9bee525ef22528b72abf38acf24599442e5c56d52c24af48f5ae6e2e6cdee981293fc644fac965cc34041a101 SHA512 19b11f7cf62288624739547755a7732b7d355ba61040c7e951ecbaf0ce75252075e8168aa41054e31fa36d45998f1ae1136b65d09981475a3052c4da7fd3021b
144 DIST VirtualBox-6.0.2-128162-Linux_amd64.run 155114954 BLAKE2B 0159383d2bd3ed0e454e03db61d7466e06b63222da364ae8c8964ac418c2a5de6b78c320c989bc497e6fc98051434d3e480d1bd16e0f92f8ac2fde8a60af088e SHA512 10b0971b81158f80de918f5ae9e0261eaec23ac7b5b3a8117c7d757a3044559648860b70d5688b58bcda1d0bdd36b1df70d5d0c8c1a65c53e1a65112beba1fff
145 +DIST VirtualBox-6.0.4-128413-Linux_amd64.run 154920406 BLAKE2B 518ef3ee6a5b8d066b9238ea3660cce5898b15471805cdcc508471a8a7b1003d5b4d894a8de5be4e70a67abe77dd05ce7d463603081749836d1e6b58aa43aa04 SHA512 a35cbc5d726acde31939d8729695cb041c8e962af3f4894153e5779af4efa1b260f0f021de9c5a3edc651271e7adfa1818d6b9c1e081155f483cb148555e52b5
146 DIST VirtualBoxSDK-5.2.22-126460.zip 10154660 BLAKE2B e0a0106f695ca7198d4b2ac5c62bb435fe7934858115dcb3aed57b40d82655bd54cbbae63b279132c23762a227c53affe68131a0bf9452c69dcaf2162b1e4ebf SHA512 1d34b8f7f32602b5656fdb6184e6c35cc54d6ecb36bc41d7df3e154f18c27ea5938635969feb69defe86a53897eee87792514967f15810224ee89e8e523d2b29
147 DIST VirtualBoxSDK-5.2.24-128163.zip 10153218 BLAKE2B e0a86462396eaa3fb9aa475ab40ee810874f61d3e9f37050b4aba36e6b5150e3699303b7f9989e32e794b9f67de4340ff008fa67339a3c45678005d126a17c27 SHA512 fbc12076ee968a6066f6ac81ff1555e10710d10d7821be24a4b4371a4f4b0409bed2d209904daa2b3f98a7998357558ca158bd76b87c5449815843312b669627
148 +DIST VirtualBoxSDK-5.2.26-128414.zip 10159276 BLAKE2B 32a9e0a70cc63c8e0daa7080f8e10ac8a514837be98a66b00161cd0c9bf2cc42ef0a11f3a69a742a2f6745b4c8b8fe9e946e18f81cd5ef3ab2f68d5e3c95c568 SHA512 f3d1cc622734ecb0f56fcdf5728fcc747e3b084cb2358d420c55c1acd98d2f24870f0fd18cea430f118f34bca10199526ba195a314d6ce7fb6c4bc8281d89f09
149 DIST VirtualBoxSDK-6.0.0-127566.zip 10749531 BLAKE2B 98a9d1d85a5d835e9a6d1ed121f6650d795a695bf40fb05af235eba6454237a79487f801d6351f3c446b523001271faac8cc09880522f97cae73360c1179edf5 SHA512 1f25b9249c5e1e0a7caee867b1508f517e16afd23055decfe27a513d1199ebc72bfcd391a8e750403ddb80a4087df7cfd928604b827976d7075829c7e3d82e00
150 DIST VirtualBoxSDK-6.0.2-128162.zip 10753904 BLAKE2B 52824830e3d816df57932d8812a959dc3590eeabe8b7ba1dc8927d7eac7bea0c4584e0f2d62b405fdb8d5833fc93792dfcd7c2cfc2714237ecb8dbf26be36f11 SHA512 d7d1d60c7ffc4022de16dccc7786bbc4d481cef26e105932158955cc4350d65a6ac5bffa01a319baee5a64f4ae7d016ba50f82128bef6e11e54e72e82e73c168
151 +DIST VirtualBoxSDK-6.0.4-128413.zip 10755635 BLAKE2B 60333b130adbacc85a84c65ee638effcb6d1a226957c48907df342853b0a9ba4d5632d93858e539fafe2ec28befaa7de584538b46ee83a05789b065a05c3107c SHA512 de2c3e979fe35cda8b433c27f4ce52d5c86e7c0bdfb061a758fce642d4aab908c7c6808c3110ec81d4967977768de95ee8be5cd330d634d3dc9711dd77f17867
152
153 diff --git a/app-emulation/virtualbox-bin/virtualbox-bin-5.2.26.128414.ebuild b/app-emulation/virtualbox-bin/virtualbox-bin-5.2.26.128414.ebuild
154 new file mode 100644
155 index 00000000000..e4f534871c4
156 --- /dev/null
157 +++ b/app-emulation/virtualbox-bin/virtualbox-bin-5.2.26.128414.ebuild
158 @@ -0,0 +1,287 @@
159 +# Copyright 1999-2019 Gentoo Authors
160 +# Distributed under the terms of the GNU General Public License v2
161 +
162 +EAPI=6
163 +
164 +PYTHON_COMPAT=( python2_7 )
165 +
166 +inherit xdg-utils gnome2 pax-utils python-r1 udev unpacker eapi7-ver
167 +
168 +MAIN_PV="$(ver_cut 1-3)"
169 +if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
170 + MY_PV="${MAIN_PV}_$(ver_cut 5)"
171 + MY_PV="${MY_PV/beta/BETA}"
172 + MY_PV="${MY_PV/rc/RC}"
173 +else
174 + MY_PV="${MAIN_PV}"
175 +fi
176 +VBOX_BUILD_ID="$(ver_cut 4)"
177 +VBOX_PV="${MY_PV}-${VBOX_BUILD_ID}"
178 +MY_P="VirtualBox-${VBOX_PV}-Linux"
179 +# needed as sometimes the extpack gets another build ID
180 +EXTP_PV="${VBOX_PV}"
181 +EXTP_PN="Oracle_VM_VirtualBox_Extension_Pack"
182 +EXTP_P="${EXTP_PN}-${EXTP_PV}"
183 +# needed as sometimes the SDK gets another build ID
184 +SDK_PV="${VBOX_PV}"
185 +SDK_P="VirtualBoxSDK-${SDK_PV}"
186 +
187 +DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
188 +HOMEPAGE="https://www.virtualbox.org/"
189 +SRC_URI="amd64? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_amd64.run )
190 + x86? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_x86.run )
191 + https://download.virtualbox.org/virtualbox/${MY_PV}/${EXTP_P}.vbox-extpack -> ${EXTP_P}.tar.gz"
192 +
193 +LICENSE="GPL-2 PUEL"
194 +SLOT="0"
195 +KEYWORDS="~amd64 ~x86"
196 +IUSE="+additions +chm headless python vboxwebsrv rdesktop-vrdp"
197 +RESTRICT="mirror"
198 +
199 +if [[ "${PV}" != *beta* ]] ; then
200 + SRC_URI+="
201 + sdk? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${SDK_P}.zip )"
202 + IUSE+=" sdk"
203 +fi
204 +
205 +DEPEND="app-arch/unzip
206 + ${PYTHON_DEPS}"
207 +
208 +RDEPEND="!!app-emulation/virtualbox
209 + !app-emulation/virtualbox-additions
210 + ~app-emulation/virtualbox-modules-${MAIN_PV}
211 + !headless? (
212 + dev-libs/glib
213 + media-libs/fontconfig
214 + media-libs/freetype
215 + media-libs/libpng
216 + media-libs/libsdl[X]
217 + x11-libs/libXcursor
218 + x11-libs/libXext
219 + x11-libs/libXfixes
220 + x11-libs/libXft
221 + x11-libs/libXi
222 + x11-libs/libXinerama
223 + x11-libs/libXrandr
224 + x11-libs/libXrender
225 + chm? ( dev-libs/expat )
226 + )
227 + dev-libs/libxml2
228 + sys-fs/lvm2
229 + x11-libs/libXau
230 + x11-libs/libX11
231 + x11-libs/libXt
232 + x11-libs/libXmu
233 + x11-libs/libSM
234 + x11-libs/libICE
235 + x11-libs/libXdmcp
236 + ${PYTHON_DEPS}"
237 +
238 +REQUIRED_USE="${PYTHON_REQUIRED_USE}"
239 +S="${WORKDIR}"
240 +
241 +QA_PREBUILT="opt/VirtualBox/*"
242 +
243 +PYTHON_UPDATER_IGNORE="1"
244 +
245 +src_unpack() {
246 + unpack_makeself ${MY_P}_${ARCH}.run
247 + unpack ./VirtualBox.tar.bz2
248 +
249 + mkdir "${S}"/${EXTP_PN} || die
250 + pushd "${S}"/${EXTP_PN} &>/dev/null || die
251 + unpack ${EXTP_P}.tar.gz
252 + popd &>/dev/null || die
253 +
254 + if [[ "${PV}" != *beta* ]] && use sdk ; then
255 + unpack VirtualBoxSDK-${SDK_PV}.zip
256 + fi
257 +}
258 +
259 +src_configure() {
260 + :;
261 +}
262 +
263 +src_compile() {
264 + :;
265 +}
266 +
267 +src_install() {
268 + # create virtualbox configurations files
269 + insinto /etc/vbox
270 + newins "${FILESDIR}/${PN}-config" vbox.cfg
271 +
272 + if ! use headless ; then
273 + newmenu "${FILESDIR}"/${PN}.desktop-2 ${PN}.desktop
274 +
275 + # set up symlinks (bug #572012)
276 + dosym ../../../../opt/VirtualBox/virtualbox.xml /usr/share/mime/packages/virtualbox.xml
277 +
278 + local size ico icofile
279 + for size in 16 24 32 48 64 72 96 128 256 ; do
280 + pushd "${S}"/icons/${size}x${size} &>/dev/null || die
281 + if [[ -f "virtualbox.png" ]] ; then
282 + doicon -s ${size} virtualbox.png
283 + fi
284 + for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
285 + icofile="virtualbox-${ico}.png"
286 + if [[ -f "${icofile}" ]] ; then
287 + doicon -s ${size} ${icofile}
288 + fi
289 + done
290 + popd &>/dev/null || die
291 + done
292 + doicon -s scalable "${S}"/icons/scalable/virtualbox.svg
293 + insinto /usr/share/pixmaps
294 + newins "${S}"/icons/48x48/virtualbox.png ${PN}.png
295 + fi
296 +
297 + pushd "${S}"/${EXTP_PN} &>/dev/null || die
298 + insinto /opt/VirtualBox/ExtensionPacks/${EXTP_PN}
299 + doins -r linux.${ARCH}
300 + doins ExtPack* PXE-Intel.rom
301 + popd &>/dev/null || die
302 + rm -rf "${S}"/${EXTP_PN}
303 +
304 + insinto /opt/VirtualBox
305 + dodir /opt/bin
306 +
307 + doins UserManual.pdf
308 +
309 + if [[ "${PV}" != *beta* ]] && use sdk ; then
310 + doins -r sdk
311 + fi
312 +
313 + if use additions; then
314 + doins -r additions
315 + fi
316 +
317 + if use vboxwebsrv; then
318 + doins vboxwebsrv
319 + fowners root:vboxusers /opt/VirtualBox/vboxwebsrv
320 + fperms 0750 /opt/VirtualBox/vboxwebsrv
321 + dosym ../../opt/VirtualBox/VBox.sh /opt/bin/vboxwebsrv
322 + newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
323 + newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
324 + fi
325 +
326 + if use rdesktop-vrdp; then
327 + doins rdesktop-vrdp
328 + doins -r rdesktop-vrdp-keymaps
329 + fperms 0750 /opt/VirtualBox/rdesktop-vrdp
330 + dosym ../../opt/VirtualBox/rdesktop-vrdp /opt/bin/rdesktop-vrdp
331 + fi
332 +
333 + if ! use headless && use chm; then
334 + doins kchmviewer VirtualBox.chm
335 + fowners root:vboxusers /opt/VirtualBox/kchmviewer
336 + fperms 0750 /opt/VirtualBox/kchmviewer
337 + fi
338 +
339 + # This ebuild / package supports only py2.7. When py3 comes is unknown.
340 + # The compile phase makes VBoxPython2_7.so.
341 + # py3 support would presumably require a binary pre-compiled by py3.
342 + use python && doins VBoxPython.so VBoxPython2_7.so
343 +
344 + rm -rf src rdesktop* deffiles install* routines.sh runlevel.sh \
345 + vboxdrv.sh VBox.sh VBox.png vboxnet.sh additions VirtualBox.desktop \
346 + VirtualBox.tar.bz2 LICENSE VBoxSysInfo.sh rdesktop* vboxwebsrv \
347 + webtest kchmviewer VirtualBox.chm vbox-create-usb-node.sh \
348 + 90-vbox-usb.fdi uninstall.sh vboxshell.py vboxdrv-pardus.py \
349 + VBoxPython?_*.so
350 +
351 + if use headless ; then
352 + rm -rf VBoxSDL VirtualBox VBoxKeyboard.so
353 + fi
354 +
355 + doins -r * || die
356 +
357 + # create symlinks for working around unsupported $ORIGIN/.. in VBoxC.so (setuid)
358 + dosym ../VBoxVMM.so /opt/VirtualBox/components/VBoxVMM.so
359 + dosym ../VBoxREM.so /opt/VirtualBox/components/VBoxREM.so
360 + dosym ../VBoxRT.so /opt/VirtualBox/components/VBoxRT.so
361 + dosym ../VBoxDDU.so /opt/VirtualBox/components/VBoxDDU.so
362 + dosym ../VBoxXPCOM.so /opt/VirtualBox/components/VBoxXPCOM.so
363 +
364 + local each
365 + for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,NetAdpCtl,NetDHCP,NetNAT,TestOGL,ExtPackHelperApp}; do
366 + fowners root:vboxusers /opt/VirtualBox/${each}
367 + fperms 0750 /opt/VirtualBox/${each}
368 + pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
369 + done
370 + # VBoxNetAdpCtl and VBoxNetDHCP binaries need to be suid root in any case..
371 + fperms 4750 /opt/VirtualBox/VBoxNetAdpCtl
372 + fperms 4750 /opt/VirtualBox/VBoxNetDHCP
373 + fperms 4750 /opt/VirtualBox/VBoxNetNAT
374 +
375 + if ! use headless ; then
376 + # Hardened build: Mark selected binaries set-user-ID-on-execution
377 + for each in VBox{SDL,Headless} VirtualBox; do
378 + fowners root:vboxusers /opt/VirtualBox/${each}
379 + fperms 4510 /opt/VirtualBox/${each}
380 + pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
381 + done
382 +
383 + dosym ../VirtualBox/VBox.sh /opt/bin/VirtualBox
384 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxSDL
385 + else
386 + # Hardened build: Mark selected binaries set-user-ID-on-execution
387 + fowners root:vboxusers /opt/VirtualBox/VBoxHeadless
388 + fperms 4510 /opt/VirtualBox/VBoxHeadless
389 + pax-mark -m "${ED%/}"/opt/VirtualBox/VBoxHeadless
390 + fi
391 +
392 + exeinto /opt/VirtualBox
393 + newexe "${FILESDIR}/${PN}-3-wrapper" "VBox.sh"
394 + fowners root:vboxusers /opt/VirtualBox/VBox.sh
395 + fperms 0750 /opt/VirtualBox/VBox.sh
396 +
397 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxManage
398 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxVRDP
399 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxHeadless
400 + dosym ../VirtualBox/VBoxTunctl /opt/bin/VBoxTunctl
401 +
402 + # set an env-variable for 3rd party tools
403 + echo -n "VBOX_APP_HOME=/opt/VirtualBox" > "${T}/90virtualbox"
404 + doenvd "${T}/90virtualbox"
405 +
406 + local udevdir="$(get_udevdir)"
407 + insinto ${udevdir}/rules.d
408 + doins "${FILESDIR}"/10-virtualbox.rules
409 + sed "s@%UDEVDIR%@${udevdir}@" \
410 + -i "${ED%/}"${udevdir}/rules.d/10-virtualbox.rules || die
411 + # move udev scripts into ${udevdir} (bug #372491)
412 + mv "${ED%/}"/opt/VirtualBox/VBoxCreateUSBNode.sh "${ED%/}"${udevdir} || die
413 + fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
414 +}
415 +
416 +pkg_postinst() {
417 + xdg_desktop_database_update
418 +
419 + gnome2_icon_cache_update
420 +
421 + udevadm control --reload-rules && udevadm trigger --subsystem-match=usb
422 +
423 + elog ""
424 + if ! use headless ; then
425 + elog "To launch VirtualBox just type: \"VirtualBox\""
426 + elog ""
427 + fi
428 + elog "You must be in the vboxusers group to use VirtualBox."
429 + elog ""
430 + elog "For advanced networking setups you should emerge:"
431 + elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
432 + elog ""
433 + elog "Please visit http://www.virtualbox.org/wiki/Editions for"
434 + elog "an overview about the different features of ${PN}"
435 + elog "and virtualbox-ose"
436 + if [ -e "${ROOT}/etc/udev/rules.d/10-virtualbox.rules" ] ; then
437 + elog ""
438 + elog "Please remove \"${ROOT}/etc/udev/rules.d/10-virtualbox.rules\""
439 + elog "or else USB in ${PN} won't work."
440 + fi
441 +}
442 +
443 +pkg_postrm() {
444 + xdg_desktop_database_update
445 +}
446
447 diff --git a/app-emulation/virtualbox-bin/virtualbox-bin-6.0.4.128413.ebuild b/app-emulation/virtualbox-bin/virtualbox-bin-6.0.4.128413.ebuild
448 new file mode 100644
449 index 00000000000..87181607960
450 --- /dev/null
451 +++ b/app-emulation/virtualbox-bin/virtualbox-bin-6.0.4.128413.ebuild
452 @@ -0,0 +1,289 @@
453 +# Copyright 1999-2019 Gentoo Authors
454 +# Distributed under the terms of the GNU General Public License v2
455 +
456 +EAPI=6
457 +
458 +PYTHON_COMPAT=( python2_7 )
459 +
460 +inherit xdg-utils gnome2 pax-utils python-r1 udev unpacker eapi7-ver
461 +
462 +MAIN_PV="$(ver_cut 1-3)"
463 +if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
464 + MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
465 + MY_PV="${MY_PV/beta/BETA}"
466 + MY_PV="${MY_PV/rc/RC}"
467 +else
468 + MY_PV="${MAIN_PV}"
469 + KEYWORDS="~amd64" #~x86
470 +fi
471 +VBOX_BUILD_ID="$(ver_cut 4)"
472 +VBOX_PV="${MY_PV}-${VBOX_BUILD_ID}"
473 +MY_P="VirtualBox-${VBOX_PV}-Linux"
474 +# needed as sometimes the extpack gets another build ID
475 +EXTP_PV="${VBOX_PV}"
476 +EXTP_PN="Oracle_VM_VirtualBox_Extension_Pack"
477 +EXTP_P="${EXTP_PN}-${EXTP_PV}"
478 +# needed as sometimes the SDK gets another build ID
479 +SDK_PV="${VBOX_PV}"
480 +SDK_P="VirtualBoxSDK-${SDK_PV}"
481 +
482 +DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
483 +HOMEPAGE="https://www.virtualbox.org/"
484 +SRC_URI="amd64? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_amd64.run )
485 + https://download.virtualbox.org/virtualbox/${MY_PV}/${EXTP_P}.vbox-extpack -> ${EXTP_P}.tar.gz"
486 + #x86? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}_x86.run )
487 +
488 +LICENSE="GPL-2 PUEL"
489 +SLOT="0"
490 +IUSE="+additions +chm headless python vboxwebsrv rdesktop-vrdp"
491 +RESTRICT="mirror"
492 +
493 +if [[ "${PV}" != *beta* ]] ; then
494 + SRC_URI+="
495 + sdk? ( https://download.virtualbox.org/virtualbox/${MY_PV}/${SDK_P}.zip )"
496 + IUSE+=" sdk"
497 +fi
498 +
499 +DEPEND="app-arch/unzip
500 + ${PYTHON_DEPS}"
501 +
502 +RDEPEND="!!app-emulation/virtualbox
503 + !app-emulation/virtualbox-additions
504 + ~app-emulation/virtualbox-modules-${MAIN_PV}
505 + !headless? (
506 + dev-libs/glib
507 + media-libs/fontconfig
508 + media-libs/freetype
509 + media-libs/libpng
510 + media-libs/libsdl[X]
511 + x11-libs/libXcursor
512 + x11-libs/libXext
513 + x11-libs/libXfixes
514 + x11-libs/libXft
515 + x11-libs/libXi
516 + x11-libs/libXinerama
517 + x11-libs/libXrandr
518 + x11-libs/libXrender
519 + chm? ( dev-libs/expat )
520 + )
521 + dev-libs/libxml2
522 + sys-fs/lvm2
523 + x11-libs/libXau
524 + x11-libs/libX11
525 + x11-libs/libXt
526 + x11-libs/libXmu
527 + x11-libs/libSM
528 + x11-libs/libICE
529 + x11-libs/libXdmcp
530 + ${PYTHON_DEPS}"
531 +
532 +REQUIRED_USE="${PYTHON_REQUIRED_USE}"
533 +S="${WORKDIR}"
534 +
535 +QA_PREBUILT="opt/VirtualBox/*"
536 +
537 +PYTHON_UPDATER_IGNORE="1"
538 +
539 +src_unpack() {
540 + unpack_makeself ${MY_P}_${ARCH}.run
541 + unpack ./VirtualBox.tar.bz2
542 +
543 + mkdir "${S}"/${EXTP_PN} || die
544 + pushd "${S}"/${EXTP_PN} &>/dev/null || die
545 + unpack ${EXTP_P}.tar.gz
546 + popd &>/dev/null || die
547 +
548 + if [[ "${PV}" != *beta* ]] && use sdk ; then
549 + unpack VirtualBoxSDK-${SDK_PV}.zip
550 + fi
551 +}
552 +
553 +src_configure() {
554 + :;
555 +}
556 +
557 +src_compile() {
558 + :;
559 +}
560 +
561 +src_install() {
562 + # create virtualbox configurations files
563 + insinto /etc/vbox
564 + newins "${FILESDIR}/${PN}-config" vbox.cfg
565 +
566 + if ! use headless ; then
567 + newmenu "${FILESDIR}"/${PN}.desktop-2 ${PN}.desktop
568 +
569 + # set up symlinks (bug #572012)
570 + dosym ../../../../opt/VirtualBox/virtualbox.xml /usr/share/mime/packages/virtualbox.xml
571 +
572 + local size ico icofile
573 + for size in 16 24 32 48 64 72 96 128 256 ; do
574 + pushd "${S}"/icons/${size}x${size} &>/dev/null || die
575 + if [[ -f "virtualbox.png" ]] ; then
576 + doicon -s ${size} virtualbox.png
577 + fi
578 + for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
579 + icofile="virtualbox-${ico}.png"
580 + if [[ -f "${icofile}" ]] ; then
581 + doicon -s ${size} ${icofile}
582 + fi
583 + done
584 + popd &>/dev/null || die
585 + done
586 + doicon -s scalable "${S}"/icons/scalable/virtualbox.svg
587 + insinto /usr/share/pixmaps
588 + newins "${S}"/icons/48x48/virtualbox.png ${PN}.png
589 + fi
590 +
591 + pushd "${S}"/${EXTP_PN} &>/dev/null || die
592 + insinto /opt/VirtualBox/ExtensionPacks/${EXTP_PN}
593 + doins -r linux.${ARCH}
594 + doins ExtPack* PXE-Intel.rom
595 + popd &>/dev/null || die
596 + rm -rf "${S}"/${EXTP_PN}
597 +
598 + insinto /opt/VirtualBox
599 + dodir /opt/bin
600 +
601 + doins UserManual.pdf
602 +
603 + if [[ "${PV}" != *beta* ]] && use sdk ; then
604 + doins -r sdk
605 + fi
606 +
607 + if use additions; then
608 + doins -r additions
609 + fi
610 +
611 + if use vboxwebsrv; then
612 + doins vboxwebsrv
613 + fowners root:vboxusers /opt/VirtualBox/vboxwebsrv
614 + fperms 0750 /opt/VirtualBox/vboxwebsrv
615 + dosym ../../opt/VirtualBox/VBox.sh /opt/bin/vboxwebsrv
616 + newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
617 + newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
618 + fi
619 +
620 + if use rdesktop-vrdp; then
621 + doins rdesktop-vrdp
622 + doins -r rdesktop-vrdp-keymaps
623 + fperms 0750 /opt/VirtualBox/rdesktop-vrdp
624 + dosym ../../opt/VirtualBox/rdesktop-vrdp /opt/bin/rdesktop-vrdp
625 + fi
626 +
627 + if ! use headless && use chm; then
628 + doins kchmviewer VirtualBox.chm
629 + fowners root:vboxusers /opt/VirtualBox/kchmviewer
630 + fperms 0750 /opt/VirtualBox/kchmviewer
631 + fi
632 +
633 + # This ebuild / package supports only py2.7. When py3 comes is unknown.
634 + # The compile phase makes VBoxPython2_7.so.
635 + # py3 support would presumably require a binary pre-compiled by py3.
636 + use python && doins VBoxPython.so
637 +
638 + rm -rf src rdesktop* deffiles install* routines.sh runlevel.sh \
639 + vboxdrv.sh VBox.sh VBox.png vboxnet.sh additions VirtualBox.desktop \
640 + VirtualBox.tar.bz2 LICENSE VBoxSysInfo.sh rdesktop* vboxwebsrv \
641 + webtest kchmviewer VirtualBox.chm vbox-create-usb-node.sh \
642 + 90-vbox-usb.fdi uninstall.sh vboxshell.py vboxdrv-pardus.py \
643 + VBoxPython?_*.so
644 +
645 + if use headless ; then
646 + rm -rf VBoxSDL VirtualBox{,VM} VBoxKeyboard.so
647 + fi
648 +
649 + doins -r * || die
650 +
651 + # create symlinks for working around unsupported $ORIGIN/.. in VBoxC.so (setuid)
652 + dosym ../VBoxVMM.so /opt/VirtualBox/components/VBoxVMM.so
653 + dosym ../VBoxREM.so /opt/VirtualBox/components/VBoxREM.so
654 + dosym ../VBoxRT.so /opt/VirtualBox/components/VBoxRT.so
655 + dosym ../VBoxDDU.so /opt/VirtualBox/components/VBoxDDU.so
656 + dosym ../VBoxXPCOM.so /opt/VirtualBox/components/VBoxXPCOM.so
657 +
658 + local each
659 + for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,TestOGL,ExtPackHelperApp} VirtualBox ; do
660 + fowners root:vboxusers /opt/VirtualBox/${each}
661 + fperms 0750 /opt/VirtualBox/${each}
662 + pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
663 + done
664 + # VBoxNetAdpCtl and VBoxNetDHCP binaries need to be suid root in any case..
665 + for each in VBoxNet{AdpCtl,DHCP,NAT} VirtualBoxVM ; do
666 + fowners root:vboxusers /opt/VirtualBox/${each}
667 + fperms 4750 /opt/VirtualBox/${each}
668 + pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
669 + done
670 +
671 + if ! use headless ; then
672 + # Hardened build: Mark selected binaries set-user-ID-on-execution
673 + for each in VBox{SDL,Headless} ; do
674 + fowners root:vboxusers /opt/VirtualBox/${each}
675 + fperms 4510 /opt/VirtualBox/${each}
676 + pax-mark -m "${ED%/}"/opt/VirtualBox/${each}
677 + done
678 +
679 + dosym ../VirtualBox/VBox.sh /opt/bin/VirtualBox
680 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxSDL
681 + else
682 + # Hardened build: Mark selected binaries set-user-ID-on-execution
683 + fowners root:vboxusers /opt/VirtualBox/VBoxHeadless
684 + fperms 4510 /opt/VirtualBox/VBoxHeadless
685 + pax-mark -m "${ED%/}"/opt/VirtualBox/VBoxHeadless
686 + fi
687 +
688 + exeinto /opt/VirtualBox
689 + newexe "${FILESDIR}/${PN}-3-wrapper" "VBox.sh"
690 + fowners root:vboxusers /opt/VirtualBox/VBox.sh
691 + fperms 0750 /opt/VirtualBox/VBox.sh
692 +
693 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxManage
694 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxVRDP
695 + dosym ../VirtualBox/VBox.sh /opt/bin/VBoxHeadless
696 + dosym ../VirtualBox/VBoxTunctl /opt/bin/VBoxTunctl
697 +
698 + # set an env-variable for 3rd party tools
699 + echo -n "VBOX_APP_HOME=/opt/VirtualBox" > "${T}/90virtualbox"
700 + doenvd "${T}/90virtualbox"
701 +
702 + local udevdir="$(get_udevdir)"
703 + insinto ${udevdir}/rules.d
704 + doins "${FILESDIR}"/10-virtualbox.rules
705 + sed "s@%UDEVDIR%@${udevdir}@" \
706 + -i "${ED%/}"${udevdir}/rules.d/10-virtualbox.rules || die
707 + # move udev scripts into ${udevdir} (bug #372491)
708 + mv "${ED%/}"/opt/VirtualBox/VBoxCreateUSBNode.sh "${ED%/}"${udevdir} || die
709 + fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
710 +}
711 +
712 +pkg_postinst() {
713 + xdg_desktop_database_update
714 +
715 + gnome2_icon_cache_update
716 +
717 + udevadm control --reload-rules && udevadm trigger --subsystem-match=usb
718 +
719 + elog ""
720 + if ! use headless ; then
721 + elog "To launch VirtualBox just type: \"VirtualBox\""
722 + elog ""
723 + fi
724 + elog "You must be in the vboxusers group to use VirtualBox."
725 + elog ""
726 + elog "For advanced networking setups you should emerge:"
727 + elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
728 + elog ""
729 + elog "Please visit http://www.virtualbox.org/wiki/Editions for"
730 + elog "an overview about the different features of ${PN}"
731 + elog "and virtualbox-ose"
732 + if [ -e "${ROOT}/etc/udev/rules.d/10-virtualbox.rules" ] ; then
733 + elog ""
734 + elog "Please remove \"${ROOT}/etc/udev/rules.d/10-virtualbox.rules\""
735 + elog "or else USB in ${PN} won't work."
736 + fi
737 +}
738 +
739 +pkg_postrm() {
740 + xdg_desktop_database_update
741 +}
742
743 diff --git a/app-emulation/virtualbox-extpack-oracle/Manifest b/app-emulation/virtualbox-extpack-oracle/Manifest
744 index 289cf748834..5193f42c740 100644
745 --- a/app-emulation/virtualbox-extpack-oracle/Manifest
746 +++ b/app-emulation/virtualbox-extpack-oracle/Manifest
747 @@ -1,4 +1,6 @@
748 DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.22-126460.tar.gz 19640932 BLAKE2B 162ab40da6b2cd30d00e020666a1f4fb026e29af2ca9d6c36c294e5fa299b61ab8fd147f24d2b500426c768808db2c7693c30e88519e695d7759f8eedf1c52c5 SHA512 85b8552668b6580bea24f051ad861c82b9ba32177fb7fa37fe2980d8bab32a84325d02bfa9c8f55c2021a4000ef2546d8996ca8b99ca7fc19f8281a92108dfb0
749 DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.24-128163.tar.gz 19683939 BLAKE2B ce05e159172e34e1d520b3783d77db06aa8f91067cc743beb1eeafaf01508e830f5fe9501cb1f3a6d99492e3046ec2dd2fec94ffd39a237ef4679352492aaa1a SHA512 035103e420d773201ad24093910d7175a5d548f19de4a58900e78e2ebfac711851c99375977ba9fd47fced234346437164d226592b7070a867a1d13fd534a3b5
750 +DIST Oracle_VM_VirtualBox_Extension_Pack-5.2.26-128414.tar.gz 19684009 BLAKE2B 81787dcf3b70211fa9c84a40c668100eda0dfd2ce3e1d35c226cb6913ef74027f3444be93069a5e881d8e60905477460a180cb98919050286978edf9c1edcdf3 SHA512 deb4c62d58e2071f4413f0ff769e9ecd756362920b29482a6a3d77566c327b075cb5ecafdc65985305b8b798dc56ca2104a0f8244651fca89c4e15ef879c121e
751 DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.0-127566.tar.gz 23284806 BLAKE2B 4b34e1640ac74be3acc4cddc6140f77a2e5456ec29c6523fc2fe27c5e7c4652dd28f523b85a6cb17aab52e3594e68ee64cbe2c4cb8edd68f7deda05ed8b9e05d SHA512 cd8cd82bf9cea29f50101c8cccd0b8f699dcc4c4e7e720fe80df82154339b787d154a6376adc9d0f4a3015ec1ee2d67d6575ac5197dfda63af3f758294c165b8
752 DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.2-128162.tar.gz 23289693 BLAKE2B 13e1ad30b40676ed2e11cf26957377696a9f30a7a92bda0ca5f69039ffebe4abf3bb0224844609a29ac217b227e4d1906c70cd404d3967a26dc0ace3bf4d2ccd SHA512 29b682bf8130f73b25a82e97053847077d9eb48f0510db7fb0cf2e817e1e6b9a6e7ded54ede7447c56aa7b219d32a2d6ee19cb0efbe5c7e0a984c5e137fada51
753 +DIST Oracle_VM_VirtualBox_Extension_Pack-6.0.4-128413.tar.gz 23290549 BLAKE2B f9ac1a560d5e8b9b73efa21e3623c9f6f0d7769eb4cad7b01d8f68a135a74573659a0a9b092f7ab35beb348ed2722fcf7862aa66e47987b33038f488b88b1129 SHA512 ee54cbdf58de8d37ba84fffd2baec2c9d3915feeab715767515fd6d6ec3032dad2f02509b08cea24754cfce0974a7c1b29c6050bff466af53c1ac6589f4c0215
754
755 diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.26.128414.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.26.128414.ebuild
756 new file mode 100644
757 index 00000000000..e598ba63811
758 --- /dev/null
759 +++ b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-5.2.26.128414.ebuild
760 @@ -0,0 +1,42 @@
761 +# Copyright 1999-2019 Gentoo Authors
762 +# Distributed under the terms of the GNU General Public License v2
763 +
764 +EAPI=7
765 +
766 +inherit multilib
767 +
768 +MAIN_PV="$(ver_cut 1-3)"
769 +if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
770 + MY_PV="${MAIN_PV}_$(ver_cut 5)"
771 + DEP_PV="${MY_PV}"
772 + MY_PV="${MY_PV/beta/BETA}"
773 + MY_PV="${MY_PV/rc/RC}"
774 +else
775 + MY_PV="${MAIN_PV}"
776 + DEP_PV="${MAIN_PV}"
777 +fi
778 +VBOX_BUILD_ID="$(ver_cut 4)"
779 +MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
780 +MY_P="${MY_PN}-${MY_PV}-${VBOX_BUILD_ID}"
781 +
782 +DESCRIPTION="PUEL extensions for VirtualBox"
783 +HOMEPAGE="https://www.virtualbox.org/"
784 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
785 +
786 +LICENSE="PUEL"
787 +SLOT="0"
788 +KEYWORDS="~amd64 ~x86"
789 +IUSE=""
790 +RESTRICT="mirror strip"
791 +
792 +RDEPEND="~app-emulation/virtualbox-${DEP_PV}"
793 +
794 +S="${WORKDIR}"
795 +
796 +QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
797 +
798 +src_install() {
799 + insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
800 + doins -r linux.${ARCH}
801 + doins ExtPack* PXE-Intel.rom
802 +}
803
804 diff --git a/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.0.4.128413.ebuild b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.0.4.128413.ebuild
805 new file mode 100644
806 index 00000000000..a260ead1a63
807 --- /dev/null
808 +++ b/app-emulation/virtualbox-extpack-oracle/virtualbox-extpack-oracle-6.0.4.128413.ebuild
809 @@ -0,0 +1,43 @@
810 +# Copyright 1999-2019 Gentoo Authors
811 +# Distributed under the terms of the GNU General Public License v2
812 +
813 +EAPI=7
814 +
815 +inherit multilib
816 +
817 +MAIN_PV="$(ver_cut 1-3)"
818 +if [[ ${PV} = *_beta* ]] || [[ ${PV} = *_rc* ]] ; then
819 + MY_PV="${MAIN_PV}_$(ver_cut 5-6)"
820 + DEP_PV="${MY_PV}"
821 + MY_PV="${MY_PV/beta/BETA}"
822 + MY_PV="${MY_PV/rc/RC}"
823 +else
824 + MY_PV="${MAIN_PV}"
825 + DEP_PV="${MAIN_PV}"
826 +fi
827 +VBOX_BUILD_ID="$(ver_cut 4)"
828 +MY_PN="Oracle_VM_VirtualBox_Extension_Pack"
829 +MY_P="${MY_PN}-${MY_PV}-${VBOX_BUILD_ID}"
830 +
831 +DESCRIPTION="PUEL extensions for VirtualBox"
832 +HOMEPAGE="https://www.virtualbox.org/"
833 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.vbox-extpack -> ${MY_P}.tar.gz"
834 +
835 +LICENSE="PUEL"
836 +SLOT="0"
837 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
838 +KEYWORDS="~amd64 ~x86"
839 +IUSE=""
840 +RESTRICT="mirror strip"
841 +
842 +RDEPEND="~app-emulation/virtualbox-${DEP_PV}"
843 +
844 +S="${WORKDIR}"
845 +
846 +QA_PREBUILT="/usr/lib*/virtualbox/ExtensionPacks/${MY_PN}/.*"
847 +
848 +src_install() {
849 + insinto /usr/$(get_libdir)/virtualbox/ExtensionPacks/${MY_PN}
850 + doins -r linux.${ARCH}
851 + doins ExtPack* PXE-Intel.rom
852 +}
853
854 diff --git a/app-emulation/virtualbox-guest-additions/Manifest b/app-emulation/virtualbox-guest-additions/Manifest
855 index f15d100c7ab..1402276ac64 100644
856 --- a/app-emulation/virtualbox-guest-additions/Manifest
857 +++ b/app-emulation/virtualbox-guest-additions/Manifest
858 @@ -1,6 +1,8 @@
859 DIST VirtualBox-5.2.22.tar.bz2 118757134 BLAKE2B be795cdbfb09d3d443f63e190b63898239622f5a57aefdd90f382d9a849d09cc1abc2624071fbc60b2c04a12f33376184540cc362c19225733f99a3bcc8ff6a3 SHA512 4f6c4611a3114778f45419587dc1519ca07410c1ea6474cdb18ecd3b068639a4fdac3f25146fe9b8e006e30f19eba134ce9f665182008b033f6f78497e1ea722
860 DIST VirtualBox-5.2.24.tar.bz2 118369194 BLAKE2B 2073ec85a641ae80113d41e8363401da5afaf6ea442c2a3c537341f39e06a03a7175463605133e642988f72c4adde4f987905c08f4ba58460953af7169cb4ca0 SHA512 2de5a19ff6aff56a4f7e7b9d7d39b3e787d2ac30d448e3313e915b1cde4b2eedccab44c7a195412efb9e9a6de3c1fb3ee96bde57af93f9ef8f317ffa8b7d4410
861 +DIST VirtualBox-5.2.26.tar.bz2 118371765 BLAKE2B 32413b72e33f2f63835a2eb2d47dc75a7b63121934bdffd51ff58e9d63d68b77b4f8dac4605916ba8bd6896240d00024ccc3d7d002d4f6f92d6d9b1dc35995e3 SHA512 aee334c74bd02772ac5e0528d84d31661f61c775d0993c00febe125810efc78a2f779db41bf66283be51b19a35540fee14445bada59a8d3b7affa6ef6645005f
862 DIST VirtualBox-6.0.0.tar.bz2 154322106 BLAKE2B 952e857e5bd6f612272b7bc399af5596d4eb4f13c429c93be7f9e6c4b58e535fe0492806fd51fd5a3f22653f0a42abb2a25ce6b67b5b4712d7e88e34b68eb8cf SHA512 fbe193a3c4dfef943bd75e894452cc684e794e5fa2b25d0292f7fb3e84d5f1a890fe0a3a91dbae9a9b90ec87f12cb3d868457e1767a5841964568cf13a189561
863 DIST VirtualBox-6.0.2.tar.bz2 155125777 BLAKE2B 2d902fd1963305883eebba85daa03bd17fe8a9ba20e7a6482508879068a809ee80c4a5caffeb26acd0fd4ad29f6f60cf963e1d314e4b01f137ede5b589a74cb9 SHA512 9cfc03eae073ada47c050d2a5eeefa6f724ad2094f2bc3717aa010553ab0dd5af0ed0860bf120727491c7798cdff9219e53cdc3d629f61e3cd12c55068e7401b
864 +DIST VirtualBox-6.0.4.tar.bz2 155233564 BLAKE2B 6bc4d450e275e8aac5dc62ab05d9ba1450e13965f3eba64819315d121bd0e515319be2ad92ab429f2e598e157e89660561de69a2aac87e14792284669bcec7e8 SHA512 c2e5418bafd5d50b46e1bc70280753c2fdfbf7248d782fc398771839950fb575eaea437e9699d56f4d8c92ea4dc9ba8bed74379565dac6114f7e9c45aecc9fdb
865 DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
866 DIST virtualbox-6.0.0_beta2-patches-01.tar.xz 2732 BLAKE2B a138e715d99f135f16ca21c92781bf6cd8913f7f766bb598eddcd63e98280e568e646f56bbd0a3714f273457ca90db0b77ec7940ba25028506a22891f1af7b2d SHA512 954e4b40d6e272efe756ee0965adb4110d45f764433a89080fda7ebaebbc20031f86a3e0027dfdaa1c6a7d6379a1af557cea71512504e4b57b5f5adbfc86b56e
867
868 diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.26.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.26.ebuild
869 new file mode 100644
870 index 00000000000..5780804c8c4
871 --- /dev/null
872 +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-5.2.26.ebuild
873 @@ -0,0 +1,228 @@
874 +# Copyright 1999-2019 Gentoo Authors
875 +# Distributed under the terms of the GNU General Public License v2
876 +
877 +EAPI=7
878 +
879 +inherit linux-mod systemd user toolchain-funcs
880 +
881 +MY_PV="${PV/beta/BETA}"
882 +MY_PV="${MY_PV/rc/RC}"
883 +MY_P="VirtualBox-${MY_PV}"
884 +DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
885 +HOMEPAGE="https://www.virtualbox.org/"
886 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
887 + https://dev.gentoo.org/~polynomial-c/virtualbox/patchsets/virtualbox-5.2.16-patches-02.tar.xz"
888 +
889 +LICENSE="GPL-2"
890 +SLOT="0"
891 +KEYWORDS="~amd64 ~x86"
892 +IUSE="X"
893 +
894 +RDEPEND="
895 + X? ( x11-apps/xrandr
896 + x11-apps/xrefresh
897 + x11-libs/libXmu
898 + x11-libs/libX11
899 + x11-libs/libXt
900 + x11-libs/libXext
901 + x11-libs/libXau
902 + x11-libs/libXdmcp
903 + x11-libs/libSM
904 + x11-libs/libICE )
905 + sys-apps/dbus
906 +"
907 +DEPEND="
908 + ${RDEPEND}
909 + >=dev-util/kbuild-0.1.9998.3127
910 + >=dev-lang/yasm-0.6.2
911 + sys-devel/bin86
912 + sys-libs/pam
913 + sys-power/iasl
914 + x11-base/xorg-proto
915 +"
916 +PDEPEND="
917 + X? ( x11-drivers/xf86-video-vboxvideo )
918 +"
919 +BUILD_TARGETS="all"
920 +BUILD_TARGET_ARCH="${ARCH}"
921 +
922 +S="${WORKDIR}/${MY_P}"
923 +
924 +pkg_setup() {
925 + MODULE_NAMES="vboxguest(misc:${WORKDIR}/vboxguest:${WORKDIR}/vboxguest)
926 + vboxsf(misc:${WORKDIR}/vboxsf:${WORKDIR}/vboxsf)"
927 + use X && MODULE_NAMES+=" vboxvideo(misc:${WORKDIR}/vboxvideo::${WORKDIR}/vboxvideo)"
928 +
929 + linux-mod_pkg_setup
930 + BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR}"
931 +}
932 +
933 +src_unpack() {
934 + unpack ${A}
935 +
936 + # Create and unpack a tarball with the sources of the Linux guest
937 + # kernel modules, to include all the needed files
938 + "${S}"/src/VBox/Additions/linux/export_modules.sh "${WORKDIR}/vbox-kmod.tar.gz"
939 + unpack ./vbox-kmod.tar.gz
940 +
941 + # Remove shipped binaries (kBuild,yasm), see bug #232775
942 + cd "${S}"
943 + rm -rf kBuild/bin tools
944 +}
945 +
946 +src_prepare() {
947 + # PaX fixes (see bug #298988)
948 + pushd "${WORKDIR}" &>/dev/null || die
949 + eapply "${FILESDIR}"/vboxguest-4.1.0-log-use-c99.patch
950 + popd &>/dev/null || die
951 +
952 + # Disable things unused or splitted into separate ebuilds
953 + cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
954 + use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
955 +
956 + # stupid new header references...
957 + local vboxheader mdir
958 + for vboxheader in {product,revision,version}-generated.h ; do
959 + for mdir in vbox{guest,sf} ; do
960 + ln -sf "${S}"/out/linux.${ARCH}/release/${vboxheader} \
961 + "${WORKDIR}/${mdir}/${vboxheader}"
962 + done
963 + done
964 +
965 + # Remove pointless GCC version check
966 + sed -e '/^check_gcc$/d' -i configure || die
967 +
968 + rm "${WORKDIR}/patches/008_virtualbox-4.3.14-missing_define.patch" || die
969 + eapply "${WORKDIR}/patches"
970 +
971 + eapply_user
972 +}
973 +
974 +src_configure() {
975 + # build the user-space tools, warnings are harmless
976 + local cmd=(
977 + ./configure
978 + --nofatal
979 + --disable-xpcom
980 + --disable-sdl-ttf
981 + --disable-pulse
982 + --disable-alsa
983 + --with-gcc="$(tc-getCC)"
984 + --with-g++="$(tc-getCXX)"
985 + --target-arch=${ARCH}
986 + --with-linux="${KV_OUT_DIR}"
987 + --build-headless
988 + )
989 + echo "${cmd[@]}"
990 + "${cmd[@]}" || die "configure failed"
991 + source ./env.sh
992 + export VBOX_GCC_OPT="${CFLAGS} ${CPPFLAGS}"
993 +}
994 +
995 +src_compile() {
996 + MAKE="kmk" \
997 + emake TOOL_YASM_AS=yasm \
998 + VBOX_ONLY_ADDITIONS=1 \
999 + KBUILD_VERBOSE=2
1000 +
1001 + # Now creating the kernel modules. We must do this _after_
1002 + # we compiled the user-space tools as we need two of the
1003 + # automatically generated header files. (>=3.2.0)
1004 + linux-mod_src_compile
1005 +}
1006 +
1007 +src_install() {
1008 + linux-mod_src_install
1009 +
1010 + cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
1011 +
1012 + insinto /sbin
1013 + newins mount.vboxsf mount.vboxsf
1014 + fperms 4755 /sbin/mount.vboxsf
1015 +
1016 + newinitd "${FILESDIR}"/${PN}-8.initd ${PN}
1017 +
1018 + insinto /usr/sbin/
1019 + newins VBoxService vboxguest-service
1020 + fperms 0755 /usr/sbin/vboxguest-service
1021 +
1022 + insinto /usr/bin
1023 + doins VBoxControl
1024 + fperms 0755 /usr/bin/VBoxControl
1025 +
1026 + # VBoxClient user service and xrandr wrapper
1027 + if use X ; then
1028 + doins VBoxClient
1029 + fperms 0755 /usr/bin/VBoxClient
1030 +
1031 + pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
1032 + || die
1033 + newins 98vboxadd-xclient VBoxClient-all
1034 + fperms 0755 /usr/bin/VBoxClient-all
1035 + popd &>/dev/null || die
1036 + fi
1037 +
1038 + # udev rule for vboxdrv
1039 + local udev_rules_dir="/lib/udev/rules.d"
1040 + dodir ${udev_rules_dir}
1041 + echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
1042 + >> "${ED%/}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
1043 + || die
1044 + echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
1045 + >> "${ED%/}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
1046 + || die
1047 +
1048 + # VBoxClient autostart file
1049 + insinto /etc/xdg/autostart
1050 + doins "${FILESDIR}"/vboxclient.desktop
1051 +
1052 + # sample xorg.conf
1053 + insinto /usr/share/doc/${PF}
1054 + doins "${FILESDIR}"/xorg.conf.vbox
1055 +
1056 + systemd_dounit "${FILESDIR}/${PN}.service"
1057 +}
1058 +
1059 +pkg_preinst() {
1060 + enewgroup vboxguest
1061 + enewuser vboxguest -1 /bin/sh /dev/null vboxguest
1062 + # automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
1063 + enewgroup vboxsf
1064 +}
1065 +
1066 +pkg_postinst() {
1067 + linux-mod_pkg_postinst
1068 + if ! use X ; then
1069 + elog "use flag X is off, enable it to install the"
1070 + elog "X Window System video driver."
1071 + fi
1072 + elog ""
1073 + elog "Please add users to the \"vboxguest\" group so they can"
1074 + elog "benefit from seamless mode, auto-resize and clipboard."
1075 + elog ""
1076 + elog "The vboxsf group has been added to make automount services work."
1077 + elog "These services are part of the shared folders support."
1078 + elog ""
1079 + elog "Please add:"
1080 + elog "/etc/init.d/${PN}"
1081 + elog "to the default runlevel in order to start"
1082 + elog "needed services."
1083 + elog "To use the VirtualBox X driver, use the following"
1084 + elog "file as your /etc/X11/xorg.conf:"
1085 + elog " /usr/share/doc/${PF}/xorg.conf.vbox"
1086 + elog ""
1087 + elog "Also make sure you use the Mesa library for OpenGL:"
1088 + elog " eselect opengl set xorg-x11"
1089 + elog ""
1090 + elog "An autostart .desktop file has been installed to start"
1091 + elog "VBoxClient in desktop sessions."
1092 + elog ""
1093 + elog "You can mount shared folders with:"
1094 + elog " mount -t vboxsf <shared_folder_name> <mount_point>"
1095 + elog ""
1096 + elog "Warning:"
1097 + elog "this ebuild is only needed if you are running gentoo"
1098 + elog "inside a VirtualBox Virtual Machine, you don't need"
1099 + elog "it to run VirtualBox itself."
1100 + elog ""
1101 +}
1102
1103 diff --git a/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.0.4.ebuild b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.0.4.ebuild
1104 new file mode 100644
1105 index 00000000000..1cda2a1f29f
1106 --- /dev/null
1107 +++ b/app-emulation/virtualbox-guest-additions/virtualbox-guest-additions-6.0.4.ebuild
1108 @@ -0,0 +1,229 @@
1109 +# Copyright 1999-2019 Gentoo Authors
1110 +# Distributed under the terms of the GNU General Public License v2
1111 +
1112 +EAPI=7
1113 +
1114 +inherit linux-mod systemd user toolchain-funcs
1115 +
1116 +MY_PV="${PV/beta/BETA}"
1117 +MY_PV="${MY_PV/rc/RC}"
1118 +MY_P="VirtualBox-${MY_PV}"
1119 +DESCRIPTION="VirtualBox kernel modules and user-space tools for Gentoo guests"
1120 +HOMEPAGE="https://www.virtualbox.org/"
1121 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
1122 + https://dev.gentoo.org/~polynomial-c/virtualbox/patchsets/virtualbox-6.0.0_beta2-patches-01.tar.xz"
1123 +
1124 +LICENSE="GPL-2"
1125 +SLOT="0"
1126 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
1127 +KEYWORDS="~amd64 ~x86"
1128 +IUSE="X"
1129 +
1130 +RDEPEND="
1131 + X? ( x11-apps/xrandr
1132 + x11-apps/xrefresh
1133 + x11-libs/libXmu
1134 + x11-libs/libX11
1135 + x11-libs/libXt
1136 + x11-libs/libXext
1137 + x11-libs/libXau
1138 + x11-libs/libXdmcp
1139 + x11-libs/libSM
1140 + x11-libs/libICE )
1141 + sys-apps/dbus
1142 +"
1143 +DEPEND="
1144 + ${RDEPEND}
1145 + >=dev-util/kbuild-0.1.9998.3127
1146 + >=dev-lang/yasm-0.6.2
1147 + sys-devel/bin86
1148 + sys-libs/pam
1149 + sys-power/iasl
1150 + x11-base/xorg-proto
1151 +"
1152 +PDEPEND="
1153 + X? ( x11-drivers/xf86-video-vboxvideo )
1154 +"
1155 +BUILD_TARGETS="all"
1156 +BUILD_TARGET_ARCH="${ARCH}"
1157 +
1158 +S="${WORKDIR}/${MY_P}"
1159 +
1160 +pkg_setup() {
1161 + MODULE_NAMES="vboxguest(misc:${WORKDIR}/vboxguest:${WORKDIR}/vboxguest)
1162 + vboxsf(misc:${WORKDIR}/vboxsf:${WORKDIR}/vboxsf)"
1163 + use X && MODULE_NAMES+=" vboxvideo(misc:${WORKDIR}/vboxvideo::${WORKDIR}/vboxvideo)"
1164 +
1165 + linux-mod_pkg_setup
1166 + BUILD_PARAMS="KERN_DIR=/lib/modules/${KV_FULL}/build KERNOUT=${KV_OUT_DIR}"
1167 +}
1168 +
1169 +src_unpack() {
1170 + unpack ${A}
1171 +
1172 + # Create and unpack a tarball with the sources of the Linux guest
1173 + # kernel modules, to include all the needed files
1174 + "${S}"/src/VBox/Additions/linux/export_modules.sh "${WORKDIR}/vbox-kmod.tar.gz"
1175 + unpack ./vbox-kmod.tar.gz
1176 +
1177 + # Remove shipped binaries (kBuild,yasm), see bug #232775
1178 + cd "${S}"
1179 + rm -rf kBuild/bin tools
1180 +}
1181 +
1182 +src_prepare() {
1183 + # PaX fixes (see bug #298988)
1184 + pushd "${WORKDIR}" &>/dev/null || die
1185 + eapply "${FILESDIR}"/vboxguest-4.1.0-log-use-c99.patch
1186 + popd &>/dev/null || die
1187 +
1188 + # Disable things unused or splitted into separate ebuilds
1189 + cp "${FILESDIR}/${PN}-5-localconfig" LocalConfig.kmk || die
1190 + use X || echo "VBOX_WITH_X11_ADDITIONS :=" >> LocalConfig.kmk
1191 +
1192 + # stupid new header references...
1193 + local vboxheader mdir
1194 + for vboxheader in {product,revision,version}-generated.h ; do
1195 + for mdir in vbox{guest,sf} ; do
1196 + ln -sf "${S}"/out/linux.${ARCH}/release/${vboxheader} \
1197 + "${WORKDIR}/${mdir}/${vboxheader}"
1198 + done
1199 + done
1200 +
1201 + # Remove pointless GCC version check
1202 + sed -e '/^check_gcc$/d' -i configure || die
1203 +
1204 + rm "${WORKDIR}/patches/010_virtualbox-5.2.12-qt511.patch" || die
1205 + eapply "${WORKDIR}/patches"
1206 +
1207 + eapply_user
1208 +}
1209 +
1210 +src_configure() {
1211 + # build the user-space tools, warnings are harmless
1212 + local cmd=(
1213 + ./configure
1214 + --nofatal
1215 + --disable-xpcom
1216 + --disable-sdl-ttf
1217 + --disable-pulse
1218 + --disable-alsa
1219 + --with-gcc="$(tc-getCC)"
1220 + --with-g++="$(tc-getCXX)"
1221 + --target-arch=${ARCH}
1222 + --with-linux="${KV_OUT_DIR}"
1223 + --build-headless
1224 + )
1225 + echo "${cmd[@]}"
1226 + "${cmd[@]}" || die "configure failed"
1227 + source ./env.sh
1228 + export VBOX_GCC_OPT="${CFLAGS} ${CPPFLAGS}"
1229 +}
1230 +
1231 +src_compile() {
1232 + MAKE="kmk" \
1233 + emake TOOL_YASM_AS=yasm \
1234 + VBOX_ONLY_ADDITIONS=1 \
1235 + KBUILD_VERBOSE=2
1236 +
1237 + # Now creating the kernel modules. We must do this _after_
1238 + # we compiled the user-space tools as we need two of the
1239 + # automatically generated header files. (>=3.2.0)
1240 + linux-mod_src_compile
1241 +}
1242 +
1243 +src_install() {
1244 + linux-mod_src_install
1245 +
1246 + cd "${S}"/out/linux.${ARCH}/release/bin/additions || die
1247 +
1248 + insinto /sbin
1249 + newins mount.vboxsf mount.vboxsf
1250 + fperms 4755 /sbin/mount.vboxsf
1251 +
1252 + newinitd "${FILESDIR}"/${PN}-8.initd ${PN}
1253 +
1254 + insinto /usr/sbin/
1255 + newins VBoxService vboxguest-service
1256 + fperms 0755 /usr/sbin/vboxguest-service
1257 +
1258 + insinto /usr/bin
1259 + doins VBoxControl
1260 + fperms 0755 /usr/bin/VBoxControl
1261 +
1262 + # VBoxClient user service and xrandr wrapper
1263 + if use X ; then
1264 + doins VBoxClient
1265 + fperms 0755 /usr/bin/VBoxClient
1266 +
1267 + pushd "${S}"/src/VBox/Additions/x11/Installer &>/dev/null \
1268 + || die
1269 + newins 98vboxadd-xclient VBoxClient-all
1270 + fperms 0755 /usr/bin/VBoxClient-all
1271 + popd &>/dev/null || die
1272 + fi
1273 +
1274 + # udev rule for vboxdrv
1275 + local udev_rules_dir="/lib/udev/rules.d"
1276 + dodir ${udev_rules_dir}
1277 + echo 'KERNEL=="vboxguest", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
1278 + >> "${ED%/}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
1279 + || die
1280 + echo 'KERNEL=="vboxuser", OWNER="vboxguest", GROUP="vboxguest", MODE="0660"' \
1281 + >> "${ED%/}/${udev_rules_dir}/60-virtualbox-guest-additions.rules" \
1282 + || die
1283 +
1284 + # VBoxClient autostart file
1285 + insinto /etc/xdg/autostart
1286 + doins "${FILESDIR}"/vboxclient.desktop
1287 +
1288 + # sample xorg.conf
1289 + insinto /usr/share/doc/${PF}
1290 + doins "${FILESDIR}"/xorg.conf.vbox
1291 +
1292 + systemd_dounit "${FILESDIR}/${PN}.service"
1293 +}
1294 +
1295 +pkg_preinst() {
1296 + enewgroup vboxguest
1297 + enewuser vboxguest -1 /bin/sh /dev/null vboxguest
1298 + # automount Error: VBoxServiceAutoMountWorker: Group "vboxsf" does not exist
1299 + enewgroup vboxsf
1300 +}
1301 +
1302 +pkg_postinst() {
1303 + linux-mod_pkg_postinst
1304 + if ! use X ; then
1305 + elog "use flag X is off, enable it to install the"
1306 + elog "X Window System video driver."
1307 + fi
1308 + elog ""
1309 + elog "Please add users to the \"vboxguest\" group so they can"
1310 + elog "benefit from seamless mode, auto-resize and clipboard."
1311 + elog ""
1312 + elog "The vboxsf group has been added to make automount services work."
1313 + elog "These services are part of the shared folders support."
1314 + elog ""
1315 + elog "Please add:"
1316 + elog "/etc/init.d/${PN}"
1317 + elog "to the default runlevel in order to start"
1318 + elog "needed services."
1319 + elog "To use the VirtualBox X driver, use the following"
1320 + elog "file as your /etc/X11/xorg.conf:"
1321 + elog " /usr/share/doc/${PF}/xorg.conf.vbox"
1322 + elog ""
1323 + elog "Also make sure you use the Mesa library for OpenGL:"
1324 + elog " eselect opengl set xorg-x11"
1325 + elog ""
1326 + elog "An autostart .desktop file has been installed to start"
1327 + elog "VBoxClient in desktop sessions."
1328 + elog ""
1329 + elog "You can mount shared folders with:"
1330 + elog " mount -t vboxsf <shared_folder_name> <mount_point>"
1331 + elog ""
1332 + elog "Warning:"
1333 + elog "this ebuild is only needed if you are running gentoo"
1334 + elog "inside a VirtualBox Virtual Machine, you don't need"
1335 + elog "it to run VirtualBox itself."
1336 + elog ""
1337 +}
1338
1339 diff --git a/app-emulation/virtualbox-modules/Manifest b/app-emulation/virtualbox-modules/Manifest
1340 index 5a6e05cde21..6277b66860c 100644
1341 --- a/app-emulation/virtualbox-modules/Manifest
1342 +++ b/app-emulation/virtualbox-modules/Manifest
1343 @@ -1,4 +1,6 @@
1344 DIST vbox-kernel-module-src-5.2.22.tar.xz 638492 BLAKE2B 71aba29b056bb3dfeffbf4632fbf7f15d89b988267ba24c766b78b1d9c50a4d27fb1b8e699108b973af68024f9f77ca0a8ad787355d7342fe1400f14189487ff SHA512 3361bb536af8e8d490377be04d1b1b9af478538e23ec409d3e0205ad930c16e5228c57ae7d92d214ac533ae64298d9eaff3c9284ff9bb308108d1ad7d69fb507
1345 DIST vbox-kernel-module-src-5.2.24.tar.xz 642124 BLAKE2B fbf077b1d94f0b2f6ccb1a9a9f2e9b6f2b02153659f60a28bf3905bbd9aca762bcdbbe1a96ff602048a4d43eb61b8195c1c511bea7248d0593efd7972a17fc5b SHA512 ba0dc0ba4964eb17c421f624e321369a96564f08daa7e6949db9cbde2a182cd29a51f7b0a3215938789bb61e2427cbd38e318e5d909fd54d243ef764f51eb0e4
1346 +DIST vbox-kernel-module-src-5.2.26.tar.xz 642096 BLAKE2B fa908b8dda4c49e880005f22d4ec159ba4e84b20d3cf8f514ec5ad0ea556499b0df25fb714bb5f9a3474e6fc1cba67f6d56fddaee748b9561bbe31a003dd0657 SHA512 7f37be1b35772d59cd3df9b61dec436450de3c038faf2cd22fb891fee7270aa7f87f146f72497ffeb63dfe869cccd3f2788562d23fc51afd83ca19159f2a6810
1347 DIST vbox-kernel-module-src-6.0.0.tar.xz 666352 BLAKE2B 51309dd9fddb1e26e8fce55bae018d96569a28ce1d6850e2b13b47829d0336671d23962191ff4eda0f846c073a94a1d30fa67bb5e5b73f1fda63b6f06acc1225 SHA512 c0c26f2544580e16c525db997a5a3b2cbe1b84b0418cf099d12c67bc72ff7c79b30fe74793d10c710db6a03640ccb5935fbb9df55c2d8aea435beafe0de94385
1348 DIST vbox-kernel-module-src-6.0.2.tar.xz 665352 BLAKE2B 703291334afb8662211dfc5223d66dafa496612ca917637b2d34f6d38475287a1eed00e484965c670da236fdfcc558e0c7ebd081be1f6674603af2c0b6bda549 SHA512 c05f3e89b2fc5a504e77f0617dbe9ccde8de6d9b06e4c2f6d59d90f362b2d5a8207d64b16a8c767e63066a04236934664dfd452b23f4c5a2c4a3b301e07212c9
1349 +DIST vbox-kernel-module-src-6.0.4.tar.xz 666200 BLAKE2B b7a6911a8534ae9e7db5a90fecfaf58394bf61ff1ee925302fdea46443e603535d1508b638c7c3f2440c0fe1176ca85d2f063f99632eb1a9093a9367f2e49fdc SHA512 565d635683f8a5f32c18b1bbf41b38bcab549a019cf0977c8dfbb53310494fb261e485ac11eb48e546c3c4b6ed13b3fb1628013dbc101f042ee9a61b8168122a
1350
1351 diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-5.2.26.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-5.2.26.ebuild
1352 new file mode 100644
1353 index 00000000000..c4b01a1b3f9
1354 --- /dev/null
1355 +++ b/app-emulation/virtualbox-modules/virtualbox-modules-5.2.26.ebuild
1356 @@ -0,0 +1,51 @@
1357 +# Copyright 1999-2019 Gentoo Authors
1358 +# Distributed under the terms of the GNU General Public License v2
1359 +
1360 +# XXX: the tarball here is just the kernel modules split out of the binary
1361 +# package that comes from virtualbox-bin
1362 +
1363 +EAPI=7
1364 +
1365 +inherit linux-mod user
1366 +
1367 +MY_P="vbox-kernel-module-src-${PV}"
1368 +DESCRIPTION="Kernel Modules for Virtualbox"
1369 +HOMEPAGE="https://www.virtualbox.org/"
1370 +SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
1371 +
1372 +LICENSE="GPL-2"
1373 +SLOT="0"
1374 +KEYWORDS="~amd64 ~x86"
1375 +IUSE="pax_kernel"
1376 +
1377 +RDEPEND="!=app-emulation/virtualbox-9999"
1378 +
1379 +S="${WORKDIR}"
1380 +
1381 +BUILD_TARGETS="all"
1382 +BUILD_TARGET_ARCH="${ARCH}"
1383 +MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S}) vboxpci(misc:${S})"
1384 +
1385 +pkg_setup() {
1386 + enewgroup vboxusers
1387 + linux-mod_pkg_setup
1388 + BUILD_PARAMS="CC=$(tc-getBUILD_CC) KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
1389 +}
1390 +
1391 +src_prepare() {
1392 + if use pax_kernel && kernel_is -ge 3 0 0 ; then
1393 + eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
1394 + fi
1395 +
1396 + default
1397 +}
1398 +
1399 +src_install() {
1400 + linux-mod_src_install
1401 + insinto /usr/lib/modules-load.d/
1402 + doins "${FILESDIR}"/virtualbox.conf
1403 +}
1404 +
1405 +pkg_postinst() {
1406 + linux-mod_pkg_postinst
1407 +}
1408
1409 diff --git a/app-emulation/virtualbox-modules/virtualbox-modules-6.0.4.ebuild b/app-emulation/virtualbox-modules/virtualbox-modules-6.0.4.ebuild
1410 new file mode 100644
1411 index 00000000000..7257cb3b581
1412 --- /dev/null
1413 +++ b/app-emulation/virtualbox-modules/virtualbox-modules-6.0.4.ebuild
1414 @@ -0,0 +1,52 @@
1415 +# Copyright 1999-2019 Gentoo Authors
1416 +# Distributed under the terms of the GNU General Public License v2
1417 +
1418 +# XXX: the tarball here is just the kernel modules split out of the binary
1419 +# package that comes from virtualbox-bin
1420 +
1421 +EAPI=7
1422 +
1423 +inherit linux-mod user
1424 +
1425 +MY_P="vbox-kernel-module-src-${PV}"
1426 +DESCRIPTION="Kernel Modules for Virtualbox"
1427 +HOMEPAGE="https://www.virtualbox.org/"
1428 +SRC_URI="https://dev.gentoo.org/~polynomial-c/virtualbox/${MY_P}.tar.xz"
1429 +
1430 +LICENSE="GPL-2"
1431 +SLOT="0"
1432 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
1433 +KEYWORDS="~amd64 ~x86"
1434 +IUSE="pax_kernel"
1435 +
1436 +RDEPEND="!=app-emulation/virtualbox-9999"
1437 +
1438 +S="${WORKDIR}"
1439 +
1440 +BUILD_TARGETS="all"
1441 +BUILD_TARGET_ARCH="${ARCH}"
1442 +MODULE_NAMES="vboxdrv(misc:${S}) vboxnetflt(misc:${S}) vboxnetadp(misc:${S}) vboxpci(misc:${S})"
1443 +
1444 +pkg_setup() {
1445 + enewgroup vboxusers
1446 + linux-mod_pkg_setup
1447 + BUILD_PARAMS="CC=$(tc-getBUILD_CC) KERN_DIR=${KV_DIR} KERN_VER=${KV_FULL} O=${KV_OUT_DIR} V=1 KBUILD_VERBOSE=1"
1448 +}
1449 +
1450 +src_prepare() {
1451 + if use pax_kernel && kernel_is -ge 3 0 0 ; then
1452 + eapply -p0 "${FILESDIR}"/${PN}-5.2.8-pax-const.patch
1453 + fi
1454 +
1455 + default
1456 +}
1457 +
1458 +src_install() {
1459 + linux-mod_src_install
1460 + insinto /usr/lib/modules-load.d/
1461 + doins "${FILESDIR}"/virtualbox.conf
1462 +}
1463 +
1464 +pkg_postinst() {
1465 + linux-mod_pkg_postinst
1466 +}
1467
1468 diff --git a/app-emulation/virtualbox/Manifest b/app-emulation/virtualbox/Manifest
1469 index f15d100c7ab..1402276ac64 100644
1470 --- a/app-emulation/virtualbox/Manifest
1471 +++ b/app-emulation/virtualbox/Manifest
1472 @@ -1,6 +1,8 @@
1473 DIST VirtualBox-5.2.22.tar.bz2 118757134 BLAKE2B be795cdbfb09d3d443f63e190b63898239622f5a57aefdd90f382d9a849d09cc1abc2624071fbc60b2c04a12f33376184540cc362c19225733f99a3bcc8ff6a3 SHA512 4f6c4611a3114778f45419587dc1519ca07410c1ea6474cdb18ecd3b068639a4fdac3f25146fe9b8e006e30f19eba134ce9f665182008b033f6f78497e1ea722
1474 DIST VirtualBox-5.2.24.tar.bz2 118369194 BLAKE2B 2073ec85a641ae80113d41e8363401da5afaf6ea442c2a3c537341f39e06a03a7175463605133e642988f72c4adde4f987905c08f4ba58460953af7169cb4ca0 SHA512 2de5a19ff6aff56a4f7e7b9d7d39b3e787d2ac30d448e3313e915b1cde4b2eedccab44c7a195412efb9e9a6de3c1fb3ee96bde57af93f9ef8f317ffa8b7d4410
1475 +DIST VirtualBox-5.2.26.tar.bz2 118371765 BLAKE2B 32413b72e33f2f63835a2eb2d47dc75a7b63121934bdffd51ff58e9d63d68b77b4f8dac4605916ba8bd6896240d00024ccc3d7d002d4f6f92d6d9b1dc35995e3 SHA512 aee334c74bd02772ac5e0528d84d31661f61c775d0993c00febe125810efc78a2f779db41bf66283be51b19a35540fee14445bada59a8d3b7affa6ef6645005f
1476 DIST VirtualBox-6.0.0.tar.bz2 154322106 BLAKE2B 952e857e5bd6f612272b7bc399af5596d4eb4f13c429c93be7f9e6c4b58e535fe0492806fd51fd5a3f22653f0a42abb2a25ce6b67b5b4712d7e88e34b68eb8cf SHA512 fbe193a3c4dfef943bd75e894452cc684e794e5fa2b25d0292f7fb3e84d5f1a890fe0a3a91dbae9a9b90ec87f12cb3d868457e1767a5841964568cf13a189561
1477 DIST VirtualBox-6.0.2.tar.bz2 155125777 BLAKE2B 2d902fd1963305883eebba85daa03bd17fe8a9ba20e7a6482508879068a809ee80c4a5caffeb26acd0fd4ad29f6f60cf963e1d314e4b01f137ede5b589a74cb9 SHA512 9cfc03eae073ada47c050d2a5eeefa6f724ad2094f2bc3717aa010553ab0dd5af0ed0860bf120727491c7798cdff9219e53cdc3d629f61e3cd12c55068e7401b
1478 +DIST VirtualBox-6.0.4.tar.bz2 155233564 BLAKE2B 6bc4d450e275e8aac5dc62ab05d9ba1450e13965f3eba64819315d121bd0e515319be2ad92ab429f2e598e157e89660561de69a2aac87e14792284669bcec7e8 SHA512 c2e5418bafd5d50b46e1bc70280753c2fdfbf7248d782fc398771839950fb575eaea437e9699d56f4d8c92ea4dc9ba8bed74379565dac6114f7e9c45aecc9fdb
1479 DIST virtualbox-5.2.16-patches-02.tar.xz 3152 BLAKE2B c8d8f3872f544a465c7d1aa07291599307120ac9eabfb299ddd788a11f85ca6c2d84b8e7306ee4ad436270dad0dd39f101ee68a549eac15afd1e3cdc03f23c6c SHA512 85ee8c4045de562d71ab2d761695ea48b6726a6f0c4bcaa2562bb0d147542d3f1a1b5b47cf593a7f22dac1b86f87b59a56bef421dce3e1fa8e5260cd41998450
1480 DIST virtualbox-6.0.0_beta2-patches-01.tar.xz 2732 BLAKE2B a138e715d99f135f16ca21c92781bf6cd8913f7f766bb598eddcd63e98280e568e646f56bbd0a3714f273457ca90db0b77ec7940ba25028506a22891f1af7b2d SHA512 954e4b40d6e272efe756ee0965adb4110d45f764433a89080fda7ebaebbc20031f86a3e0027dfdaa1c6a7d6379a1af557cea71512504e4b57b5f5adbfc86b56e
1481
1482 diff --git a/app-emulation/virtualbox/virtualbox-5.2.26.ebuild b/app-emulation/virtualbox/virtualbox-5.2.26.ebuild
1483 new file mode 100644
1484 index 00000000000..4464ccc84a0
1485 --- /dev/null
1486 +++ b/app-emulation/virtualbox/virtualbox-5.2.26.ebuild
1487 @@ -0,0 +1,480 @@
1488 +# Copyright 1999-2019 Gentoo Authors
1489 +# Distributed under the terms of the GNU General Public License v2
1490 +
1491 +EAPI=6
1492 +
1493 +PYTHON_COMPAT=( python2_7 )
1494 +inherit flag-o-matic gnome2-utils java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
1495 +
1496 +MY_PV="${PV/beta/BETA}"
1497 +MY_PV="${MY_PV/rc/RC}"
1498 +MY_P=VirtualBox-${MY_PV}
1499 +
1500 +DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
1501 +HOMEPAGE="https://www.virtualbox.org/"
1502 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
1503 + https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-5.2.16-patches-02.tar.xz"
1504 +
1505 +LICENSE="GPL-2"
1506 +SLOT="0"
1507 +KEYWORDS="~amd64 ~x86"
1508 +IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
1509 +
1510 +RDEPEND="!app-emulation/virtualbox-bin
1511 + ~app-emulation/virtualbox-modules-${PV}
1512 + dev-libs/libIDL
1513 + >=dev-libs/libxslt-1.1.19
1514 + net-misc/curl
1515 + dev-libs/libxml2
1516 + media-libs/libpng:0=
1517 + media-libs/libvpx:0=
1518 + sys-libs/zlib:=
1519 + !headless? (
1520 + media-libs/libsdl:0[X,video]
1521 + x11-libs/libX11
1522 + x11-libs/libxcb:=
1523 + x11-libs/libXcursor
1524 + x11-libs/libXext
1525 + x11-libs/libXmu
1526 + x11-libs/libXt
1527 + opengl? ( virtual/opengl media-libs/freeglut )
1528 + qt5? (
1529 + dev-qt/qtcore:5
1530 + dev-qt/qtgui:5
1531 + dev-qt/qtprintsupport:5
1532 + dev-qt/qtwidgets:5
1533 + dev-qt/qtx11extras:5
1534 + opengl? ( dev-qt/qtopengl:5 )
1535 + x11-libs/libXinerama
1536 + )
1537 + )
1538 + libressl? ( dev-libs/libressl:= )
1539 + !libressl? ( dev-libs/openssl:0= )
1540 + lvm? ( sys-fs/lvm2 )
1541 + opus? ( media-libs/opus )
1542 + udev? ( >=virtual/udev-171 )
1543 + vnc? ( >=net-libs/libvncserver-0.9.9 )"
1544 +DEPEND="${RDEPEND}
1545 + >=dev-util/kbuild-0.1.9998.3127
1546 + >=dev-lang/yasm-0.6.2
1547 + sys-devel/bin86
1548 + sys-libs/libcap
1549 + sys-power/iasl
1550 + virtual/pkgconfig
1551 + alsa? ( >=media-libs/alsa-lib-1.0.13 )
1552 + doc? (
1553 + app-text/docbook-sgml-dtd:4.4
1554 + dev-texlive/texlive-basic
1555 + dev-texlive/texlive-latex
1556 + dev-texlive/texlive-latexrecommended
1557 + dev-texlive/texlive-latexextra
1558 + dev-texlive/texlive-fontsrecommended
1559 + dev-texlive/texlive-fontsextra
1560 + )
1561 + !headless? ( x11-libs/libXinerama )
1562 + java? ( >=virtual/jdk-1.6 )
1563 + pam? ( sys-libs/pam )
1564 + pax_kernel? ( sys-apps/elfix )
1565 + pulseaudio? ( media-sound/pulseaudio )
1566 + qt5? ( dev-qt/linguist-tools:5 )
1567 + vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
1568 + ${PYTHON_DEPS}"
1569 +RDEPEND="${RDEPEND}
1570 + java? ( >=virtual/jre-1.6 )"
1571 +
1572 +QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
1573 + usr/lib/virtualbox/VBoxSDL.so
1574 + usr/lib/virtualbox/VBoxSharedFolders.so
1575 + usr/lib/virtualbox/VBoxDD2.so
1576 + usr/lib/virtualbox/VBoxOGLrenderspu.so
1577 + usr/lib/virtualbox/VBoxPython.so
1578 + usr/lib/virtualbox/VBoxDD.so
1579 + usr/lib/virtualbox/VBoxDDU.so
1580 + usr/lib/virtualbox/VBoxREM64.so
1581 + usr/lib/virtualbox/VBoxSharedClipboard.so
1582 + usr/lib/virtualbox/VBoxHeadless.so
1583 + usr/lib/virtualbox/VBoxRT.so
1584 + usr/lib/virtualbox/VBoxREM.so
1585 + usr/lib/virtualbox/VBoxSettings.so
1586 + usr/lib/virtualbox/VBoxKeyboard.so
1587 + usr/lib/virtualbox/VBoxSharedCrOpenGL.so
1588 + usr/lib/virtualbox/VBoxVMM.so
1589 + usr/lib/virtualbox/VirtualBox.so
1590 + usr/lib/virtualbox/VBoxOGLhosterrorspu.so
1591 + usr/lib/virtualbox/components/VBoxC.so
1592 + usr/lib/virtualbox/components/VBoxSVCM.so
1593 + usr/lib/virtualbox/components/VBoxDDU.so
1594 + usr/lib/virtualbox/components/VBoxRT.so
1595 + usr/lib/virtualbox/components/VBoxREM.so
1596 + usr/lib/virtualbox/components/VBoxVMM.so
1597 + usr/lib/virtualbox/VBoxREM32.so
1598 + usr/lib/virtualbox/VBoxPython2_7.so
1599 + usr/lib/virtualbox/VBoxXPCOMC.so
1600 + usr/lib/virtualbox/VBoxOGLhostcrutil.so
1601 + usr/lib/virtualbox/VBoxNetDHCP.so
1602 + usr/lib/virtualbox/VBoxNetNAT.so"
1603 +
1604 +S="${WORKDIR}/${MY_P}"
1605 +
1606 +REQUIRED_USE="
1607 + java? ( sdk )
1608 + python? ( sdk )
1609 + vboxwebsrv? ( java )
1610 + ${PYTHON_REQUIRED_USE}
1611 +"
1612 +
1613 +pkg_pretend() {
1614 + if ! use headless && ! use qt5 ; then
1615 + einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
1616 + elif use headless && use qt5 ; then
1617 + einfo "You selected USE=\"headless qt5\", defaulting to"
1618 + einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
1619 + fi
1620 +
1621 + if ! use opengl ; then
1622 + einfo "No USE=\"opengl\" selected, this build will lack"
1623 + einfo "the OpenGL feature."
1624 + fi
1625 + if ! use python ; then
1626 + einfo "You have disabled the \"python\" USE flag. This will only"
1627 + einfo "disable the python bindings being installed."
1628 + fi
1629 +}
1630 +
1631 +pkg_setup() {
1632 + java-pkg-opt-2_pkg_setup
1633 + python-single-r1_pkg_setup
1634 +
1635 + tc-ld-disable-gold #bug 488176
1636 + tc-export CC CXX LD AR RANLIB
1637 + export HOST_CC="$(tc-getBUILD_CC)"
1638 +}
1639 +
1640 +src_prepare() {
1641 + # Remove shipped binaries (kBuild,yasm), see bug #232775
1642 + rm -r kBuild/bin tools || die
1643 +
1644 + # Replace pointless GCC version check with something less stupid.
1645 + # This is needed for the qt5 version check.
1646 + sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
1647 + -i configure || die
1648 +
1649 + # Disable things unused or split into separate ebuilds
1650 + sed -e "s@MY_LIBDIR@$(get_libdir)@" \
1651 + "${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
1652 +
1653 + # Respect LDFLAGS
1654 + sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
1655 + -i Config.kmk src/libs/xpcom18a4/Config.kmk || die
1656 +
1657 + # Do not use hard-coded ld (related to bug #488176)
1658 + sed -e '/QUIET)ld /s@ld @$(LD) @' \
1659 + -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
1660 +
1661 + # Use PAM only when pam USE flag is enbaled (bug #376531)
1662 + if ! use pam ; then
1663 + elog "Disabling PAM removes the possibility to use the VRDP features."
1664 + sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
1665 + sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
1666 + src/VBox/HostServices/Makefile.kmk || die
1667 + fi
1668 +
1669 + # add correct java path
1670 + if use java ; then
1671 + sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
1672 + -i "${S}"/Config.kmk || die
1673 + java-pkg-opt-2_src_prepare
1674 + fi
1675 +
1676 + # Only add nopie patch when we're on hardened
1677 + if gcc-specs-pie ; then
1678 + eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
1679 + fi
1680 +
1681 + # Only add paxmark patch when we're on pax_kernel
1682 + if use pax_kernel ; then
1683 + eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
1684 + fi
1685 +
1686 + rm "${WORKDIR}/patches/008_virtualbox-4.3.14-missing_define.patch" || die
1687 + eapply "${WORKDIR}/patches"
1688 +
1689 + eapply_user
1690 +}
1691 +
1692 +doecho() {
1693 + echo "$@"
1694 + "$@" || die
1695 +}
1696 +
1697 +src_configure() {
1698 + local myconf=(
1699 + --with-gcc="$(tc-getCC)"
1700 + --with-g++="$(tc-getCXX)"
1701 + --disable-dbus
1702 + --disable-kmods
1703 + $(usex alsa '' --disable-alsa)
1704 + $(usex debug --build-debug '')
1705 + $(usex doc '' --disable-docs)
1706 + $(usex java '' --disable-java)
1707 + $(usex lvm '' --disable-devmapper)
1708 + $(usex opus --build-libopus '')
1709 + $(usex pulseaudio '' --disable-pulse)
1710 + $(usex python '' --disable-python)
1711 + $(usex vboxwebsrv --enable-webservice '')
1712 + $(usex vnc --enable-vnc '')
1713 + )
1714 + if ! use headless ; then
1715 + myconf+=(
1716 + $(usex opengl '' --disable-opengl)
1717 + $(usex qt5 '' --disable-qt)
1718 + )
1719 + else
1720 + myconf+=(
1721 + --build-headless
1722 + --disable-opengl
1723 + )
1724 + fi
1725 + if use amd64 && ! has_multilib_profile ; then
1726 + myconf+=( --disable-vmmraw )
1727 + fi
1728 + # not an autoconf script
1729 + doecho ./configure ${myconf[@]}
1730 +}
1731 +
1732 +src_compile() {
1733 + source ./env.sh || die
1734 +
1735 + # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
1736 + MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
1737 + MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
1738 + MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
1739 + MAKE="kmk" emake \
1740 + VBOX_BUILD_PUBLISHER=_Gentoo \
1741 + TOOL_GCC3_CC="$(tc-getCC)" TOOL_GCC3_CXX="$(tc-getCXX)" \
1742 + TOOL_GCC3_AS="$(tc-getCC)" TOOL_GCC3_AR="$(tc-getAR)" \
1743 + TOOL_GCC3_LD="$(tc-getCXX)" TOOL_GCC3_LD_SYSMOD="$(tc-getLD)" \
1744 + TOOL_GCC3_CFLAGS="${CFLAGS}" TOOL_GCC3_CXXFLAGS="${CXXFLAGS}" \
1745 + VBOX_GCC_OPT="${CXXFLAGS}" \
1746 + TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
1747 + all
1748 +}
1749 +
1750 +src_install() {
1751 + local binpath="release"
1752 + use debug && binpath="debug"
1753 + cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
1754 +
1755 + local vbox_inst_path="/usr/$(get_libdir)/${PN}" each fwfile size ico icofile
1756 +
1757 + vbox_inst() {
1758 + local binary="${1}"
1759 + local perms="${2:-0750}"
1760 + local path="${3:-${vbox_inst_path}}"
1761 +
1762 + [[ -n "${binary}" ]] || die "vbox_inst: No binray given!"
1763 + [[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
1764 +
1765 + insinto ${path}
1766 + doins ${binary}
1767 + fowners root:vboxusers ${path}/${binary}
1768 + fperms ${perms} ${path}/${binary}
1769 + }
1770 +
1771 + # Create configuration files
1772 + insinto /etc/vbox
1773 + newins "${FILESDIR}/${PN}-4-config" vbox.cfg
1774 +
1775 + # Set the correct libdir
1776 + sed \
1777 + -e "s@MY_LIBDIR@$(get_libdir)@" \
1778 + -i "${ED%/}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
1779 +
1780 + # Install the wrapper script
1781 + exeinto ${vbox_inst_path}
1782 + newexe "${FILESDIR}/${PN}-ose-5-wrapper" "VBox"
1783 + fowners root:vboxusers ${vbox_inst_path}/VBox
1784 + fperms 0750 ${vbox_inst_path}/VBox
1785 +
1786 + # Install binaries and libraries
1787 + insinto ${vbox_inst_path}
1788 + doins -r components
1789 +
1790 + # *.rc files for x86_64 are only available on multilib systems
1791 + local rcfiles="*.rc"
1792 + if use amd64 && ! has_multilib_profile ; then
1793 + rcfiles=""
1794 + fi
1795 + for each in VBox{ExtPackHelperApp,Manage,SVC,Tunctl,XPCOMIPCD} *so *r0 ${rcfiles} ; do
1796 + vbox_inst ${each}
1797 + done
1798 +
1799 + # These binaries need to be suid root.
1800 + for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
1801 + vbox_inst ${each} 4750
1802 + done
1803 +
1804 + # Install EFI Firmware files (bug #320757)
1805 + pushd "${S}"/src/VBox/Devices/EFI/FirmwareBin &>/dev/null || die
1806 + for fwfile in VBoxEFI{32,64}.fd ; do
1807 + vbox_inst ${fwfile} 0644
1808 + done
1809 + popd &>/dev/null || die
1810 +
1811 + # VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
1812 + # VBoxXPCOMIPCD (bug #524202)
1813 + for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
1814 + pax-mark -m "${ED%/}"${vbox_inst_path}/${each}
1815 + done
1816 +
1817 + # Symlink binaries to the shipped wrapper
1818 + for each in vbox{headless,manage} VBox{Headless,Manage,VRDP} ; do
1819 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
1820 + done
1821 + dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
1822 +
1823 + if use pam ; then
1824 + # VRDPAuth only works with this (bug #351949)
1825 + dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
1826 + fi
1827 +
1828 + # set an env-variable for 3rd party tools
1829 + echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
1830 + doenvd "${T}/90virtualbox"
1831 +
1832 + if ! use headless ; then
1833 + vbox_inst VBoxSDL 4750
1834 + pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxSDL
1835 +
1836 + for each in vboxsdl VBoxSDL ; do
1837 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
1838 + done
1839 +
1840 + if use qt5 ; then
1841 + vbox_inst VirtualBox 4750
1842 + pax-mark -m "${ED%/}"${vbox_inst_path}/VirtualBox
1843 +
1844 + if use opengl ; then
1845 + vbox_inst VBoxTestOGL
1846 + pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxTestOGL
1847 + fi
1848 +
1849 + for each in virtualbox VirtualBox ; do
1850 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
1851 + done
1852 +
1853 + insinto /usr/share/${PN}
1854 + doins -r nls
1855 + doins -r UnattendedTemplates
1856 +
1857 + newmenu "${FILESDIR}"/${PN}-ose.desktop-2 ${PN}.desktop
1858 + fi
1859 +
1860 + pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
1861 + for size in 16 32 48 64 128 ; do
1862 + newicon -s ${size} ${PN}-${size}px.png ${PN}.png
1863 + done
1864 + newicon ${PN}-48px.png ${PN}.png
1865 + doicon -s scalable ${PN}.svg
1866 + popd &>/dev/null || die
1867 + pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
1868 + for size in 16 24 32 48 64 72 96 128 256 512 ; do
1869 + for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
1870 + icofile="${PN}-${ico}-${size}px.png"
1871 + if [[ -f "${icofile}" ]] ; then
1872 + newicon -s ${size} ${icofile} ${PN}-${ico}.png
1873 + fi
1874 + done
1875 + done
1876 + popd &>/dev/null || die
1877 + fi
1878 +
1879 + if use lvm ; then
1880 + vbox_inst VBoxVolInfo 4750
1881 + dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
1882 + fi
1883 +
1884 + if use sdk ; then
1885 + insinto ${vbox_inst_path}
1886 + doins -r sdk
1887 +
1888 + if use java ; then
1889 + java-pkg_regjar "${ED%/}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
1890 + java-pkg_regso "${ED%/}/${vbox_inst_path}/libvboxjxpcom.so"
1891 + fi
1892 + fi
1893 +
1894 + if use udev ; then
1895 + # New way of handling USB device nodes for VBox (bug #356215)
1896 + local udevdir="$(get_udevdir)"
1897 + insinto ${udevdir}
1898 + doins VBoxCreateUSBNode.sh
1899 + fowners root:vboxusers ${udevdir}/VBoxCreateUSBNode.sh
1900 + fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
1901 + insinto ${udevdir}/rules.d
1902 + sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
1903 + > "${T}"/10-virtualbox.rules || die
1904 + doins "${T}"/10-virtualbox.rules
1905 + fi
1906 +
1907 + if use vboxwebsrv ; then
1908 + vbox_inst vboxwebsrv
1909 + dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
1910 + newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
1911 + newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
1912 + fi
1913 +
1914 + if use doc ; then
1915 + dodoc UserManual.pdf
1916 + fi
1917 +
1918 + newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
1919 +}
1920 +
1921 +pkg_postinst() {
1922 + gnome2_icon_cache_update
1923 + xdg_desktop_database_update
1924 +
1925 + if use udev ; then
1926 + udevadm control --reload-rules \
1927 + && udevadm trigger --subsystem-match=usb
1928 + fi
1929 +
1930 + tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
1931 +
1932 + if ! use headless && use qt5 ; then
1933 + elog "To launch VirtualBox just type: \"virtualbox\"."
1934 + fi
1935 + elog "You must be in the vboxusers group to use VirtualBox."
1936 + elog ""
1937 + elog "The latest user manual is available for download at:"
1938 + elog "http://download.virtualbox.org/virtualbox/${PV}/UserManual.pdf"
1939 + elog ""
1940 + elog "For advanced networking setups you should emerge:"
1941 + elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
1942 + elog ""
1943 + elog "Starting with version 4.0.0, ${PN} has USB-1 support."
1944 + elog "For USB-2 support, PXE-boot ability and VRDP support please emerge"
1945 + elog " app-emulation/virtualbox-extpack-oracle"
1946 + elog "package."
1947 + elog "Starting with version 5.0.0, ${PN} no longer has the \"additions\" and"
1948 + elog "the \"extension\" USE flag. For installation of the guest additions ISO"
1949 + elog "image, please emerge"
1950 + elog " app-emulation/virtualbox-additions"
1951 + elog "and for the USB2, USB3, VRDP and PXE boot ROM modules, please emerge"
1952 + elog " app-emulation/virtualbox-extpack-oracle"
1953 + if ! use udev ; then
1954 + elog ""
1955 + elog "WARNING!"
1956 + elog "Without USE=udev, USB devices will likely not work in ${PN}."
1957 + elif [ -e "${ROOT%/}/etc/udev/rules.d/10-virtualbox.rules" ] ; then
1958 + elog ""
1959 + elog "Please remove \"${ROOT%/}/etc/udev/rules.d/10-virtualbox.rules\""
1960 + elog "or else USB in ${PN} won't work."
1961 + fi
1962 +}
1963 +
1964 +pkg_postrm() {
1965 + gnome2_icon_cache_update
1966 + xdg_desktop_database_update
1967 +}
1968
1969 diff --git a/app-emulation/virtualbox/virtualbox-6.0.4.ebuild b/app-emulation/virtualbox/virtualbox-6.0.4.ebuild
1970 new file mode 100644
1971 index 00000000000..32183eb05b9
1972 --- /dev/null
1973 +++ b/app-emulation/virtualbox/virtualbox-6.0.4.ebuild
1974 @@ -0,0 +1,485 @@
1975 +# Copyright 1999-2019 Gentoo Authors
1976 +# Distributed under the terms of the GNU General Public License v2
1977 +
1978 +EAPI=6
1979 +
1980 +PYTHON_COMPAT=( python2_7 )
1981 +inherit flag-o-matic gnome2-utils java-pkg-opt-2 linux-info pax-utils python-single-r1 tmpfiles toolchain-funcs udev xdg-utils
1982 +
1983 +MY_PV="${PV/beta/BETA}"
1984 +MY_PV="${MY_PV/rc/RC}"
1985 +MY_P=VirtualBox-${MY_PV}
1986 +
1987 +DESCRIPTION="Family of powerful x86 virtualization products for enterprise and home use"
1988 +HOMEPAGE="https://www.virtualbox.org/"
1989 +SRC_URI="https://download.virtualbox.org/virtualbox/${MY_PV}/${MY_P}.tar.bz2
1990 + https://dev.gentoo.org/~polynomial-c/${PN}/patchsets/${PN}-6.0.0_beta2-patches-01.tar.xz"
1991 +
1992 +LICENSE="GPL-2"
1993 +SLOT="0"
1994 +[[ "${PV}" == *_beta* ]] || [[ "${PV}" == *_rc* ]] || \
1995 +KEYWORDS="~amd64 ~x86"
1996 +IUSE="alsa debug doc headless java libressl lvm +opus pam pax_kernel pulseaudio +opengl python +qt5 +sdk +udev vboxwebsrv vnc"
1997 +
1998 +RDEPEND="!app-emulation/virtualbox-bin
1999 + ~app-emulation/virtualbox-modules-${PV}
2000 + dev-libs/libIDL
2001 + >=dev-libs/libxslt-1.1.19
2002 + net-misc/curl
2003 + dev-libs/libxml2
2004 + media-libs/libpng:0=
2005 + media-libs/libvpx:0=
2006 + sys-libs/zlib:=
2007 + !headless? (
2008 + media-libs/libsdl:0[X,video]
2009 + x11-libs/libX11
2010 + x11-libs/libxcb:=
2011 + x11-libs/libXcursor
2012 + x11-libs/libXext
2013 + x11-libs/libXmu
2014 + x11-libs/libXt
2015 + opengl? ( virtual/opengl media-libs/freeglut )
2016 + qt5? (
2017 + dev-qt/qtcore:5
2018 + dev-qt/qtgui:5
2019 + dev-qt/qtprintsupport:5
2020 + dev-qt/qtwidgets:5
2021 + dev-qt/qtx11extras:5
2022 + opengl? ( dev-qt/qtopengl:5 )
2023 + x11-libs/libXinerama
2024 + )
2025 + )
2026 + libressl? ( dev-libs/libressl:= )
2027 + !libressl? ( dev-libs/openssl:0= )
2028 + lvm? ( sys-fs/lvm2 )
2029 + opus? ( media-libs/opus )
2030 + udev? ( >=virtual/udev-171 )
2031 + vnc? ( >=net-libs/libvncserver-0.9.9 )"
2032 +DEPEND="${RDEPEND}
2033 + >=dev-util/kbuild-0.1.9998.3127
2034 + >=dev-lang/yasm-0.6.2
2035 + sys-devel/bin86
2036 + sys-libs/libcap
2037 + sys-power/iasl
2038 + virtual/pkgconfig
2039 + alsa? ( >=media-libs/alsa-lib-1.0.13 )
2040 + doc? (
2041 + app-text/docbook-sgml-dtd:4.4
2042 + dev-texlive/texlive-basic
2043 + dev-texlive/texlive-latex
2044 + dev-texlive/texlive-latexrecommended
2045 + dev-texlive/texlive-latexextra
2046 + dev-texlive/texlive-fontsrecommended
2047 + dev-texlive/texlive-fontsextra
2048 + )
2049 + !headless? ( x11-libs/libXinerama )
2050 + java? ( >=virtual/jdk-1.6 )
2051 + pam? ( sys-libs/pam )
2052 + pax_kernel? ( sys-apps/elfix )
2053 + pulseaudio? ( media-sound/pulseaudio )
2054 + qt5? ( dev-qt/linguist-tools:5 )
2055 + vboxwebsrv? ( net-libs/gsoap[-gnutls(-)] )
2056 + ${PYTHON_DEPS}"
2057 +RDEPEND="${RDEPEND}
2058 + java? ( >=virtual/jre-1.6 )"
2059 +
2060 +QA_TEXTRELS_x86="usr/lib/virtualbox-ose/VBoxGuestPropSvc.so
2061 + usr/lib/virtualbox/VBoxSDL.so
2062 + usr/lib/virtualbox/VBoxSharedFolders.so
2063 + usr/lib/virtualbox/VBoxDD2.so
2064 + usr/lib/virtualbox/VBoxOGLrenderspu.so
2065 + usr/lib/virtualbox/VBoxPython.so
2066 + usr/lib/virtualbox/VBoxDD.so
2067 + usr/lib/virtualbox/VBoxDDU.so
2068 + usr/lib/virtualbox/VBoxREM64.so
2069 + usr/lib/virtualbox/VBoxSharedClipboard.so
2070 + usr/lib/virtualbox/VBoxHeadless.so
2071 + usr/lib/virtualbox/VBoxRT.so
2072 + usr/lib/virtualbox/VBoxREM.so
2073 + usr/lib/virtualbox/VBoxSettings.so
2074 + usr/lib/virtualbox/VBoxKeyboard.so
2075 + usr/lib/virtualbox/VBoxSharedCrOpenGL.so
2076 + usr/lib/virtualbox/VBoxVMM.so
2077 + usr/lib/virtualbox/VirtualBox.so
2078 + usr/lib/virtualbox/VBoxOGLhosterrorspu.so
2079 + usr/lib/virtualbox/components/VBoxC.so
2080 + usr/lib/virtualbox/components/VBoxSVCM.so
2081 + usr/lib/virtualbox/components/VBoxDDU.so
2082 + usr/lib/virtualbox/components/VBoxRT.so
2083 + usr/lib/virtualbox/components/VBoxREM.so
2084 + usr/lib/virtualbox/components/VBoxVMM.so
2085 + usr/lib/virtualbox/VBoxREM32.so
2086 + usr/lib/virtualbox/VBoxPython2_7.so
2087 + usr/lib/virtualbox/VBoxXPCOMC.so
2088 + usr/lib/virtualbox/VBoxOGLhostcrutil.so
2089 + usr/lib/virtualbox/VBoxNetDHCP.so
2090 + usr/lib/virtualbox/VBoxNetNAT.so"
2091 +
2092 +S="${WORKDIR}/${MY_P}"
2093 +
2094 +REQUIRED_USE="
2095 + java? ( sdk )
2096 + python? ( sdk )
2097 + vboxwebsrv? ( java )
2098 + ${PYTHON_REQUIRED_USE}
2099 +"
2100 +
2101 +pkg_pretend() {
2102 + if ! use headless && ! use qt5 ; then
2103 + einfo "No USE=\"qt5\" selected, this build will not include any Qt frontend."
2104 + elif use headless && use qt5 ; then
2105 + einfo "You selected USE=\"headless qt5\", defaulting to"
2106 + einfo "USE=\"headless\", this build will not include any X11/Qt frontend."
2107 + fi
2108 +
2109 + if ! use opengl ; then
2110 + einfo "No USE=\"opengl\" selected, this build will lack"
2111 + einfo "the OpenGL feature."
2112 + fi
2113 + if ! use python ; then
2114 + einfo "You have disabled the \"python\" USE flag. This will only"
2115 + einfo "disable the python bindings being installed."
2116 + fi
2117 +}
2118 +
2119 +pkg_setup() {
2120 + java-pkg-opt-2_pkg_setup
2121 + python-single-r1_pkg_setup
2122 +
2123 + tc-ld-disable-gold #bug 488176
2124 + tc-export CC CXX LD AR RANLIB
2125 + export HOST_CC="$(tc-getBUILD_CC)"
2126 +}
2127 +
2128 +src_prepare() {
2129 + # Remove shipped binaries (kBuild,yasm), see bug #232775
2130 + rm -r kBuild/bin tools || die
2131 +
2132 + # Replace pointless GCC version check with something less stupid.
2133 + # This is needed for the qt5 version check.
2134 + sed -e 's@^check_gcc$@cc_maj="$(gcc -dumpversion | cut -d. -f1)" ; cc_min="$(gcc -dumpversion | cut -d. -f2)"@' \
2135 + -i configure || die
2136 +
2137 + # Disable things unused or split into separate ebuilds
2138 + sed -e "s@MY_LIBDIR@$(get_libdir)@" \
2139 + "${FILESDIR}"/${PN}-5-localconfig > LocalConfig.kmk || die
2140 +
2141 + # Respect LDFLAGS
2142 + sed -e "s@_LDFLAGS\.${ARCH}*.*=@& ${LDFLAGS}@g" \
2143 + -i Config.kmk src/libs/xpcom18a4/Config.kmk || die
2144 +
2145 + # Do not use hard-coded ld (related to bug #488176)
2146 + sed -e '/QUIET)ld /s@ld @$(LD) @' \
2147 + -i src/VBox/Devices/PC/ipxe/Makefile.kmk || die
2148 +
2149 + # Use PAM only when pam USE flag is enbaled (bug #376531)
2150 + if ! use pam ; then
2151 + elog "Disabling PAM removes the possibility to use the VRDP features."
2152 + sed -i 's@^.*VBOX_WITH_PAM@#VBOX_WITH_PAM@' Config.kmk || die
2153 + sed -i 's@\(.*/auth/Makefile.kmk.*\)@#\1@' \
2154 + src/VBox/HostServices/Makefile.kmk || die
2155 + fi
2156 +
2157 + # add correct java path
2158 + if use java ; then
2159 + sed "s@/usr/lib/jvm/java-6-sun@$(java-config -O)@" \
2160 + -i "${S}"/Config.kmk || die
2161 + java-pkg-opt-2_src_prepare
2162 + fi
2163 +
2164 + # Only add nopie patch when we're on hardened
2165 + if gcc-specs-pie ; then
2166 + eapply "${FILESDIR}/050_virtualbox-5.2.8-nopie.patch"
2167 + fi
2168 +
2169 + # Only add paxmark patch when we're on pax_kernel
2170 + if use pax_kernel ; then
2171 + eapply "${FILESDIR}"/virtualbox-5.2.8-paxmark-bldprogs.patch
2172 + fi
2173 +
2174 + rm "${WORKDIR}/patches/010_virtualbox-5.2.12-qt511.patch" || die
2175 + eapply "${WORKDIR}/patches"
2176 + eapply "${FILESDIR}"/${PN}-6.0.0-libressl.patch #673800
2177 +
2178 + eapply_user
2179 +}
2180 +
2181 +doecho() {
2182 + echo "$@"
2183 + "$@" || die
2184 +}
2185 +
2186 +src_configure() {
2187 + local myconf=(
2188 + --with-gcc="$(tc-getCC)"
2189 + --with-g++="$(tc-getCXX)"
2190 + --disable-dbus
2191 + --disable-kmods
2192 + $(usex alsa '' --disable-alsa)
2193 + $(usex debug --build-debug '')
2194 + $(usex doc '' --disable-docs)
2195 + $(usex java '' --disable-java)
2196 + $(usex lvm '' --disable-devmapper)
2197 + $(usex opus '' --disable-libopus)
2198 + $(usex pulseaudio '' --disable-pulse)
2199 + $(usex python '' --disable-python)
2200 + $(usex vboxwebsrv --enable-webservice '')
2201 + $(usex vnc --enable-vnc '')
2202 + )
2203 + if ! use headless ; then
2204 + myconf+=(
2205 + $(usex opengl '' --disable-opengl)
2206 + $(usex qt5 '' --disable-qt)
2207 + )
2208 + else
2209 + myconf+=(
2210 + --build-headless
2211 + --disable-opengl
2212 + )
2213 + fi
2214 + if use amd64 && ! has_multilib_profile ; then
2215 + myconf+=( --disable-vmmraw )
2216 + fi
2217 + # not an autoconf script
2218 + doecho ./configure ${myconf[@]}
2219 +}
2220 +
2221 +src_compile() {
2222 + source ./env.sh || die
2223 +
2224 + # Force kBuild to respect C[XX]FLAGS and MAKEOPTS (bug #178529)
2225 + MAKEJOBS=$(grep -Eo '(\-j|\-\-jobs)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
2226 + MAKELOAD=$(grep -Eo '(\-l|\-\-load-average)(=?|[[:space:]]*)[[:digit:]]+' <<< ${MAKEOPTS}) #'
2227 + MAKEOPTS="${MAKEJOBS} ${MAKELOAD}"
2228 + MAKE="kmk" emake \
2229 + VBOX_BUILD_PUBLISHER=_Gentoo \
2230 + TOOL_GCC3_CC="$(tc-getCC)" TOOL_GCC3_CXX="$(tc-getCXX)" \
2231 + TOOL_GCC3_AS="$(tc-getCC)" TOOL_GCC3_AR="$(tc-getAR)" \
2232 + TOOL_GCC3_LD="$(tc-getCXX)" TOOL_GCC3_LD_SYSMOD="$(tc-getLD)" \
2233 + TOOL_GCC3_CFLAGS="${CFLAGS}" TOOL_GCC3_CXXFLAGS="${CXXFLAGS}" \
2234 + VBOX_GCC_OPT="${CXXFLAGS}" \
2235 + TOOL_YASM_AS=yasm KBUILD_VERBOSE=2 \
2236 + all
2237 +}
2238 +
2239 +src_install() {
2240 + local binpath="release"
2241 + use debug && binpath="debug"
2242 + cd "${S}"/out/linux.${ARCH}/${binpath}/bin || die
2243 +
2244 + local vbox_inst_path="/usr/$(get_libdir)/${PN}" each size ico icofile
2245 +
2246 + vbox_inst() {
2247 + local binary="${1}"
2248 + local perms="${2:-0750}"
2249 + local path="${3:-${vbox_inst_path}}"
2250 +
2251 + [[ -n "${binary}" ]] || die "vbox_inst: No binary given!"
2252 + [[ ${perms} =~ ^[[:digit:]]+{4}$ ]] || die "vbox_inst: perms must consist of four digits."
2253 +
2254 + insinto ${path}
2255 + doins ${binary}
2256 + fowners root:vboxusers ${path}/${binary}
2257 + fperms ${perms} ${path}/${binary}
2258 + }
2259 +
2260 + # Create configuration files
2261 + insinto /etc/vbox
2262 + newins "${FILESDIR}/${PN}-4-config" vbox.cfg
2263 +
2264 + # Set the correct libdir
2265 + sed \
2266 + -e "s@MY_LIBDIR@$(get_libdir)@" \
2267 + -i "${ED%/}"/etc/vbox/vbox.cfg || die "vbox.cfg sed failed"
2268 +
2269 + # Install the wrapper script
2270 + exeinto ${vbox_inst_path}
2271 + newexe "${FILESDIR}/${PN}-ose-6-wrapper" "VBox"
2272 + fowners root:vboxusers ${vbox_inst_path}/VBox
2273 + fperms 0750 ${vbox_inst_path}/VBox
2274 +
2275 + # Install binaries and libraries
2276 + insinto ${vbox_inst_path}
2277 + doins -r components
2278 +
2279 + # *.rc files for x86_64 are only available on multilib systems
2280 + local rcfiles="*.rc"
2281 + if use amd64 && ! has_multilib_profile ; then
2282 + rcfiles=""
2283 + fi
2284 + for each in VBox{Autostart,BalloonCtrl,BugReport,CpuReport,ExtPackHelperApp,Manage,SVC,Tunctl,VMMPreload,XPCOMIPCD} *so *r0 ${rcfiles} iPxeBaseBin ; do
2285 + vbox_inst ${each}
2286 + done
2287 +
2288 + # These binaries need to be suid root.
2289 + for each in VBox{Headless,Net{AdpCtl,DHCP,NAT}} ; do
2290 + vbox_inst ${each} 4750
2291 + done
2292 +
2293 + # Install EFI Firmware files (bug #320757)
2294 + for each in VBoxEFI{32,64}.fd ; do
2295 + vbox_inst ${each} 0644
2296 + done
2297 +
2298 + # VBoxSVC and VBoxManage need to be pax-marked (bug #403453)
2299 + # VBoxXPCOMIPCD (bug #524202)
2300 + for each in VBox{Headless,Manage,SVC,XPCOMIPCD} ; do
2301 + pax-mark -m "${ED%/}"${vbox_inst_path}/${each}
2302 + done
2303 +
2304 + # Symlink binaries to the shipped wrapper
2305 + for each in vbox{autostart,balloonctrl,bugreport,headless,manage} VBox{Autostart,BalloonCtrl,BugReport,Headless,Manage,VRDP} ; do
2306 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
2307 + done
2308 + dosym ${vbox_inst_path}/VBoxTunctl /usr/bin/VBoxTunctl
2309 +
2310 + if use pam ; then
2311 + # VRDPAuth only works with this (bug #351949)
2312 + dosym VBoxAuth.so ${vbox_inst_path}/VRDPAuth.so
2313 + fi
2314 +
2315 + # set an env-variable for 3rd party tools
2316 + echo -n "VBOX_APP_HOME=${vbox_inst_path}" > "${T}/90virtualbox"
2317 + doenvd "${T}/90virtualbox"
2318 +
2319 + if ! use headless ; then
2320 + vbox_inst rdesktop-vrdp
2321 + vbox_inst VBoxSDL 4750
2322 + pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxSDL
2323 +
2324 + for each in vboxsdl VBoxSDL ; do
2325 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
2326 + done
2327 +
2328 + if use qt5 ; then
2329 + vbox_inst VirtualBox
2330 + vbox_inst VirtualBoxVM 4750
2331 + for each in VirtualBox{,VM} ; do
2332 + pax-mark -m "${ED%/}"${vbox_inst_path}/${each}
2333 + done
2334 +
2335 + if use opengl ; then
2336 + vbox_inst VBoxTestOGL
2337 + pax-mark -m "${ED%/}"${vbox_inst_path}/VBoxTestOGL
2338 + fi
2339 +
2340 + #for each in virtualbox{,vm} VirtualBox{,VM} ; do
2341 + for each in virtualbox VirtualBox ; do
2342 + dosym ${vbox_inst_path}/VBox /usr/bin/${each}
2343 + done
2344 +
2345 + insinto /usr/share/${PN}
2346 + doins -r nls
2347 + doins -r UnattendedTemplates
2348 +
2349 + domenu ${PN}.desktop
2350 + fi
2351 +
2352 + pushd "${S}"/src/VBox/Artwork/OSE &>/dev/null || die
2353 + for size in 16 32 48 64 128 ; do
2354 + newicon -s ${size} ${PN}-${size}px.png ${PN}.png
2355 + done
2356 + newicon ${PN}-48px.png ${PN}.png
2357 + doicon -s scalable ${PN}.svg
2358 + popd &>/dev/null || die
2359 + pushd "${S}"/src/VBox/Artwork/other &>/dev/null || die
2360 + for size in 16 24 32 48 64 72 96 128 256 512 ; do
2361 + for ico in hdd ova ovf vbox{,-extpack} vdi vdh vmdk ; do
2362 + icofile="${PN}-${ico}-${size}px.png"
2363 + if [[ -f "${icofile}" ]] ; then
2364 + newicon -s ${size} ${icofile} ${PN}-${ico}.png
2365 + fi
2366 + done
2367 + done
2368 + popd &>/dev/null || die
2369 + fi
2370 +
2371 + if use lvm ; then
2372 + vbox_inst VBoxVolInfo 4750
2373 + dosym ${vbox_inst_path}/VBoxVolInfo /usr/bin/VBoxVolInfo
2374 + fi
2375 +
2376 + if use sdk ; then
2377 + insinto ${vbox_inst_path}
2378 + doins -r sdk
2379 +
2380 + if use java ; then
2381 + java-pkg_regjar "${ED%/}/${vbox_inst_path}/sdk/bindings/xpcom/java/vboxjxpcom.jar"
2382 + java-pkg_regso "${ED%/}/${vbox_inst_path}/libvboxjxpcom.so"
2383 + fi
2384 + fi
2385 +
2386 + if use udev ; then
2387 + # New way of handling USB device nodes for VBox (bug #356215)
2388 + local udevdir="$(get_udevdir)"
2389 + insinto ${udevdir}
2390 + doins VBoxCreateUSBNode.sh
2391 + fowners root:vboxusers ${udevdir}/VBoxCreateUSBNode.sh
2392 + fperms 0750 ${udevdir}/VBoxCreateUSBNode.sh
2393 + insinto ${udevdir}/rules.d
2394 + sed "s@%UDEVDIR%@${udevdir}@" "${FILESDIR}"/10-virtualbox.rules \
2395 + > "${T}"/10-virtualbox.rules || die
2396 + doins "${T}"/10-virtualbox.rules
2397 + fi
2398 +
2399 + if use vboxwebsrv ; then
2400 + vbox_inst vboxwebsrv
2401 + dosym ${vbox_inst_path}/VBox /usr/bin/vboxwebsrv
2402 + newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
2403 + newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
2404 + fi
2405 +
2406 + if use doc ; then
2407 + dodoc UserManual.pdf
2408 + fi
2409 +
2410 + newtmpfiles "${FILESDIR}"/${PN}-vboxusb_tmpfilesd ${PN}-vboxusb.conf
2411 +}
2412 +
2413 +pkg_postinst() {
2414 + gnome2_icon_cache_update
2415 + xdg_desktop_database_update
2416 +
2417 + if use udev ; then
2418 + udevadm control --reload-rules \
2419 + && udevadm trigger --subsystem-match=usb
2420 + fi
2421 +
2422 + tmpfiles_process /usr/lib/tmpfiles.d/virtualbox-vboxusb.conf
2423 +
2424 + if ! use headless && use qt5 ; then
2425 + elog "To launch VirtualBox just type: \"virtualbox\"."
2426 + fi
2427 + elog "You must be in the vboxusers group to use VirtualBox."
2428 + elog ""
2429 + elog "The latest user manual is available for download at:"
2430 + elog "http://download.virtualbox.org/virtualbox/${PV}/UserManual.pdf"
2431 + elog ""
2432 + elog "For advanced networking setups you should emerge:"
2433 + elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
2434 + elog ""
2435 + elog "Starting with version 4.0.0, ${PN} has USB-1 support."
2436 + elog "For USB-2 support, PXE-boot ability and VRDP support please emerge"
2437 + elog " app-emulation/virtualbox-extpack-oracle"
2438 + elog "package."
2439 + elog "Starting with version 5.0.0, ${PN} no longer has the \"additions\" and"
2440 + elog "the \"extension\" USE flag. For installation of the guest additions ISO"
2441 + elog "image, please emerge"
2442 + elog " app-emulation/virtualbox-additions"
2443 + elog "and for the USB2, USB3, VRDP and PXE boot ROM modules, please emerge"
2444 + elog " app-emulation/virtualbox-extpack-oracle"
2445 + if ! use udev ; then
2446 + elog ""
2447 + elog "WARNING!"
2448 + elog "Without USE=udev, USB devices will likely not work in ${PN}."
2449 + elif [ -e "${ROOT%/}/etc/udev/rules.d/10-virtualbox.rules" ] ; then
2450 + elog ""
2451 + elog "Please remove \"${ROOT%/}/etc/udev/rules.d/10-virtualbox.rules\""
2452 + elog "or else USB in ${PN} won't work."
2453 + fi
2454 +}
2455 +
2456 +pkg_postrm() {
2457 + gnome2_icon_cache_update
2458 + xdg_desktop_database_update
2459 +}