summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMalstrond2019-05-29 11:45:00 +0200
committerMalstrond2019-05-29 11:58:01 +0200
commitd5bf2128f79dc61b50d3a08f3fa5b118a7833b58 (patch)
treeb95e8918d41bcc59fb76f81ee5ab4d23bcb70776
parentc2ab72e9f0d3d43f3861b1708f1a7686469a36ed (diff)
downloadaur-d5bf2128f79dc61b50d3a08f3fa5b118a7833b58.tar.gz
Fixed md5sum
-rw-r--r--.SRCINFO29
-rw-r--r--PKGBUILD79
2 files changed, 52 insertions, 56 deletions
diff --git a/.SRCINFO b/.SRCINFO
index a4043ed99af2..e83e109485e1 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,29 +1,18 @@
-# Generated by mksrcinfo v8
-# Sat Jan 12 13:42:20 UTC 2019
pkgbase = activdriver
- pkgdesc = The kernel mode and X11 drivers for Promethean ActivBoard and ActivHub.
- pkgver = 5.17.14
- pkgrel = 2
+ pkgdesc = Drivers for Promethean hardware
+ pkgver = 5.18.12
+ pkgrel = 0
url = https://support.prometheanworld.com/product/activdriver
install = activdriver.install
- arch = i686
arch = x86_64
license = unknown
- makedepends = linux-lts414-headers
- optdepends = activinspire: activboard presentation
- optdepends = activtools: hardware calibration
- source_i686 = http://activsoftware.co.uk/linux/repos/driver/ubuntu/pool/oss/a/activdriver/activdriver_5.17.14-0~Ubuntu~1604_i386.deb
- source_i686 = 10-promethean.conf
- source_i686 = activdriver.install
- md5sums_i686 = 274ac5eb1c01c09acf865d97afd81130
- md5sums_i686 = 11effc25fd592acacb9f9f3108618963
- md5sums_i686 = 8a8a6ddd6741a80a5839593ed385cd9a
- source_x86_64 = http://activsoftware.co.uk/linux/repos/driver/ubuntu/pool/oss/a/activdriver/activdriver_5.17.14-0~Ubuntu~1604_amd64.deb
- source_x86_64 = 10-promethean.conf
+ makedepends = linux-headers>=5.0.1.arch1-1
+ optdepends = activinspire: Prometheans presentation software
+ optdepends = activtools: Tools for Promethean hardware, e.g. calibration or systray monitor
+ source_x86_64 = http://activsoftware.co.uk/linux/repos/driver/ubuntu/pool/oss/a/activdriver/activdriver_5.18.12-0~Ubuntu~1804_amd64.deb
source_x86_64 = activdriver.install
- md5sums_x86_64 = 29ce78dcf3dacef49047343064e39760
- md5sums_x86_64 = 11effc25fd592acacb9f9f3108618963
- md5sums_x86_64 = 8a8a6ddd6741a80a5839593ed385cd9a
+ md5sums_x86_64 = d09c1be7e554f6682b1ad574ceb81ae8
+ md5sums_x86_64 = 6246dbff78de13139d0aa761b9f9c40a
pkgname = activdriver
diff --git a/PKGBUILD b/PKGBUILD
index fb9063ef15dc..fc3633d91779 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,46 +1,56 @@
-# Maintainer: Jose Riha <jose1711 gmail com>
+# Maintainer: Malstrond <malstrond@gmail.com>
+# Contributor: Jose Riha <jose1711 gmail com>
# Contributor: Bazon <bazonbloch@arcor.de>
# Contributor: Christian Bühler <christian@cbuehler.de>
# Contributor: Zsolt Udvari <udvzsolt@gmail.com>
pkgname=activdriver
-pkgver=5.17.14
-pkgrel=2
-pkgdesc="The kernel mode and X11 drivers for Promethean ActivBoard and ActivHub."
-arch=('i686' 'x86_64')
+pkgver=5.18.12
+pkgrel=0
+pkgdesc="Drivers for Promethean hardware"
+arch=('x86_64')
url="https://support.prometheanworld.com/product/activdriver"
license=('unknown')
-makedepends=(linux-lts414-headers)
-optdepends=('activinspire: activboard presentation'
- 'activtools: hardware calibration')
+makedepends=('linux-headers>=5.0.1.arch1-1')
+optdepends=('activinspire: Prometheans presentation software'
+ 'activtools: Tools for Promethean hardware, e.g. calibration or systray monitor')
install=$pkgname.install
-source_x86_64=(
- "http://activsoftware.co.uk/linux/repos/driver/ubuntu/pool/oss/a/$pkgname/${pkgname}_$pkgver-0~Ubuntu~1604_amd64.deb"
- "10-promethean.conf"
- "activdriver.install")
-source_i686=(
- "http://activsoftware.co.uk/linux/repos/driver/ubuntu/pool/oss/a/$pkgname/${pkgname}_$pkgver-0~Ubuntu~1604_i386.deb"
- "10-promethean.conf"
- "activdriver.install")
-md5sums_i686=('274ac5eb1c01c09acf865d97afd81130'
- '11effc25fd592acacb9f9f3108618963'
- '8a8a6ddd6741a80a5839593ed385cd9a')
-md5sums_x86_64=('29ce78dcf3dacef49047343064e39760'
- '11effc25fd592acacb9f9f3108618963'
- '8a8a6ddd6741a80a5839593ed385cd9a')
+source_x86_64=("http://activsoftware.co.uk/linux/repos/driver/ubuntu/pool/oss/a/$pkgname/${pkgname}_$pkgver-0~Ubuntu~1804_amd64.deb"
+ "activdriver.install")
+md5sums_x86_64=('d09c1be7e554f6682b1ad574ceb81ae8'
+ '6246dbff78de13139d0aa761b9f9c40a')
+
+
+prepare() {
+ # Extract the source
+ bsdtar -xf data.tar.xz
+
+ # Patch the makefile of activlc so it doesn't try to get its includes from an absoulte path outside the build chroot
+ sed -i "s%KERN_INC = /usr/src/promethean%KERN_INC = ..%" usr/src/promethean/activlc/Makefile
+
+ # Patch promethean.sh to not use absolute paths to /usr/local, which isn't used in Arch
+ sed -i s%/usr/local/bin/%%g usr/bin/promethean.sh
+
+ # Patch usbpromethean.c to be compatible with this kernel change: https://lkml.org/lkml/2019/1/4/418
+ # If are building on kernel versions <=4.19, remove these 2 lines
+ sed -i s%VERIFY_WRITE,%%g usr/src/promethean/kernel/usbpromethean.c
+ sed -i s%VERIFY_READ,%%g usr/src/promethean/kernel/usbpromethean.c
+
+ # Remove files relating to HAL, which was deprecated by Arch almost a decade ago
+ rm -r usr/share/hal
+
+ # The driver includes two duplicate X configuration files and this path isn't used in Arch
+ rm -r usr/lib/X11/xorg.conf.d
+}
build() {
- tar xf data.tar.xz
echo " "
echo "Attention!"
- echo "Build will fail if run in a directory with space(s) in its path."
- # (reason: makefile of the source. if you know how to fix: please tell!)
+ echo "This build will fail if run in a directory with space(s) in its path due to an error in the upstream makefile."
echo " "
make -C /lib/modules/$(uname -r)/build SUBDIRS="$srcdir"/usr/src/promethean/kernel modules
- sed -i "s%KERN_INC = /usr/src/promethean%KERN_INC = ..%" usr/src/promethean/activlc/Makefile
BUILD=release make -C usr/src/promethean/activlc
- sed -i s%/usr/local/bin/%%g usr/bin/promethean.sh
}
package() {
@@ -48,22 +58,19 @@ package() {
cp -r etc lib "$pkgdir"
cp -r usr/bin usr/lib usr/share "$pkgdir"/usr
install -D usr/src/promethean/activlc/release/activlc "$pkgdir"/usr/bin/activlc
- _extmoddir=$(uname -r | sed "s@\([0-9]*\.[0-9]*\)\.[0-9]*-[0-9]*\(.*\)@\1\2@")
- # changed compared to pkgrel=1: needs to be this path now:
+ # Set the module directory and install module
+ _extmoddir=ARCH
_moddir="/usr/lib/modules/extramodules-${_extmoddir}"/kernel/drivers/input/tablet/
-
- install -m644 -D usr/src/promethean/kernel/promethean.ko \
- "$pkgdir${_moddir}"/promethean.ko
+ install -m644 -D usr/src/promethean/kernel/promethean.ko "$pkgdir${_moddir}"/promethean.ko
find "${pkgdir}" -name '*.ko' -exec gzip -9 {} \;
- install -D 10-promethean.conf "$pkgdir"/etc/X11/xorg.conf.d/10-promethean.conf
- # changed compared to pkgrel=1: move /lib to /usr/lib to match arch standards
+ # Use /usr/lib instead of /lib to match Arch packaging standards
mv "${pkgdir}"/lib/* "${pkgdir}"/usr/lib/
rmdir "${pkgdir}"/lib
- # changed compared to pkgrel=1: load module on boot.
- # If you don't want this, delete the following lines and load it manually with sudo modprobe promethean
+ # Load module on boot.
+ # If you don't want this, delete the following 2 lines.
mkdir -p "$pkgdir"/etc/modules-load.d
echo "promethean" > "$pkgdir"/etc/modules-load.d/promethean.conf
}