diff options
author | Nicolas Reynolds <fauno@kiwwwi.com.ar> | 2011-10-07 17:33:04 -0300 |
---|---|---|
committer | Nicolas Reynolds <fauno@kiwwwi.com.ar> | 2011-10-07 17:33:04 -0300 |
commit | 2302f1d28510fadb2dcfa119f28ed28f164845bf (patch) | |
tree | e7040e1c743f46bc60a7844275516e4404f6ac30 /community/virtualbox | |
parent | 2a9d1292ab60e8a2356fb3eeb36b8c3cfc22759b (diff) | |
parent | 5442e9b8f357932ed5d6cb46e90fcbf6f453469f (diff) |
Merge branch 'master' of ssh://vparabola/home/parabola/abslibre-pre-mips64el
Conflicts:
community/fotoxx/PKGBUILD
community/gtkdialog/PKGBUILD
community/hubbub/PKGBUILD
community/libgdamm/PKGBUILD
community/libparserutils/PKGBUILD
community/mingw32-binutils/PKGBUILD
community/mingw32-gcc-base/PKGBUILD
community/mingw32-gcc/PKGBUILD
community/mtpaint/PKGBUILD
community/netsurf/PKGBUILD
community/patchage/PKGBUILD
community/qgo/PKGBUILD
community/tomoyo-tools/PKGBUILD
community/tre/PKGBUILD
community/virtualbox/PKGBUILD
core/net-tools/PKGBUILD
core/openldap/PKGBUILD
extra/epiphany/PKGBUILD
extra/evince/PKGBUILD
extra/evolution-data-server/PKGBUILD
extra/evolution/PKGBUILD
extra/exiv2/PKGBUILD
extra/folks/PKGBUILD
extra/gimp-ufraw/PKGBUILD
extra/gnome-control-center/PKGBUILD
extra/gnome-power-manager/PKGBUILD
extra/gnome-python-desktop/PKGBUILD
extra/gnome-python-extras/PKGBUILD
extra/gvfs/PKGBUILD
extra/jack/PKGBUILD
extra/kdelibs/PKGBUILD
extra/kdepim/PKGBUILD
extra/koffice/PKGBUILD
extra/libreoffice/PKGBUILD
extra/libwebkit/PKGBUILD
extra/mutter/PKGBUILD
extra/nautilus/PKGBUILD
extra/openmpi/PKGBUILD
extra/pavucontrol/PKGBUILD
extra/php/PKGBUILD
extra/pidgin/PKGBUILD
extra/postgresql/PKGBUILD
extra/pulseaudio/PKGBUILD
extra/pygobject2/PKGBUILD
extra/swt/PKGBUILD
extra/tomcat/PKGBUILD
extra/totem/PKGBUILD
extra/vigra/PKGBUILD
extra/vte/PKGBUILD
extra/xulrunner/PKGBUILD
kde-unstable/calligra/PKGBUILD
kde-unstable/kdebase-workspace/PKGBUILD
multilib/lib32-atk/PKGBUILD
multilib/lib32-gdk-pixbuf2/PKGBUILD
multilib/lib32-glew/PKGBUILD
multilib/lib32-glib2/PKGBUILD
multilib/lib32-jack/PKGBUILD
multilib/lib32-libpulse/PKGBUILD
multilib/lib32-pango/PKGBUILD
multilib/wine/PKGBUILD
social/miniupnpc/PKGBUILD
testing/icedtea-web-java7/PKGBUILD
testing/sqlite3/PKGBUILD
~xihh/abiword/PKGBUILD
Diffstat (limited to 'community/virtualbox')
-rw-r--r-- | community/virtualbox/PKGBUILD | 33 | ||||
-rw-r--r-- | community/virtualbox/vbox-service.conf | 2 | ||||
-rwxr-xr-x | community/virtualbox/vbox-service.rc | 39 | ||||
-rwxr-xr-x | community/virtualbox/vboxbuild | 78 | ||||
-rw-r--r-- | community/virtualbox/vboxdrv-reference.patch | 8 | ||||
-rw-r--r-- | community/virtualbox/virtualbox.install | 4 |
6 files changed, 142 insertions, 22 deletions
diff --git a/community/virtualbox/PKGBUILD b/community/virtualbox/PKGBUILD index d501e1e05..6ab863216 100644 --- a/community/virtualbox/PKGBUILD +++ b/community/virtualbox/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 54264 2011-08-15 19:54:32Z ibiru $ +# $Id: PKGBUILD 56277 2011-10-04 15:42:56Z ibiru $ #Maintainer: Ionut Biru <ibiru@archlinux.org> pkgbase=virtualbox pkgname=('virtualbox' 'virtualbox-archlinux-additions' 'virtualbox-archlinux-modules' 'virtualbox-sdk') -pkgver=4.1.2 +pkgver=4.1.4 pkgrel=1 arch=('i686' 'x86_64' 'mips64el') url='http://virtualbox.org' @@ -14,8 +14,8 @@ makedepends=('libstdc++5' 'bin86' 'dev86' 'iasl' 'libxslt' 'libxml2' 'libxcursor source=(http://download.virtualbox.org/virtualbox/${pkgver}/VirtualBox-${pkgver}.tar.bz2 UserManual-$pkgver.pdf::http://download.virtualbox.org/virtualbox/${pkgver}/UserManual.pdf virtualbox-4-makeself-check.patch virtualbox-4-mkisofs-check.patch - 10-vboxdrv.rules 60-vboxguest.rules vboxdrv-reference.patch LocalConfig.kmk vboxdrv.sh - change_default_driver_dir.patch) + 10-vboxdrv.rules 60-vboxguest.rules vboxdrv-reference.patch LocalConfig.kmk vboxbuild + change_default_driver_dir.patch vbox-service.conf vbox-service.rc) _kernver=3.0-LIBRE build() { @@ -113,7 +113,7 @@ package_virtualbox() { #sources for modules cp -r src ${pkgdir}/usr/lib/virtualbox #install compilation script - install -D -m 755 "${srcdir}/vboxdrv.sh" "${pkgdir}/etc/rc.d/vboxdrv" + install -D -m 755 "${srcdir}/vboxbuild" "${pkgdir}/usr/bin/vboxbuild" } package_virtualbox-sdk() { @@ -148,16 +148,10 @@ package_virtualbox-archlinux-additions(){ install -m755 VBoxClient VBoxControl VBoxService "$pkgdir/usr/bin" install -m755 mount.vboxsf "$pkgdir/sbin" - install -m644 -D "$srcdir"/VirtualBox-${pkgver}_OSE/src/VBox/Additions/x11/Installer/50-vboxmouse.conf \ - "$pkgdir"/etc/X11/xorg.conf.d/50-vboxmouse.conf - install -m644 -D "$srcdir"/VirtualBox-${pkgver}_OSE/src/VBox/Additions/linux/installer/70-xorg-vboxmouse.rules \ - "$pkgdir"/lib/udev/rules.d/70-xorg-vboxmouse.rules install -m755 -D "$srcdir"/VirtualBox-${pkgver}_OSE/src/VBox/Additions/x11/Installer/98vboxadd-xclient \ "$pkgdir"/usr/bin/VBoxClient-all install -m755 -D "$srcdir"/VirtualBox-${pkgver}_OSE/src/VBox/Additions/x11/Installer/vboxclient.desktop \ "$pkgdir"/etc/xdg/autostart/vboxclient.desktop - install -D vboxmouse_drv_110.so \ - "$pkgdir/usr/lib/xorg/modules/input/vboxmouse.so" install -D vboxvideo_drv_110.so \ "$pkgdir/usr/lib/xorg/modules/drivers/vboxvideo.so" install -d "$pkgdir/usr/lib/xorg/modules/dri" @@ -165,6 +159,11 @@ package_virtualbox-archlinux-additions(){ ln -s /usr/lib/VBoxOGL.so "$pkgdir/usr/lib/xorg/modules/dri/vboxvideo_dri.so" install -m755 -D pam_vbox.so "$pkgdir/lib/security/pam_vbox.so" + # install rc.d script + install -D -m755 "${srcdir}/vbox-service.rc" "${pkgdir}/etc/rc.d/vbox-service" + + # install sample config + install -D -m644 "${srcdir}/vbox-service.conf" "${pkgdir}/etc/conf.d/vbox-service" } package_virtualbox-archlinux-modules(){ @@ -193,13 +192,15 @@ package_virtualbox-archlinux-modules(){ sed -i -e "s/KERNEL_VERSION='.*'/KERNEL_VERSION='${_kernver}'/" "$startdir/virtualbox-archlinux-modules.install" } -md5sums=('945d2c94c15a4f47280be4b01b67e244' - 'cc75a674add48f8b25af2b5e69530a6f' +md5sums=('dc6e6801b3823332b6ca2e9915221aae' + 'bc048d1e58d84ece4a186199ee48d4c8' '44efb3c4be214daa453a317d527f1f30' '32a232b43852b9a08cb11a7bcd64b347' '5f85710e0b8606de967716ded7b2d351' 'ed1341881437455d9735875ddf455fbe' - '4cf75d9c091199a47a7a1bc2f4e347d9' + 'cc3f278bc273011aa95277500a76f677' '78ffa67ff131680f1d2b6f06d4325c5b' - '790a1456345fe74b6b714d71f90a1c6d' - '97e193f050574dd272a38e5ee5ebe62b') + 'dda3811f7d94ac55f12b4de707a7c2c2' + '97e193f050574dd272a38e5ee5ebe62b' + '3c08ad30b89add47d3f45121200a5360' + '778d865e56e31cc592fbfa257fdcfce7') diff --git a/community/virtualbox/vbox-service.conf b/community/virtualbox/vbox-service.conf new file mode 100644 index 000000000..9d4ec629f --- /dev/null +++ b/community/virtualbox/vbox-service.conf @@ -0,0 +1,2 @@ +# VBoxService -h +VBOX_SERVICE_OPTION="" diff --git a/community/virtualbox/vbox-service.rc b/community/virtualbox/vbox-service.rc new file mode 100755 index 000000000..c1af2134d --- /dev/null +++ b/community/virtualbox/vbox-service.rc @@ -0,0 +1,39 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/vbox-service + +name=VBoxService +PID=$(pidof -o %PPID $name) + +case "$1" in + start) + stat_busy "Starting $name service" + [[ -z "$PID" ]] && ${name} $VBOX_SERVICE_OPTION &>/dev/null \ + && { add_daemon $name; stat_done; } \ + || { stat_fail; exit 1; } + ;; + stop) + stat_busy "Stopping $name service" + [[ -n "$PID" ]] && kill $PID &>/dev/null \ + && { rm_daemon $name; stat_done; } \ + || { stat_fail; exit 1; } + ;; + restart) + $0 stop + sleep 1 + $0 start + ;; + status) + stat_busy "Checking $name status"; + ck_status $name + ;; + *) + echo "usage: $0 {start|stop|restart|status}" + exit 1 +esac + +exit 0 + +# vim:set ts=2 sw=2 ft=sh et: diff --git a/community/virtualbox/vboxbuild b/community/virtualbox/vboxbuild new file mode 100755 index 000000000..1058744c5 --- /dev/null +++ b/community/virtualbox/vboxbuild @@ -0,0 +1,78 @@ +#!/bin/bash + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/vbox/vbox.cfg + +MODLIST=() +LOG="/var/log/vbox-install.log" +>| "$LOG" + +if [[ $INSTALL_DIR ]]; then + VBOXMANAGE=$INSTALL_DIR/VBoxManage + BUILDVBOXDRV=$INSTALL_DIR/src/vboxdrv/build_in_tmp + BUILDVBOXNETFLT=$INSTALL_DIR/src/vboxnetflt/build_in_tmp + BUILDVBOXNETADP=$INSTALL_DIR/src/vboxnetadp/build_in_tmp + BUILDVBOXPCI=$INSTALL_DIR/src/vboxpci/build_in_tmp +else + echo "error: missing vbox.cfg" + exit 1 +fi + +if [[ -f /proc/modules ]]; then + IFS=$'\n' read -r -d '' -a MODLIST < \ + <(grep -oE '^vbox(pci|netflt|netadp|drv)' /proc/modules) +fi + +if (( ${#MODLIST[*]} )); then + stat_busy "Unloading VirtualBox kernel modules" + modprobe -ar "${MODLIST[@]}" && stat_done || stat_fail +fi + +for kdir in /lib/modules/*; do + if [[ ! -d $kdir/kernel ]]; then + # found a stale kernel + mods=("$kdir/misc/vbox"{drv,netadp,netflt,pci}.ko*) + if (( ${#mods[@]} )); then + stat_busy "Removing all old VirtualBox kernel modules" + if rm -f "${mods[@]}" && + rmdir -p --ignore-fail-on-non-empty "$p/misc/" 2>/dev/null; then + stat_done + else + stat_fail + fi + fi + fi +done + +# default to the currently running kernel +if (( ! $# )); then + set -- $(uname -r) +fi + +for kernver; do + export KERN_DIR=/lib/modules/$kernver/build + if [[ ! -d $KERN_DIR ]]; then + printf "error: \`%s' does not appear to be a valid kernel build directory.\n" \ + "$KERN_DIR" + continue + fi + + stat_busy "Recompiling VirtualBox kernel modules ($kernver)" + for build in BUILDVBOX{DRV,NETFLT,NETADP,PCI}; do + if ! ${!build} \ + --save-module-symvers /tmp/vboxdrv-Module.symvers \ + --no-print-directory install >> $LOG 2>&1; then + echo "Look at $LOG to find out what went wrong" + stat_fail + continue + fi + done + stat_done +done + +if (( ${#MODLIST[*]} )); then + stat_busy "Reloading VirtualBox kernel modules" + modprobe -a "${MODLIST[@]}" && stat_done || stat_fail +fi + diff --git a/community/virtualbox/vboxdrv-reference.patch b/community/virtualbox/vboxdrv-reference.patch index 05d840f05..c310dbc8d 100644 --- a/community/virtualbox/vboxdrv-reference.patch +++ b/community/virtualbox/vboxdrv-reference.patch @@ -8,7 +8,7 @@ diff -Nur VirtualBox-4.1.0_OSE.orig/src/VBox/Frontends/VirtualBox/src/main.cpp V - " <font color=blue>'/etc/init.d/vboxdrv setup'</font><br/><br/>" - "as root. Users of Ubuntu, Fedora or Mandriva should install the DKMS " - "package first. This package keeps track of Linux kernel changes and " -+ " <font color=blue>'rc.d setup vboxdrv'</font><br/><br/>" ++ " <font color=blue>'/usr/bin/vboxbuild'</font><br/><br/>" + "as root. This package keeps track of Linux kernel changes and" "recompiles the vboxdrv kernel module if necessary." ); @@ -18,7 +18,7 @@ diff -Nur VirtualBox-4.1.0_OSE.orig/src/VBox/Frontends/VirtualBox/src/main.cpp V "VirtualBox. The installation of VirtualBox was apparently not " "successful. Executing<br/><br/>" - " <font color=blue>'/etc/init.d/vboxdrv setup'</font><br/><br/>" -+ " <font color=blue>'rc.d setup vboxdrv'</font><br/><br/>" ++ " <font color=blue>'/usr/bin/vboxbuild'</font><br/><br/>" "may correct this. Make sure that you do not mix the " "OSE version and the PUEL version of VirtualBox." ); @@ -30,7 +30,7 @@ diff -Nur VirtualBox-4.1.0_OSE.orig/src/VBox/Installer/linux/VBox.sh VirtualBox- load. Please recompile the kernel module and install it by - sudo /etc/init.d/vboxdrv setup -+ sudo rc.d setup vboxdrv ++ sudo /usr/bin/vboxbuild You will not be able to start VMs until this problem is fixed. EOF @@ -39,7 +39,7 @@ diff -Nur VirtualBox-4.1.0_OSE.orig/src/VBox/Installer/linux/VBox.sh VirtualBox- WARNING: The character device /dev/vboxdrv does not exist. Try - sudo /etc/init.d/vboxdrv restart -+ sudo rc.d restart vboxdrv ++ sudo /usr/bin/vboxbuild and if that is not successful, try to re-install the package. diff --git a/community/virtualbox/virtualbox.install b/community/virtualbox/virtualbox.install index 97a1b52f9..0eac014f2 100644 --- a/community/virtualbox/virtualbox.install +++ b/community/virtualbox/virtualbox.install @@ -31,7 +31,7 @@ post_install() { ===> To load it automatically, add vboxdrv module ===> to the MODULES array in /etc/rc.conf. -*** To compile the modules do rc.d setup vboxdrv *** +*** To compile the modules do /usr/bin/vboxbuild *** EOF utils @@ -40,7 +40,7 @@ EOF post_upgrade() { getent group vboxusers >> /dev/null || usr/sbin/groupadd -g 108 vboxusers /bin/cat << EOF -*** To recompile the modules do rc.d setup vboxdrv *** +*** To recompile the modules do /usr/bin/vboxbuild *** EOF utils } |