wok-6.x annotate virtualbox-ose/receipt @ rev 13945

gpm: add post_install
author Pascal Bellard <pascal.bellard@slitaz.org>
date Tue Jan 29 11:17:09 2013 +0100 (2013-01-29)
parents 46fad48f8fc2
children 67294d9d3ea4
rev   line source
slaxemulator@7064 1 # SliTaz package receipt.
slaxemulator@7064 2
slaxemulator@7064 3 PACKAGE="virtualbox-ose"
samuel_trassare@11755 4 VERSION="4.1.8"
slaxemulator@7064 5 CATEGORY="misc"
slaxemulator@7064 6 SHORT_DESC="Powerful x86 virtualization for enterprise as well as home use (Open Source Edition)"
slaxemulator@7064 7 MAINTAINER="slaxemulator@gmail.com"
slaxemulator@7064 8 SOURCE="VirtualBox"
slaxemulator@7814 9 TARBALL="$SOURCE-$VERSION.tar.bz2"
slaxemulator@7064 10 WEB_SITE="http://virtualbox.org/"
slaxemulator@7064 11 WGET_URL="http://download.virtualbox.org/virtualbox/$VERSION/$TARBALL"
pascal@8969 12 PROVIDE="virtualbox"
slaxemulator@7064 13
slaxemulator@9841 14 DEPENDS="libxml2 xorg-libXcursor libIDL xorg-libXinerama libsdl \
slaxemulator@9841 15 xorg-libXmu curl libvncserver libpng jpeg mesa libglu-mesa qt4 vde2"
pascal@10693 16 BUILD_DEPENDS="bin86 dev86 iasl libIDL libsdl-dev mesa-dev libxslt-dev \
pascal@13796 17 libglu-mesa-dev Qt4-dev libsdl-ttf-dev alsa-lib-dev hal-dev xorg-libXtst-dev \
slaxemulator@10578 18 xorg-libXrandr-dev python python-dev xalan-c curl-dev xalan-c-dev \
pascal@10693 19 xerces-c-dev openssl-dev zlib-dev libcap-dev glib-dev libvncserver-dev \
pascal@12446 20 pam pam-dev bzip2 linux-module-headers pkg-config tar wget vde2-dev \
pascal@12446 21 libpng-dev"
slaxemulator@9841 22
slaxemulator@7064 23 # Rules to configure and make the package.
slaxemulator@7064 24 compile_rules()
slaxemulator@7064 25 {
slaxemulator@7064 26 cd $src
slaxemulator@8484 27 patch -Np1 -i "$stuff/virtualbox-4-makeself-check.patch"
slaxemulator@8715 28 patch -Np1 -i "$stuff/virtualbox-4-mkisofs-check.patch"
slaxemulator@8715 29 cp $stuff/LocalConfig.kmk .
slaxemulator@7064 30 ./configure \
slaxemulator@7064 31 --disable-pulse \
slaxemulator@7814 32 --disable-java \
slaxemulator@7814 33 --disable-docs \
slaxemulator@8484 34 --enable-webservice \
slaxemulator@8715 35 --enable-vde \
slaxemulator@7064 36 --with-linux=/usr/src/linux
slaxemulator@7064 37 source ./env.sh
slaxemulator@7064 38 kmk all
slaxemulator@7064 39
pankso@10697 40 # build modules. NOTE: we gor ERROR even if it build and cook will exit
pankso@10697 41 # sed ERROR to error.
slaxemulator@7814 42 cd
slaxemulator@7814 43 KERN_DIR=/usr/src/linux make -C "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src"
slaxemulator@7064 44 # build guest additions modules
slaxemulator@7814 45 KERN_DIR=/usr/src/linux make -C "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src"
pankso@10697 46 KERN_DIR=/usr/src/linux make -C \
pankso@10697 47 "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src/vboxvideo" \
pankso@10697 48 2>&1 | sed s'/ERROR/error/'
slaxemulator@7064 49 }
slaxemulator@7064 50
slaxemulator@7064 51 # Rules to gen a SliTaz package suitable for Tazpkg.
slaxemulator@7064 52 genpkg_rules()
slaxemulator@7064 53 {
slaxemulator@7064 54 fs=$WOK/$PACKAGE/taz/$PACKAGE-$VERSION/fs
slaxemulator@7064 55
slaxemulator@7064 56 source $src/env.sh
slaxemulator@7064 57 cd $src/out/linux.$BUILD_PLATFORM_ARCH/release/bin
slaxemulator@8005 58 mkdir -p $fs/usr/bin $fs/usr/lib/virtualbox/components \
slaxemulator@8715 59 $fs/usr/share/virtualbox/nls \
slaxemulator@8715 60 $fs/usr/lib/virtualbox/ExtensionPacks
slaxemulator@8715 61 install -m 0755 VBox.sh $fs/usr/bin/VBox
slaxemulator@7064 62 sed -i 's/ps -U/ps | grep/' $fs/usr/bin/VBox
slaxemulator@7064 63 ln -sf VBox $fs/usr/bin/VBoxHeadless
slaxemulator@8715 64 ln -sf VBox $fs/usr/bin/vboxheadless
slaxemulator@7064 65 ln -sf VBox $fs/usr/bin/VBoxManage
slaxemulator@8715 66 ln -sf VBox $fs/usr/bin/vboxmanage
slaxemulator@7064 67 ln -sf VBox $fs/usr/bin/VBoxSDL
slaxemulator@8715 68 ln -sf VBox $fs/usr/bin/vboxsdl
slaxemulator@7064 69 ln -sf VBox $fs/usr/bin/VirtualBox
slaxemulator@8715 70 ln -sf VBox $fs/usr/bin/virtualbox
slaxemulator@8715 71 ln -sf VBox $fs/usr/bin/vboxwebsrv
slaxemulator@7064 72
slaxemulator@7064 73 install -m 0755 VBoxTunctl "$fs/usr/bin"
slaxemulator@7064 74
slaxemulator@7064 75 # components
slaxemulator@8715 76 install -D -m 0755 components/* $fs/usr/lib/virtualbox/components
slaxemulator@7064 77
slaxemulator@7064 78 # lib
slaxemulator@7064 79 install -m 0755 *.so "$fs/usr/lib/virtualbox"
slaxemulator@7064 80 install -m 0644 *.gc *.r0 VBoxEFI*.fd "$fs/usr/lib/virtualbox"
slaxemulator@7064 81
slaxemulator@7064 82 #setuid root binaries
slaxemulator@8715 83 install -m 4755 VBoxSDL VirtualBox VBoxHeadless VBoxNetDHCP VBoxNetAdpCtl "$fs/usr/lib/virtualbox"
slaxemulator@7064 84
slaxemulator@7064 85 #other binaries
pascal@9071 86 #install -m 0755 VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL vboxwebsrv webtest "$fs/usr/lib/virtualbox"
pascal@9071 87 install -m 0755 VBoxManage VBoxSVC VBoxExtPackHelperApp VBoxXPCOMIPCD VBoxTestOGL "$fs/usr/lib/virtualbox"
slaxemulator@7064 88
slaxemulator@7064 89 #language
slaxemulator@7064 90 install -m 0755 nls/*.qm "$fs/usr/share/virtualbox/nls"
slaxemulator@8715 91
slaxemulator@8715 92 #useless scripts
slaxemulator@8715 93 install -m 0755 VBoxCreateUSBNode.sh VBoxSysInfo.sh "$fs/usr/share/virtualbox"
slaxemulator@7064 94
slaxemulator@7064 95 #icon
samuel_trassare@11755 96 install -D -m 0644 VBox.png "$fs/usr/share/pixmaps/virtualbox.png"
slaxemulator@7064 97
slaxemulator@7064 98 #desktop
slaxemulator@7064 99 install -D -m 0644 virtualbox.desktop "$fs/usr/share/applications/virtualbox.desktop"
samuel_trassare@11755 100 sed -i "s|VBox.png|virtualbox|" \
samuel_trassare@11755 101 $fs/usr/share/applications/virtualbox.desktop
slaxemulator@8715 102 install -D -m 0644 virtualbox.xml "$fs/usr/share/mime/packages/virtualbox.xml"
slaxemulator@7064 103
slaxemulator@7064 104 #install configuration
slaxemulator@7064 105 mkdir -p "$fs/etc/vbox"
slaxemulator@7064 106 echo 'lsmod | grep -q vboxdrv || modprobe vboxdrv' > "$fs/etc/vbox/vbox.cfg"
slaxemulator@7064 107 echo 'INSTALL_DIR=/usr/lib/virtualbox' >> "$fs/etc/vbox/vbox.cfg"
slaxemulator@7064 108
slaxemulator@7064 109 #udev
slaxemulator@7064 110 install -D -m 0644 "$stuff/60-virtualbox.rules" \
slaxemulator@7064 111 "$fs/etc/udev/rules.d/60-virtualbox.rules"
slaxemulator@7064 112
slaxemulator@7064 113 mkdir -p $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/
slaxemulator@8005 114 cd sdk/installer
slaxemulator@7064 115 VBOX_INSTALL_PATH="/usr/lib/virtualbox" python vboxapisetup.py install --root "$fs"
slaxemulator@8010 116 cd $src/out/linux.$BUILD_PLATFORM_ARCH/release/bin
slaxemulator@8005 117 cd sdk/bindings/xpcom/python
slaxemulator@7064 118 cp -r xpcom $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/
slaxemulator@7064 119 chmod 644 $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/xpcom/*.py
slaxemulator@7064 120 chmod 644 $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/xpcom/server/*.py
slaxemulator@7064 121 chmod 644 $fs/usr/lib/virtualbox/sdk/bindings/xpcom/python/xpcom/client/*.py
slaxemulator@8010 122 cd $src/out/linux.$BUILD_PLATFORM_ARCH/release/bin
slaxemulator@7064 123
slaxemulator@7064 124 # virtualbox-modules
slaxemulator@7064 125 KERNEL_VERSION=`grep ^VERSION= $WOK/linux/receipt | cut -d "=" -f2 | sed -e 's/"//g'`
slaxemulator@7064 126
slaxemulator@7064 127 cd "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/src"
slaxemulator@7064 128 install -D -m644 vboxdrv.ko "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxdrv.ko"
slaxemulator@7064 129 install -D -m644 vboxnetflt.ko "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxnetflt.ko"
slaxemulator@7064 130 install -D -m644 vboxnetadp.ko "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxnetadp.ko"
slaxemulator@7064 131
slaxemulator@7064 132 # virtualbox-ose-additions
slaxemulator@7064 133
slaxemulator@7064 134 cd "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions"
slaxemulator@7064 135 mkdir -p $fs/usr/bin
slaxemulator@7064 136 mkdir -p $fs/sbin
slaxemulator@7064 137 mkdir -p $fs/etc/X11/xorg.conf.d
slaxemulator@7064 138
slaxemulator@7064 139 install -m755 VBoxClient VBoxControl VBoxService "$fs/usr/bin"
slaxemulator@7064 140 install -m755 mount.vboxsf "$fs/sbin"
slaxemulator@7064 141
slaxemulator@7064 142 install -m644 $src/src/VBox/Additions/x11/Installer/50-vboxmouse.conf \
slaxemulator@7064 143 $fs/etc/X11/xorg.conf.d/50-vboxmouse.conf
slaxemulator@7064 144
slaxemulator@7064 145 install -m755 -D $src/src/VBox/Additions/x11/Installer/98vboxadd-xclient \
slaxemulator@7064 146 $fs/usr/bin/VBoxClient-all
slaxemulator@7064 147 install -m755 -D $src/src/VBox/Additions/x11/Installer/vboxclient.desktop \
slaxemulator@7064 148 $fs/etc/xdg/autostart/vboxclient.desktop
slaxemulator@7064 149
slaxemulator@7064 150 install -D vboxmouse_drv_19.so \
slaxemulator@7391 151 "$fs/usr/lib/X11/modules/input/vboxmouse.so"
slaxemulator@7064 152 install -D vboxvideo_drv_19.so \
slaxemulator@7391 153 "$fs/usr/lib/X11/modules/drivers/vboxvideo.so"
slaxemulator@7064 154 install -d "$fs/usr/lib/dri"
slaxemulator@7064 155 install -m755 VBoxOGL*.so "$fs/usr/lib"
slaxemulator@7064 156 ln -s /usr/lib/VBoxOGL.so "$fs/usr/lib/dri/vboxvideo_dri.so"
slaxemulator@7064 157 install -m755 -D pam_vbox.so "$fs/lib/security/pam_vbox.so"
slaxemulator@7064 158
slaxemulator@7064 159 # virtualbox-ose-additions-modules
slaxemulator@7064 160 cd "$src/out/linux.$BUILD_PLATFORM_ARCH/release/bin/additions/src"
slaxemulator@7064 161
slaxemulator@7064 162 cd vboxguest
slaxemulator@7064 163 install -D -m644 vboxguest.ko \
slaxemulator@7064 164 "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxguest.ko"
slaxemulator@7064 165
slaxemulator@7064 166 cd ../vboxsf
slaxemulator@7064 167 install -D -m644 vboxsf.ko \
slaxemulator@7064 168 "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxsf.ko"
slaxemulator@7064 169
slaxemulator@7064 170 cd ../vboxvideo
slaxemulator@7064 171 install -D -m644 vboxvideo.ko \
slaxemulator@7064 172 "$fs/lib/modules/$KERNEL_VERSION-slitaz/misc/vboxvideo.ko"
slaxemulator@7064 173
slaxemulator@7064 174 install -D -m 0644 "$stuff/60-vboxguest.rules" \
slaxemulator@7064 175 "$fs/etc/udev/rules.d/60-vboxguest.rules"
slaxemulator@7064 176 }
slaxemulator@7064 177
slaxemulator@7154 178 pre_remove()
slaxemulator@7154 179 {
slaxemulator@7652 180 sed -i "s/vboxdrv vboxnetadp vboxnetflt //" $1/etc/rcS.conf
slaxemulator@7154 181 }
slaxemulator@7154 182
slaxemulator@7154 183 post_install()
slaxemulator@7154 184 {
slaxemulator@7154 185 KERNEL_VERSION=`grep ^VERSION= $1/var/lib/tazpkg/installed/linux/receipt | cut -d "=" -f2 | sed -e 's/"//g'`
slaxemulator@7154 186
slaxemulator@7159 187 chroot "$1/" depmod -a $KERNEL_VERSION-slitaz
slaxemulator@7154 188 grep -qs vboxdrv $1/etc/rcS.conf ||
slaxemulator@7662 189 sed -i 's/LOAD_MODULES="/&vboxdrv vboxnetadp vboxnetflt /' $1/etc/rcS.conf
slaxemulator@7154 190 }