wok view virtualbox-ose/receipt @ rev 16678

Add virtual packages Qt4, libcairo-compmgr, libpurple
author Pascal Bellard <pascal.bellard@slitaz.org>
date Fri May 16 09:47:35 2014 +0000 (2014-05-16)
parents 860ce5da84ab
children 38ec9a00ec36
line source
1 # SliTaz package receipt.
3 PACKAGE="virtualbox-ose"
4 VERSION="4.2.6"
5 CATEGORY="misc"
6 SHORT_DESC="Powerful x86 virtualization for enterprise as well as home use (Open Source Edition)"
7 MAINTAINER="slaxemulator@gmail.com"
8 LICENSE="GPL2"
9 SOURCE="VirtualBox"
10 TARBALL="$SOURCE-$VERSION.tar.bz2"
11 WEB_SITE="https://www.virtualbox.org/"
12 WGET_URL="http://download.virtualbox.org/virtualbox/$VERSION/$TARBALL"
13 TAGS="virtualization"
14 PROVIDE="virtualbox"
16 DEPENDS="libxml2 xorg-libXcursor libIDL xorg-libXinerama libsdl \
17 xorg-libXmu curl libvncserver libpng jpeg mesa libglu-mesa qt4 vde2"
18 BUILD_DEPENDS="bin86 dev86 iasl libIDL libsdl-dev mesa-dev libxslt-dev \
19 libglu-mesa-dev Qt4-dev libsdl-ttf-dev alsa-lib-dev hal-dev xorg-libXtst-dev \
20 xorg-libXrandr-dev python python-dev xalan-c curl-dev xalan-c-dev \
21 xerces-c-dev openssl-dev zlib-dev libcap-dev glib-dev libvncserver-dev \
22 pam pam-dev bzip2 linux-module-headers pkg-config tar wget vde2-dev \
23 libpng-dev gsoap-dev libdevmapper-dev makeself cdrkit"
25 # Rules to configure and make the package.
26 compile_rules()
27 {
28 cd $src
29 cp $stuff/LocalConfig.kmk .
30 ./configure \
31 --disable-pulse \
32 --disable-java \
33 --disable-docs \
34 --enable-webservice \
35 --enable-vde \
36 --with-linux=/usr/src/linux
37 source ./env.sh
38 kmk all 2>&1 | grep -v 'kmk: No such'
40 # build modules.
41 KERN_DIR=/usr/src/linux make -C "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src"
42 # build guest additions modules
43 KERN_DIR=/usr/src/linux make -C "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src"
44 }
46 # Rules to gen a SliTaz package suitable for Tazpkg.
47 genpkg_rules()
48 {
49 source $src/env.sh
50 cd $src/out/linux.$BUILD_PLATFORM_ARCH/release/bin
51 mkdir -p $fs/usr/bin $fs/usr/lib/virtualbox/components \
52 $fs/usr/share/virtualbox/nls \
53 $fs/usr/lib/virtualbox/ExtensionPacks
54 install -m 0755 VBox.sh $fs/usr/bin/VBox
55 sed -i 's/ps -U/ps | grep/' $fs/usr/bin/VBox
56 ln -sf VBox $fs/usr/bin/VBoxHeadless
57 ln -sf VBox $fs/usr/bin/vboxheadless
58 ln -sf VBox $fs/usr/bin/VBoxManage
59 ln -sf VBox $fs/usr/bin/vboxmanage
60 ln -sf VBox $fs/usr/bin/VBoxSDL
61 ln -sf VBox $fs/usr/bin/vboxsdl
62 ln -sf VBox $fs/usr/bin/VirtualBox
63 ln -sf VBox $fs/usr/bin/virtualbox
64 ln -sf VBox $fs/usr/bin/vboxwebsrv
66 install -m 0755 VBoxTunctl "$fs/usr/bin"
68 # components
69 install -D -m 0755 components/* $fs/usr/lib/virtualbox/components
71 # lib
72 install -m 0755 *.so "$fs/usr/lib/virtualbox"
73 install -m 0644 *.gc *.r0 VBoxEFI*.fd "$fs/usr/lib/virtualbox"
75 #setuid root binaries
76 install -m 4755 VBoxSDL VirtualBox VBoxHeadless VBoxNetDHCP VBoxNetAdpCtl "$fs/usr/lib/virtualbox"
78 #other binaries
79 #install -m 0755 VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL vboxwebsrv webtest "$fs/usr/lib/virtualbox"
80 install -m 0755 VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL "$fs/usr/lib/virtualbox"
82 #language
83 install -m 0755 nls/*.qm "$fs/usr/share/virtualbox/nls"
85 #useless scripts
86 install -m 0755 VBoxCreateUSBNode.sh VBoxSysInfo.sh "$fs/usr/share/virtualbox"
88 #icon
89 install -D -m 0644 VBox.png "$fs/usr/share/pixmaps/virtualbox.png"
91 #desktop
92 install -D -m 0644 virtualbox.desktop "$fs/usr/share/applications/virtualbox.desktop"
93 sed -i "s|VBox.png|virtualbox|" \
94 $fs/usr/share/applications/virtualbox.desktop
95 install -D -m 0644 virtualbox.xml "$fs/usr/share/mime/packages/virtualbox.xml"
97 #install configuration
98 mkdir -p "$fs/etc/vbox"
99 echo 'lsmod | grep -q vboxdrv || modprobe vboxdrv' > "$fs/etc/vbox/vbox.cfg"
100 echo 'INSTALL_DIR=/usr/lib/virtualbox' >> "$fs/etc/vbox/vbox.cfg"
102 #udev
103 install -D -m 0644 "$stuff/10-vboxdrv.rules" \
104 "$fs/etc/udev/rules.d/10-vboxdrv.rules"
106 mkdir -p $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/
107 cd sdk/installer
108 VBOX_INSTALL_PATH="/usr/lib/virtualbox" python vboxapisetup.py install --root "$fs"
109 cd $src/out/linux.$BUILD_PLATFORM_ARCH/release/bin
110 cd sdk/bindings/xpcom/python
111 cp -r xpcom $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/
112 chmod 644 $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/xpcom/*.py
113 chmod 644 $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/xpcom/server/*.py
114 chmod 644 $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/xpcom/client/*.py
115 cd $src/out/linux.$BUILD_PLATFORM_ARCH/release/bin
117 KERNEL_VERSION=$(grep ^VERSION= $WOK/linux/receipt | cut -d "=" -f2 | sed -e 's/"//g')
118 #cooking installs modules in linux major version dir
119 KBASEVER="${KERNEL_VERSION:0:3}"
121 cd "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src"
122 install -D -m644 vboxdrv.ko "$fs/lib/modules/$KBASEVER-slitaz/misc/vboxdrv.ko"
123 install -D -m644 vboxnetflt.ko "$fs/lib/modules/$KBASEVER-slitaz/misc/vboxnetflt.ko"
124 install -D -m644 vboxnetadp.ko "$fs/lib/modules/$KBASEVER-slitaz/misc/vboxnetadp.ko"
125 }
127 pre_remove()
128 {
129 sed -i "s/vboxdrv vboxnetadp vboxnetflt //" $1/etc/rcS.conf
130 chroot $1/ delgroup vboxusers
131 }
133 post_install()
134 {
135 #chroot $1/ udevadm control --reload
136 KERNEL_VERSION=$( chroot $1/ uname -r)
137 chroot $1/ depmod -a $KERNEL_VERSION
138 chroot $1/ modprobe -a vboxdrv vboxnetadp vboxnetflt
139 grep -qs vboxdrv $1/etc/rcS.conf ||
140 sed -i 's/LOAD_MODULES="/&vboxdrv vboxnetadp vboxnetflt /' $1/etc/rcS.conf
141 grep -qs vboxuser $1/etc/group || chroot $1/ addgroup -g 199 vboxusers
142 echo "add yourself to vboxusers group if you want to access"
143 echo "host usb devices: addgroup $USER vboxusers"
144 #i can't get udev to do its work
145 #echo "then logout and login again"
146 echo "then reboot"
147 }