Date: Monday, May 16, 2016 @ 20:55:52 Author: tpowa Revision: 175504 archrelease: copy trunk to community-testing-i686
Added: virtualbox-modules-arch/repos/community-testing-i686/ virtualbox-modules-arch/repos/community-testing-i686/PKGBUILD (from rev 175503, virtualbox-modules-arch/trunk/PKGBUILD) virtualbox-modules-arch/repos/community-testing-i686/build.sh (from rev 175503, virtualbox-modules-arch/trunk/build.sh) virtualbox-modules-arch/repos/community-testing-i686/virtualbox-modules-arch.install (from rev 175503, virtualbox-modules-arch/trunk/virtualbox-modules-arch.install) ---------------------------------+ PKGBUILD | 68 ++++++++++++++++++++++++++++++++++++++ build.sh | 61 ++++++++++++++++++++++++++++++++++ virtualbox-modules-arch.install | 23 ++++++++++++ 3 files changed, 152 insertions(+) Copied: virtualbox-modules-arch/repos/community-testing-i686/PKGBUILD (from rev 175503, virtualbox-modules-arch/trunk/PKGBUILD) =================================================================== --- community-testing-i686/PKGBUILD (rev 0) +++ community-testing-i686/PKGBUILD 2016-05-16 18:55:52 UTC (rev 175504) @@ -0,0 +1,68 @@ +# $Id$ +# Maintainer: Sébastien Luttringer +# Contributor: Ionut Biru <ib...@archlinux.org> + +pkgbase=virtualbox-modules-arch +pkgname=('virtualbox-host-modules-arch' 'virtualbox-guest-modules-arch') +pkgver=5.0.20 +pkgrel=4 +arch=('i686' 'x86_64') +url='http://virtualbox.org' +license=('GPL') +makedepends=('linux>=4.6' 'linux<4.7' + 'linux-headers>=4.6' 'linux-headers<4.7' + "virtualbox-host-dkms>=$pkgver" + "virtualbox-guest-dkms>=$pkgver") + +# remember to also adjust the .install files and the package deps below +_extramodules=extramodules-4.6-ARCH + +package_virtualbox-host-modules-arch(){ + _kernver="$(cat /usr/lib/modules/$_extramodules/version)" + pkgdesc='Virtualbox host kernel modules for Arch Kernel' + depends=('linux>=4.6' 'linux<4.7') + replaces=('virtualbox-modules' 'virtualbox-host-modules') + conflicts=('virtualbox-modules' 'virtualbox-host-modules' + 'virtualbox-host-dkms') + provides=('VIRTUALBOX-HOST-MODULES') + install=virtualbox-modules-arch.install + + cd "/var/lib/dkms/vboxhost/${pkgver}_OSE/$_kernver/$CARCH/module" + install -dm755 "$pkgdir/usr/lib/modules/$_extramodules/" + install -m644 * "$pkgdir/usr/lib/modules/$_extramodules/" + + # compress earch modules individually + find "$pkgdir" -name '*.ko' -exec gzip -9 {} + + + # systemd module loading + install -Dm644 /dev/null "$pkgdir/usr/lib/modules-load.d/$pkgname.conf" + printf "vboxdrv\nvboxpci\nvboxnetadp\nvboxnetflt\n" > \ + "$pkgdir/usr/lib/modules-load.d/$pkgname.conf" +} + +package_virtualbox-guest-modules-arch(){ + _kernver="$(cat /usr/lib/modules/$_extramodules/version)" + pkgdesc='Virtualbox guest kernel modules for Arch Kernel' + license=('GPL') + depends=('linux>=4.6' 'linux<4.7') + replaces=('virtualbox-archlinux-modules' 'virtualbox-guest-modules') + conflicts=('virtualbox-archlinux-modules' 'virtualbox-guest-modules' + 'virtualbox-guest-dkms') + provides=('VIRTUALBOX-GUEST-MODULES') + install=virtualbox-modules-arch.install + + cd "/var/lib/dkms/vboxguest/${pkgver}_OSE/$_kernver/$CARCH/module" + install -dm755 "$pkgdir/usr/lib/modules/$_extramodules/" + install -m644 * "$pkgdir/usr/lib/modules/$_extramodules/" + + # compress earch modules individually + find "$pkgdir" -name '*.ko' -exec gzip -9 {} + + + # systemd module loading + install -Dm644 /dev/null "$pkgdir/usr/lib/modules-load.d/$pkgname.conf" + printf "vboxguest\nvboxsf\nvboxvideo\n" > \ + "$pkgdir/usr/lib/modules-load.d/$pkgname.conf" +} + +# vim:set ts=2 sw=2 et: + Copied: virtualbox-modules-arch/repos/community-testing-i686/build.sh (from rev 175503, virtualbox-modules-arch/trunk/build.sh) =================================================================== --- community-testing-i686/build.sh (rev 0) +++ community-testing-i686/build.sh 2016-05-16 18:55:52 UTC (rev 175504) @@ -0,0 +1,61 @@ +#!/bin/bash +# lazyness can be enhanced everyday + +shopt -s nullglob + +usage() { + echo "usage: $0 extra" + echo " $0 testing" + exit 1 +} + +# $1: reference package +update() { + url="https://www.archlinux.org/packages/$1/x86_64/$2/" + curkernel=$(wget -qO- "$url"|sed -nr "s/.*<h2>$2 ([0-9]+)\.([0-9]+).*<\/h2>.*/\1.\2/p") + case $curkernel in + 3.19) nextkernel="4.0";; + *) nextkernel=${curkernel%.*}.$((${curkernel#*.}+1));; + esac + + echo "** Current kernel: $curkernel" + echo "** Next kernel: $nextkernel" + + sed -ri \ + -e "s/(_?extramodules=).*-(ARCH|lts).*/\1extramodules-$curkernel-\2/i" \ + -e "s/(linux.*>=)[0-9]+.[0-9]+/\1$curkernel/" \ + -e "s/(linux.*<)[0-9]+.[0-9]+/\1$nextkernel/" \ + PKGBUILD *.install +} + +# $1: repo +# $2: arch +build() { + _files=("$PWD"/../../virtualbox/trunk/virtualbox-*-dkms-*-$arch.pkg.tar.xz) + makechrootpkg -c -u "${_files[@]/#/-I}" -r "$1" +} + +(( $# == 1 )) || usage + +# detect lts case +grep -q linux-lts PKGBUILD && suf=-lts + +case $1 in + extra) + update core linux$suf-headers + for arch in x86_64 i686; do + build /var/lib/archbuild/extra-$arch $arch + done + ;; + testing) + update testing linux$suf-headers + for arch in x86_64 i686; do + build /var/lib/archbuild/testing-$arch $arch + done + ;; + *) + usage + ;; +esac + +# vim:set ts=2 sw=2 ft=sh et: Copied: virtualbox-modules-arch/repos/community-testing-i686/virtualbox-modules-arch.install (from rev 175503, virtualbox-modules-arch/trunk/virtualbox-modules-arch.install) =================================================================== --- community-testing-i686/virtualbox-modules-arch.install (rev 0) +++ community-testing-i686/virtualbox-modules-arch.install 2016-05-16 18:55:52 UTC (rev 175504) @@ -0,0 +1,23 @@ +_depmod() { + EXTRAMODULES=extramodules-4.6-ARCH + depmod $(cat /usr/lib/modules/$EXTRAMODULES/version) +} + +post_install() { + cat << EOF +==> Virtualbox kernel modules will be loaded at boot time by systemd-modules-load. +==> In order to use them right now, you may want to load them manually. +==> Read modules-load.d man page to disable module boot loading.' +EOF + _depmod +} + +post_upgrade() { + _depmod +} + +post_remove() { + _depmod +} + +# vim:set ts=2 sw=2 et: