summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarco Neumann2015-10-18 10:56:33 +0200
committerMarco Neumann2015-10-18 10:56:33 +0200
commitc3dc8954488e3da8b34b70e5bb73430b2a2a4000 (patch)
tree73e9bb19bb6f5d65936e1ada4b573c1919cd23b9
parent4fec57de0894c5aeaef62f1173a39ab7ecf2239c (diff)
downloadaur-c3dc8954488e3da8b34b70e5bb73430b2a2a4000.tar.gz
Add firmware
The upstream firmware scripts aren't up-to-date anymore and for users it is hard to understand how to get the right firmware version (the latest one from the Windows drivers is not compatible). So this patch adds the firmware to the package (NOT to the source, because of license reasons). Be aware that distributing the built package might be illegal in your country.
-rw-r--r--.SRCINFO8
-rw-r--r--PKGBUILD12
-rw-r--r--fwinst.patch49
3 files changed, 65 insertions, 4 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 3cad008c2145..a77fe367eeb1 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = sixfireusb-dkms
- pkgdesc = Kernel modules for the Terratec DMX6FireUSB soundcard
+ pkgdesc = Kernel modules for the Terratec DMX6FireUSB soundcard, including firmware
pkgver = 0.6.1
- pkgrel = 2
+ pkgrel = 3
url = http://sourceforge.net/projects/sixfireusb
install = sixfireusb.install
arch = i686
@@ -10,12 +10,16 @@ pkgbase = sixfireusb-dkms
depends = dkms
optdepends = linux-headers: build the module against Arch kernel
source = http://sourceforge.net/projects/sixfireusb/files/sixfireusb-0.6.1.tar.bz2
+ source = http://sourceforge.net/projects/sixfireusb/files/tools/fwinst.sh
source = kernel-3.16.patch
source = grsecurity.patch
+ source = fwinst.patch
source = dkms.conf
sha512sums = 6428fe074dd2717bcf6f2bdb38b5612694d66254021cc5a627ef5bccf2a7cbfd0e8cb9ca4be4f9855fe89d9be47a9943bbf368d8aec45eda08e4290ede9e9d34
+ sha512sums = 84aabf90510c1a42e25e9c07eb4e41f45fa967c1bbf4e89c4f4355a0adcab58727f3f759cecbed078e6f2a17e8eaafc8c55aad77e164ef0539b4eec162e5b5cc
sha512sums = 9d612518c48873d1ae9bd28a55b7a54cbb8e4836a87cf9c8870ae5038850107539b3b13684610f31aa2543dae3123cc88f02e477a891d2c3baae6157b0151083
sha512sums = 1c5ed0652f83f68c12c05b6675af85ded4b31696db0c07047555ee028f82ecf5c69a1de3d452e82ee137187254f6c27305ee650cc636e003ba1ebeedc007017a
+ sha512sums = f900df734deaab5070fdc7daf43700307259fb82a6846eb3765eff9fbd041eb12fb2f04158105c749f6a06217cd44097e08cc230c5fc76ef3bad078d697ed6b8
sha512sums = 43880b03da504b390471084e140e3b119080621792a9aad41e92e7372fb56fe88321289419f04ce33687955d45dfff049d3ba9b2df5eefee3d061ecb597372d8
pkgname = sixfireusb-dkms
diff --git a/PKGBUILD b/PKGBUILD
index b613d573653f..90ca667c3c06 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,27 +3,32 @@
pkgname=sixfireusb-dkms
pkgver=0.6.1
-pkgrel=2
-pkgdesc="Kernel modules for the Terratec DMX6FireUSB soundcard"
+pkgrel=3
+pkgdesc="Kernel modules for the Terratec DMX6FireUSB soundcard, including firmware"
arch=('i686' 'x86_64')
url="http://sourceforge.net/projects/sixfireusb"
license=('GPL')
depends=('dkms')
optdepends=('linux-headers: build the module against Arch kernel')
source=(http://sourceforge.net/projects/sixfireusb/files/sixfireusb-$pkgver.tar.bz2
+ http://sourceforge.net/projects/sixfireusb/files/tools/fwinst.sh
kernel-3.16.patch
grsecurity.patch
+ fwinst.patch
dkms.conf
)
sha512sums=(
'6428fe074dd2717bcf6f2bdb38b5612694d66254021cc5a627ef5bccf2a7cbfd0e8cb9ca4be4f9855fe89d9be47a9943bbf368d8aec45eda08e4290ede9e9d34'
+ '84aabf90510c1a42e25e9c07eb4e41f45fa967c1bbf4e89c4f4355a0adcab58727f3f759cecbed078e6f2a17e8eaafc8c55aad77e164ef0539b4eec162e5b5cc'
'9d612518c48873d1ae9bd28a55b7a54cbb8e4836a87cf9c8870ae5038850107539b3b13684610f31aa2543dae3123cc88f02e477a891d2c3baae6157b0151083'
'1c5ed0652f83f68c12c05b6675af85ded4b31696db0c07047555ee028f82ecf5c69a1de3d452e82ee137187254f6c27305ee650cc636e003ba1ebeedc007017a'
+ 'f900df734deaab5070fdc7daf43700307259fb82a6846eb3765eff9fbd041eb12fb2f04158105c749f6a06217cd44097e08cc230c5fc76ef3bad078d697ed6b8'
'43880b03da504b390471084e140e3b119080621792a9aad41e92e7372fb56fe88321289419f04ce33687955d45dfff049d3ba9b2df5eefee3d061ecb597372d8'
)
install=sixfireusb.install
build() {
+ patch -Np1 -i fwinst.patch -o fwinst-patched.sh --follow-symlink
cd "${srcdir}"/sixfireusb-$pkgver
patch -Np1 -i ../kernel-3.16.patch
patch -Np1 -i ../grsecurity.patch
@@ -32,6 +37,9 @@ build() {
package() {
cd ${srcdir}
+ install -dm755 ${pkgdir}/lib/firmware
+ sh ./fwinst-patched.sh ${pkgdir}
+
install -dm755 "${pkgdir}/usr/src/sixfireusb-${pkgver}"
cp -r ${srcdir}/sixfireusb-${pkgver}/* "${pkgdir}/usr/src/sixfireusb-${pkgver}/"
diff --git a/fwinst.patch b/fwinst.patch
new file mode 100644
index 000000000000..66ea1563829d
--- /dev/null
+++ b/fwinst.patch
@@ -0,0 +1,49 @@
+diff -aur sixfireusb-0.6.1/fwinst.sh sixfireusb-0.6.1/fwinst.sh
+--- sixfireusb-0.6.1/fwinst.sh 2015-10-16 17:15:26.986916637 +0200
++++ sixfireusb-0.6.1/fwinst.sh 2015-10-18 10:48:10.764352290 +0200
+@@ -19,7 +19,7 @@
+ # (at your option) any later version.
+ #
+
+-export FW_PATH=/lib/firmware
++export FW_PATH=$1/lib/firmware
+ export FW_6FIRE_PATH=$FW_PATH/6fire
+ cleanup() {
+ rm -Rf /tmp/dmx
+@@ -58,7 +58,7 @@
+ step_success
+
+ step_begin "Downloading windows driver"
+-if ! wget "http://ftp.terratec.de/Audio/DMX_6fire_USB/Updates/DMX_6fire_USB_Setup_1.23.0.02_XP_Vista_7.exe" -q -O /tmp/dmx.exe ; then
++if ! wget "http://terratec.ultron.info/Audio/DMX_6fire_USB/Updates/History/Windows/DMX_6fire_USB_Setup_1.23.0.02_XP_Vista_7.exe" -q -O /tmp/dmx.exe ; then
+ step_error "Internet connection alive? Perhaps a new driver version is available.\nIf that is the case, please redownload this script."
+ fi
+ step_success
+@@ -80,15 +80,15 @@
+ step_success
+
+ step_begin "Extracting firmware files"
+-if ! cp '/tmp/dmx/$[153]/$[153]/$[154]_17' /tmp/dmx6fireap.ihx ; then
++if ! cp '/tmp/dmx/$_121_/$_122__17' /tmp/dmx6fireap.ihx ; then
+ step_error "Extraction of file 'dmx6fireap.ihx' failed."
+ fi
+
+-if ! cp '/tmp/dmx/$[153]/$[153]/$[154]_18' /tmp/dmx6firecf.bin >/dev/null 2>&1 ; then
++if ! cp '/tmp/dmx/$_121_/$_122__18' /tmp/dmx6firecf.bin >/dev/null 2>&1 ; then
+ step_error "Extraction of file 'dmx6firecf.bin' failed."
+ fi
+
+-if ! cp '/tmp/dmx/$[153]/$[153]/$[154]_16' /tmp/dmx6firel2.ihx >/dev/null 2>&1 ; then
++if ! cp '/tmp/dmx/$_121_/$_122__16' /tmp/dmx6firel2.ihx >/dev/null 2>&1 ; then
+ step_error "Extraction of file 'dmx6firel2.ihx' failed."
+ fi
+ step_success
+@@ -108,7 +108,7 @@
+ step_success
+
+ step_begin "Installing firmware files"
+-if ! mkdir -p $FW_6FIRE_PATH >/dev/null 2>&1 ; then
++if ! install -dm755 $FW_6FIRE_PATH >/dev/null 2>&1 ; then
+ step_error "Creation of firmware path failed. Are you root?"
+ fi
+