Gentoo Archives: gentoo-commits

From: "Lars Wendler (polynomial-c)" <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in app-emulation/virtualbox-bin: ChangeLog virtualbox-bin-3.2.12-r1.ebuild virtualbox-bin-3.2.12.ebuild
Date: Fri, 31 Dec 2010 11:42:26
Message-Id: 20101231114215.6A35120054@flycatcher.gentoo.org
1 polynomial-c 10/12/31 11:42:15
2
3 Modified: ChangeLog
4 Added: virtualbox-bin-3.2.12-r1.ebuild
5 Removed: virtualbox-bin-3.2.12.ebuild
6 Log:
7 Make VBoxNetDHCP SUID root (bug #349769).
8
9 (Portage version: 2.2.0_alpha10/cvs/Linux x86_64)
10
11 Revision Changes Path
12 1.95 app-emulation/virtualbox-bin/ChangeLog
13
14 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/virtualbox-bin/ChangeLog?rev=1.95&view=markup
15 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/virtualbox-bin/ChangeLog?rev=1.95&content-type=text/plain
16 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/virtualbox-bin/ChangeLog?r1=1.94&r2=1.95
17
18 Index: ChangeLog
19 ===================================================================
20 RCS file: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-bin/ChangeLog,v
21 retrieving revision 1.94
22 retrieving revision 1.95
23 diff -u -r1.94 -r1.95
24 --- ChangeLog 3 Dec 2010 13:58:57 -0000 1.94
25 +++ ChangeLog 31 Dec 2010 11:42:15 -0000 1.95
26 @@ -1,6 +1,13 @@
27 # ChangeLog for app-emulation/virtualbox-bin
28 # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
29 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-bin/ChangeLog,v 1.94 2010/12/03 13:58:57 polynomial-c Exp $
30 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-bin/ChangeLog,v 1.95 2010/12/31 11:42:15 polynomial-c Exp $
31 +
32 +*virtualbox-bin-3.2.12-r1 (31 Dec 2010)
33 +
34 + 31 Dec 2010; Lars Wendler <polynomial-c@g.o>
35 + -virtualbox-bin-3.2.12.ebuild, +virtualbox-bin-3.2.12-r1.ebuild:
36 + Make VBoxNetDHCP SUID root. Thanks to Florent Bondoux for reporting this in
37 + bug #349769.
38
39 *virtualbox-bin-3.2.12 (03 Dec 2010)
40
41
42
43
44 1.1 app-emulation/virtualbox-bin/virtualbox-bin-3.2.12-r1.ebuild
45
46 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/virtualbox-bin/virtualbox-bin-3.2.12-r1.ebuild?rev=1.1&view=markup
47 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/app-emulation/virtualbox-bin/virtualbox-bin-3.2.12-r1.ebuild?rev=1.1&content-type=text/plain
48
49 Index: virtualbox-bin-3.2.12-r1.ebuild
50 ===================================================================
51 # Copyright 1999-2010 Gentoo Foundation
52 # Distributed under the terms of the GNU General Public License v2
53 # $Header: /var/cvsroot/gentoo-x86/app-emulation/virtualbox-bin/virtualbox-bin-3.2.12-r1.ebuild,v 1.1 2010/12/31 11:42:15 polynomial-c Exp $
54
55 EAPI=2
56
57 inherit eutils fdo-mime pax-utils
58
59 MY_PV=${PV}-68302
60 SDK_PV=${MY_PV}
61 MY_P=VirtualBox-${MY_PV}-Linux
62
63 DESCRIPTION="Family of powerful x86 virtualization products for enterprise as well as home use"
64 HOMEPAGE="http://www.virtualbox.org/"
65 SRC_URI="amd64? ( http://download.virtualbox.org/virtualbox/${PV}/${MY_P}_amd64.run )
66 x86? ( http://download.virtualbox.org/virtualbox/${PV}/${MY_P}_x86.run )
67 sdk? ( http://download.virtualbox.org/virtualbox/${PV}/VirtualBoxSDK-${SDK_PV}.zip )"
68
69 LICENSE="PUEL"
70 SLOT="0"
71 KEYWORDS="~amd64 ~x86"
72 IUSE="+additions +chm headless python sdk vboxwebsrv rdesktop-vrdp"
73 RESTRICT="mirror"
74
75 DEPEND="app-arch/unzip"
76
77 RDEPEND="!!app-emulation/virtualbox-ose
78 !app-emulation/virtualbox-ose-additions
79 ~app-emulation/virtualbox-modules-${PV}
80 !headless? (
81 x11-libs/libXcursor
82 media-libs/libsdl[X]
83 x11-libs/libXrender
84 x11-libs/libXfixes
85 media-libs/libpng
86 x11-libs/libXi
87 x11-libs/libXrandr
88 x11-libs/libXinerama
89 x11-libs/libXft
90 media-libs/freetype
91 media-libs/fontconfig
92 x11-libs/libXext
93 dev-libs/glib
94 chm? ( dev-libs/expat )
95 )
96 x11-libs/libXt
97 dev-libs/libxml2
98 x11-libs/libXau
99 x11-libs/libX11
100 x11-libs/libXmu
101 x11-libs/libSM
102 x11-libs/libICE
103 x11-libs/libXdmcp
104 python? ( || (
105 dev-lang/python:2.7
106 dev-lang/python:2.6
107 dev-lang/python:2.5
108 dev-lang/python:2.4
109 ) )"
110
111 S=${WORKDIR}
112
113 QA_TEXTRELS_amd64="opt/VirtualBox/VBoxVMM.so"
114 QA_TEXTRELS_x86="opt/VirtualBox/VBoxGuestPropSvc.so
115 opt/VirtualBox/VBoxSDL.so
116 opt/VirtualBox/VBoxDbg.so
117 opt/VirtualBox/VBoxSharedFolders.so
118 opt/VirtualBox/VBoxDD2.so
119 opt/VirtualBox/VBoxOGLrenderspu.so
120 opt/VirtualBox/VBoxPython.so
121 opt/VirtualBox/VBoxPython2_3.so
122 opt/VirtualBox/VBoxPython2_4.so
123 opt/VirtualBox/VBoxPython2_5.so
124 opt/VirtualBox/VBoxPython2_6.so
125 opt/VirtualBox/VBoxPython2_7.so
126 opt/VirtualBox/VBoxPython3_0.so
127 opt/VirtualBox/VBoxPython3_1.so
128 opt/VirtualBox/VBoxDD.so
129 opt/VirtualBox/VBoxVRDP.so
130 opt/VirtualBox/VBoxDDU.so
131 opt/VirtualBox/VBoxREM64.so
132 opt/VirtualBox/VBoxSharedClipboard.so
133 opt/VirtualBox/VBoxHeadless.so
134 opt/VirtualBox/VBoxRT.so
135 opt/VirtualBox/VRDPAuth.so
136 opt/VirtualBox/VBoxREM.so
137 opt/VirtualBox/VBoxSettings.so
138 opt/VirtualBox/VBoxKeyboard.so
139 opt/VirtualBox/VBoxSharedCrOpenGL.so
140 opt/VirtualBox/VBoxVMM.so
141 opt/VirtualBox/VirtualBox.so
142 opt/VirtualBox/VBoxOGLhosterrorspu.so
143 opt/VirtualBox/components/VBoxC.so
144 opt/VirtualBox/components/VBoxSVCM.so
145 opt/VirtualBox/VBoxREM32.so
146 opt/VirtualBox/VBoxPython2_5.so
147 opt/VirtualBox/VBoxXPCOMC.so
148 opt/VirtualBox/VBoxOGLhostcrutil.so
149 opt/VirtualBox/VBoxNetDHCP.so
150 opt/VirtualBox/VBoxGuestControlSvc.so"
151 QA_PRESTRIPPED="opt/VirtualBox/VBoxDD.so
152 opt/VirtualBox/VBoxDD2.so
153 opt/VirtualBox/VBoxDDU.so
154 opt/VirtualBox/VBoxDbg.so
155 opt/VirtualBox/VBoxGuestControlSvc.so
156 opt/VirtualBox/VBoxGuestPropSvc.so
157 opt/VirtualBox/VBoxHeadless
158 opt/VirtualBox/VBoxHeadless.so
159 opt/VirtualBox/VBoxKeyboard.so
160 opt/VirtualBox/VBoxManage
161 opt/VirtualBox/VBoxNetAdpCtl
162 opt/VirtualBox/VBoxNetDHCP
163 opt/VirtualBox/VBoxNetDHCP.so
164 opt/VirtualBox/VBoxOGLhostcrutil.so
165 opt/VirtualBox/VBoxOGLhosterrorspu.so
166 opt/VirtualBox/VBoxOGLrenderspu.so
167 opt/VirtualBox/VBoxPython.so
168 opt/VirtualBox/VBoxPython2_3.so
169 opt/VirtualBox/VBoxPython2_4.so
170 opt/VirtualBox/VBoxPython2_5.so
171 opt/VirtualBox/VBoxPython2_6.so
172 opt/VirtualBox/VBoxPython2_7.so
173 opt/VirtualBox/VBoxPython3_0.so
174 opt/VirtualBox/VBoxPython3_1.so
175 opt/VirtualBox/VBoxREM.so
176 opt/VirtualBox/VBoxREM32.so
177 opt/VirtualBox/VBoxREM64.so
178 opt/VirtualBox/VBoxRT.so
179 opt/VirtualBox/VBoxSDL
180 opt/VirtualBox/VBoxSDL.so
181 opt/VirtualBox/VBoxSVC
182 opt/VirtualBox/VBoxSettings.so
183 opt/VirtualBox/VBoxSharedClipboard.so
184 opt/VirtualBox/VBoxSharedCrOpenGL.so
185 opt/VirtualBox/VBoxSharedFolders.so
186 opt/VirtualBox/VBoxTestOGL
187 opt/VirtualBox/VBoxTunctl
188 opt/VirtualBox/VBoxVMM.so
189 opt/VirtualBox/VBoxVRDP.so
190 opt/VirtualBox/VBoxXPCOM.so
191 opt/VirtualBox/VBoxXPCOMC.so
192 opt/VirtualBox/VBoxXPCOMIPCD
193 opt/VirtualBox/VRDPAuth.so
194 opt/VirtualBox/VirtualBox
195 opt/VirtualBox/VirtualBox.so
196 opt/VirtualBox/accessible/libqtaccessiblewidgets.so
197 opt/VirtualBox/components/VBoxC.so
198 opt/VirtualBox/components/VBoxSVCM.so
199 opt/VirtualBox/components/VBoxXPCOMIPCC.so
200 opt/VirtualBox/kchmviewer
201 opt/VirtualBox/libQtCoreVBox.so.4
202 opt/VirtualBox/libQtGuiVBox.so.4
203 opt/VirtualBox/libQtNetworkVBox.so.4
204 opt/VirtualBox/libQtOpenGLVBox.so.4
205 opt/VirtualBox/vboxwebsrv"
206
207 src_unpack() {
208 unpack_makeself ${MY_P}_${ARCH}.run
209 unpack ./VirtualBox.tar.bz2
210
211 if use sdk; then
212 unpack VirtualBoxSDK-${SDK_PV}.zip
213 fi
214 }
215
216 src_install() {
217 # create virtualbox configurations files
218 insinto /etc/vbox
219 newins "${FILESDIR}/${PN}-config" vbox.cfg
220
221 if ! use headless ; then
222 newicon VBox.png ${PN}.png
223 newmenu "${FILESDIR}"/${PN}.desktop-2 ${PN}.desktop
224 fi
225
226 insinto /opt/VirtualBox
227 dodir /opt/bin
228
229 doins UserManual.pdf
230
231 if use sdk ; then
232 doins -r sdk || die
233 fi
234
235 if use additions; then
236 doins -r additions || die
237 fi
238
239 if use vboxwebsrv; then
240 doins vboxwebsrv || die
241 fowners root:vboxusers /opt/VirtualBox/vboxwebsrv
242 fperms 0750 /opt/VirtualBox/vboxwebsrv
243 dosym /opt/VirtualBox/VBox.sh /opt/bin/vboxwebsrv
244 newinitd "${FILESDIR}"/vboxwebsrv-initd vboxwebsrv
245 newconfd "${FILESDIR}"/vboxwebsrv-confd vboxwebsrv
246 fi
247
248 if use rdesktop-vrdp; then
249 doins rdesktop-vrdp || die
250 doins -r rdesktop-vrdp-keymaps || die
251 fperms 0750 /opt/VirtualBox/rdesktop-vrdp
252 fi
253
254 if ! use headless && use chm; then
255 doins kchmviewer VirtualBox.chm || die
256 fowners root:vboxusers /opt/VirtualBox/kchmviewer
257 fperms 0750 /opt/VirtualBox/kchmviewer
258 fi
259
260 if use python; then
261 local pyver
262 for pyver in 2.4 2.5 2.6 2.7 3.0 3.1 ; do
263 if has_version "=dev-lang/python-${pyver}*" && [ -f "${S}/VBoxPython${pyver/./_}.so" ] ; then
264 doins VBoxPython${pyver/./_}.so || die
265 fi
266 done
267 fi
268
269 rm -rf src rdesktop* deffiles install* routines.sh runlevel.sh \
270 vboxdrv.sh VBox.sh VBox.png vboxnet.sh additions VirtualBox.desktop \
271 VirtualBox.tar.bz2 LICENSE VBoxSysInfo.sh rdesktop* vboxwebsrv \
272 webtest kchmviewer VirtualBox.chm vbox-create-usb-node.sh \
273 90-vbox-usb.fdi uninstall.sh vboxshell.py vboxdrv-pardus.py \
274 VBoxPython?_*.so
275
276 if use headless ; then
277 rm -rf VBoxSDL VirtualBox VBoxKeyboard.so
278 fi
279
280 doins -r * || die
281
282 # create symlinks for working around unsupported $ORIGIN/.. in VBoxC.so (setuid)
283 dosym /opt/VirtualBox/VBoxVMM.so /opt/VirtualBox/components/VBoxVMM.so
284 dosym /opt/VirtualBox/VBoxREM.so /opt/VirtualBox/components/VBoxREM.so
285 dosym /opt/VirtualBox/VBoxRT.so /opt/VirtualBox/components/VBoxRT.so
286 dosym /opt/VirtualBox/VBoxDDU.so /opt/VirtualBox/components/VBoxDDU.so
287 dosym /opt/VirtualBox/VBoxXPCOM.so /opt/VirtualBox/components/VBoxXPCOM.so
288
289 local each
290 for each in VBox{Manage,SVC,XPCOMIPCD,Tunctl,NetAdpCtl,NetDHCP,TestOGL}; do
291 fowners root:vboxusers /opt/VirtualBox/${each}
292 fperms 0750 /opt/VirtualBox/${each}
293 pax-mark -m "${D}"/opt/VirtualBox/${each}
294 done
295 # VBoxNetAdpCtl and VBoxNetDHCP binaries need to be suid root in any case..
296 fperms 4750 /opt/VirtualBox/VBoxNetAdpCtl
297 fperms 4750 /opt/VirtualBox/VBoxNetDHCP
298
299 if ! use headless ; then
300 # Hardened build: Mark selected binaries set-user-ID-on-execution
301 for each in VBox{SDL,Headless} VirtualBox; do
302 fowners root:vboxusers /opt/VirtualBox/${each}
303 fperms 4510 /opt/VirtualBox/${each}
304 pax-mark -m "${D}"/opt/VirtualBox/${each}
305 done
306
307 dosym /opt/VirtualBox/VBox.sh /opt/bin/VirtualBox
308 dosym /opt/VirtualBox/VBox.sh /opt/bin/VBoxSDL
309 else
310 # Hardened build: Mark selected binaries set-user-ID-on-execution
311 fowners root:vboxusers /opt/VirtualBox/VBoxHeadless
312 fperms 4510 /opt/VirtualBox/VBoxHeadless
313 pax-mark -m "${D}"/opt/VirtualBox/VBoxHeadless
314 fi
315
316 if use rdesktop-vrdp; then
317 dosym /opt/VirtualBox/rdesktop-vrdp /opt/bin/rdesktop-vrdp
318 fi
319
320 exeinto /opt/VirtualBox
321 newexe "${FILESDIR}/${PN}-3-wrapper" "VBox.sh" || die
322 fowners root:vboxusers /opt/VirtualBox/VBox.sh
323 fperms 0750 /opt/VirtualBox/VBox.sh
324
325 dosym /opt/VirtualBox/VBox.sh /opt/bin/VBoxManage
326 dosym /opt/VirtualBox/VBox.sh /opt/bin/VBoxVRDP
327 dosym /opt/VirtualBox/VBox.sh /opt/bin/VBoxHeadless
328 dosym /opt/VirtualBox/VBoxTunctl /opt/bin/VBoxTunctl
329
330 # set an env-variable for 3rd party tools
331 echo -n "VBOX_APP_HOME=/opt/VirtualBox" > "${T}/90virtualbox"
332 doenvd "${T}/90virtualbox"
333 }
334
335 pkg_postinst() {
336 fdo-mime_desktop_database_update
337 elog ""
338 if ! use headless ; then
339 elog "To launch VirtualBox just type: \"VirtualBox\""
340 elog ""
341 fi
342 elog "You must be in the vboxusers group to use VirtualBox."
343 elog ""
344 elog "For advanced networking setups you should emerge:"
345 elog "net-misc/bridge-utils and sys-apps/usermode-utilities"
346 elog ""
347 elog "Please visit http://www.virtualbox.org/wiki/Editions for"
348 elog "an overview about the different features of ${PN}"
349 elog "and virtualbox-ose"
350 }
351
352 pkg_postrm() {
353 fdo-mime_desktop_database_update
354 }