core/dkms/PKGBUILD

59 lines
1.7 KiB
Bash

pkgname=dkms
pkgver=2.3+git161025
pkgrel=1
pkgdesc='Dynamic Kernel Modules System'
arch=('any')
url='http://linux.dell.com/dkms/'
license=('GPL2')
depends=('bash' 'kmod' 'gcc' 'make' 'patch')
makedepends=('git')
optdepends=('linux-headers: build modules against Chakra kernel'
'linux-lts-headers: build modules against LTS Chakra kernel')
backup=('etc/dkms/framework.conf' 'etc/default/dkms')
install=$pkgname.install
source=('git+https://github.com/dell/dkms.git#commit=88e020c'
"$pkgname.default"
"$pkgname.service"
"$pkgname.systemd"
'02-no-kernel-hook.patch')
md5sums=('SKIP'
'33be2fbf1bcc1b3fb2f38d9e7eaa809d'
'02e9744e3fdc3d2f68e46966fb32e260'
'267632312aa52a190ec0db0758920dd3'
'82d520c39c99c34977e48b313a189c6c')
prepare() {
cd dkms
# apply patch from the source array (should be a pacman feature)
local filename
for filename in "${source[@]}"; do
if [[ "$filename" =~ \.patch$ ]]; then
msg2 "Applying patch $filename"
patch -p1 -N -i "$srcdir/$filename"
fi
done
# /usr move
msg2 '/usr move patching'
for i in dkms{,_framework.conf,.bash-completion,.8,_common.postinst}; do
sed -ri 's,/lib/modules,/usr/lib/modules,g' "$i"
done
# fix hardcoded paths
sed -i "s|/sbin/depmod|depmod|" dkms
}
package() {
# systemd
install -D -m 644 $pkgname.service "$pkgdir/usr/lib/systemd/system/$pkgname.service"
install -D -m 755 $pkgname.systemd "$pkgdir/usr/lib/systemd/scripts/$pkgname"
install -D -m 644 $pkgname.default "$pkgdir/etc/default/$pkgname"
# upstream installer
cd dkms
make \
DESTDIR="$pkgdir" \
BASHDIR="$pkgdir/usr/share/bash-completion/completions" \
install
}