desktop/virtualbox/PKGBUILD

109 lines
4.1 KiB
Bash
Raw Normal View History

2010-05-31 02:50:48 +08:00
#
# Chakra Packages for Chakra, part of chakra-project.org
#
# maintainer (i686): Phil Miller <philm[at]chakra-project[dog]org>
# maintainer (x86_64): Manuel Tortosa <manutortosa[at]chakra-project[dot]org>
# include global config
source ../_buildscripts/${current_repo}-${_arch}-cfg.conf
2010-10-12 00:20:13 +08:00
pkgname=virtualbox
2011-01-24 23:39:14 +08:00
pkgver=4.0.2
_build=69518
2010-08-07 23:28:30 +08:00
pkgrel=1
2010-05-31 02:50:48 +08:00
pkgdesc="Powerful x86 virtualization (Personal Use Binaries Edition)."
arch=('i686' 'x86_64')
url="http://virtualbox.org"
license=('custom:PUEL')
depends=('libidl2' 'libxcursor' 'libxinerama' 'libxslt' 'curl' 'gcc' 'make' 'kernel26-headers')
2010-10-12 00:20:13 +08:00
optdepends=("qt: for GUI support"
"sdl: for VBoxSDL and GUI support"
"mesa: for OpenGL support"
"libgl: for shared OpenGL support"
"libxt: for shared clipboard support"
2010-05-31 02:50:48 +08:00
"alsa-lib: for ALSA support"
"pulseaudio: for PulseAudio support")
provides=("virtualbox=${pkgver}")
2010-10-12 00:20:13 +08:00
conflicts=('virtualbox-ose' 'virtualbox-modules' 'virtualbox_bin')
replaces=('virtualbox_bin')
2010-05-31 02:50:48 +08:00
install='virtualbox.install'
2010-10-12 00:20:13 +08:00
_filearch='x86'
[ "$CARCH" = "x86_64" ] && _filearch='amd64'
source=("VirtualBox-${pkgver}-${_build}-Linux_${_filearch}.run::http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}-${_build}-Linux_${_filearch}.run"
2010-05-31 02:50:48 +08:00
'10-vboxdrv.rules'
2010-06-04 01:51:40 +08:00
'vboxdrv')
2011-01-24 23:39:14 +08:00
md5sums=('b0ae513901258c3f085cb4ceb3fb9c7c'
2010-05-31 02:50:48 +08:00
'98859bfca9ef2ebf2ea43eb9123316fc'
2010-10-12 00:20:13 +08:00
'8b3b5fb34d5e8594ee873d7947f3d09b')
2011-01-25 05:58:00 +08:00
[ "$CARCH" = "x86_64" ] && md5sums[0]='494de209709e86840ecb6430c9619992'
2010-05-31 02:50:48 +08:00
build() {
# Check and unpack the run package via sh(1)
2010-10-12 00:20:13 +08:00
sh "VirtualBox-${pkgver}-${_build}-Linux_${_filearch}.run" --check
echo yes | sh "VirtualBox-${pkgver}-${_build}-Linux_${_filearch}.run" --target "$srcdir" \
--nox11 --noexec &> /dev/null
2010-05-31 02:50:48 +08:00
# Unpack bundled files
2010-10-12 00:20:13 +08:00
install -d "$pkgdir/opt/VirtualBox"
2010-05-31 02:50:48 +08:00
cd "$pkgdir/opt/VirtualBox"
2010-10-12 00:20:13 +08:00
tar -xjf "$srcdir/VirtualBox.tar.bz2"
2010-05-31 02:50:48 +08:00
2010-10-12 00:20:13 +08:00
install -d "$pkgdir/usr/"{bin,share/applications,share/pixmaps}
2010-05-31 02:50:48 +08:00
# Hardened build: Mark binaries suid root, create symlinks for working around
# unsupported $ORIGIN/.. in VBoxC.so and make sure the
# directory is only writable by the user (paranoid).
chmod 4511 VirtualBox VBox{SDL,Headless,NetDHCP}
for _lib in VBox{VMM,REM,RT,DDU,XPCOM}.so; do
ln -sf "/opt/VirtualBox/${_lib}" "components/${_lib}"
done
chmod go-w .
# VBoxNetAdpCtl needs to be suid root in any case
chmod 4511 VBoxNetAdpCtl
# Replace VirtualBox built-in Qt by system Qt libraries (disabled as of
# 2010-03-26, 3.1.6-1)
#for _lib in libQt{Core,Gui,Network,OpenGL}; do
# rm "${_lib}VBox.so.4"
# ln -s "/usr/lib/${_lib}.so.4" "${_lib}VBox.so.4"
#done
# Install the SDK (disabled, since the extension expects an UCS4-compiled
# python, while Arch Linux has an UCS2-compiled python)
#cd "$pkgdir/opt/VirtualBox/sdk/installer"
2010-10-12 00:20:13 +08:00
#VBOX_INSTALL_PATH="/opt/VirtualBox" python vboxapisetup.py install --root "${pkgdir}"
2010-05-31 02:50:48 +08:00
#rm -Rf build
#cd "$pkgdir/opt/VirtualBox"
rm -Rf sdk vboxshell.py VBoxPython*
2010-06-04 01:51:40 +08:00
# Install rc.d script for module compilation
2010-10-12 00:20:13 +08:00
install -Dm0755 "$srcdir/vboxdrv" "$pkgdir/etc/rc.d/vboxdrv"
2010-06-04 01:51:40 +08:00
# Replace init script stuff
sed -i -e 's,sudo /etc/init.d/vboxdrv setup,/etc/rc.d/vboxdrv setup,g' \
"$pkgdir/opt/VirtualBox/VBox.sh"
sed -i -e 's,sudo /etc/init.d/vboxdrv restart,modprobe vboxdrv,g' \
"$pkgdir/opt/VirtualBox/VBox.sh"
# Install udev rules
2010-10-12 00:20:13 +08:00
install -Dm0644 "$srcdir/10-vboxdrv.rules" "$pkgdir/lib/udev/rules.d/10-vboxdrv.rules"
2010-06-04 01:51:40 +08:00
2010-05-31 02:50:48 +08:00
# Symlink the launchers
for _bin in VirtualBox VBox{Headless,Manage,SDL,SVC,Tunctl,NetAdpCtl} rdesktop-vrdp; do
ln -s "/opt/VirtualBox/${_bin}" "$pkgdir/usr/bin/${_bin}"
done
# Symlink the desktop icon and ".desktop" files
ln -s "/opt/VirtualBox/VBox.png" "$pkgdir/usr/share/pixmaps/VBox.png"
ln -s "/opt/VirtualBox/virtualbox.desktop" "$pkgdir/usr/share/applications/VirtualBox.desktop"
2010-06-04 01:51:40 +08:00
# Symlink the license
2010-10-12 00:20:13 +08:00
install -d "$pkgdir/usr/share/licenses/$pkgname"
2010-06-04 01:51:40 +08:00
ln -s "/opt/VirtualBox/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/PUEL"
2010-05-31 02:50:48 +08:00
# Setup configuration
2010-10-12 00:20:13 +08:00
install -d "$pkgdir/etc/vbox"
2010-05-31 02:50:48 +08:00
echo 'INSTALL_DIR="/opt/VirtualBox"' > "$pkgdir/etc/vbox/vbox.cfg"
}