# Maintainer: Sébastien Luttringer # Contributor: Balwinder S "bsd" Dheeman (bdheeman AT gmail.com) pkgname=dkms pkgver=3.0.11 pkgrel=1 pkgdesc='Dynamic Kernel Modules System' arch=('any') url='https://github.com/dell/dkms' license=('GPL2') depends=('coreutils' 'bash' 'gawk' 'sed' 'kmod' 'gcc' 'make' 'patch') makedepends=('git') optdepends=('linux-headers: build modules against the Arch kernel' 'linux-lts-headers: build modules against the LTS kernel' 'linux-zen-headers: build modules against the ZEN kernel' 'linux-hardened-headers: build modules against the HARDENED kernel') backup=('etc/dkms/framework.conf') install=$pkgname.install source=("git+https://github.com/dell/dkms.git#tag=v$pkgver" 'hook.install' 'hook.remove' 'hook.upgrade' 'hook.sh') sha256sums=('SKIP' 'acdc5b45cc018cea04ee1aec56fd8fc3a2de62cf7bc41acf53b3790872120998' '326515cc7d00f93760beb844434ca7442caf7a9424614aa95a8f6d1ab79e15df' '4f8dff7716e73a8bba885638f12e3cdc9e87daec1896f75e700b981527e43870' 'c1b4a4e2e4e0e0e59ee0887403e79d60b209f3878dbbec6612573f13b90cce01') 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{.in,.8.in,_framework.conf,.bash-completion,_common.postinst}; do sed -ri 's,/lib/modules,/usr/lib/modules,g' "$i" done } package() { # alpm hooks install -D -m 644 hook.install "$pkgdir/usr/share/libalpm/hooks/70-dkms-install.hook" # both upgrade and remove hooks are removing dkms modules. # remove always call depmod while upgrade never, as install will later. # upgrade is run before remove in order to have the cleanest depmod file, # if something goes wrong before the depmod call in install hook. install -D -m 644 hook.upgrade "$pkgdir/usr/share/libalpm/hooks/70-dkms-upgrade.hook" install -D -m 644 hook.remove "$pkgdir/usr/share/libalpm/hooks/71-dkms-remove.hook" # hook helper install -D -m 755 hook.sh "$pkgdir/usr/share/libalpm/scripts/dkms" # upstream installer cd dkms # we don't need kconf files and libdir is only for debian stuff, so # we install them outside of $pkgdir make \ DESTDIR="$pkgdir" \ SBIN="$pkgdir/usr/bin" \ BASHDIR="$pkgdir/usr/share/bash-completion/completions" \ KCONF="$srcdir"/trash \ LIBDIR="$srcdir"/trash \ install } # vim:set ts=2 sw=2 et: