summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO16
-rw-r--r--LicenseRef-Apple.tar.xzbin0 -> 469844 bytes
-rw-r--r--PKGBUILD58
3 files changed, 45 insertions, 29 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 27f3da181bbe..99883576fc0e 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,20 +1,16 @@
pkgbase = facetimehd-firmware
pkgdesc = Firmware for the FacetimeHD (Broadcom 1570) PCIe webcam
- pkgver = 1.0.0
- pkgrel = 2
+ pkgver = 1.43_5
+ pkgrel = 1
epoch = 1
url = https://github.com/patjak/facetimehd-firmware
arch = any
- license = LicenseRef-Unknown
- makedepends = git
- makedepends = curl
- makedepends = xz
+ license = LicenseRef-Apple
makedepends = cpio
+ makedepends = xz
provides = bcwc-pcie-firmware
conflicts = bcwc-pcie-firmware
- source = facetimehd-firmware::git+https://github.com/patjak/facetimehd-firmware.git#tag=v1.0.0
- source = https://updates.cdn-apple.com/2019/cert/041-88431-20191011-e7ee7d98-2878-4cd9-bc0a-d98b3a1e24b1/OSXUpd10.11.5.dmg
- sha256sums = cc2cc6a935e46f50e94e25db2e903c21bb70633f4010153f4b71c07ddab9665b
- sha256sums = 46cd31ee35b084f59dc8b8f632e6bebdb4badeafbab064eea32ae66cc3743301
+ source = LicenseRef-Apple.tar.xz
+ sha256sums = SKIP
pkgname = facetimehd-firmware
diff --git a/LicenseRef-Apple.tar.xz b/LicenseRef-Apple.tar.xz
new file mode 100644
index 000000000000..af4c311aa5a8
--- /dev/null
+++ b/LicenseRef-Apple.tar.xz
Binary files differ
diff --git a/PKGBUILD b/PKGBUILD
index 0c6f671f9c55..4c65b5b6e5a1 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,39 +3,59 @@
_pkgname="facetimehd-firmware"
pkgname="$_pkgname"
-pkgver=1.0.0
-pkgrel=2
+pkgver=1.43_5
+pkgrel=1
epoch=1
pkgdesc='Firmware for the FacetimeHD (Broadcom 1570) PCIe webcam'
url='https://github.com/patjak/facetimehd-firmware'
-license=('LicenseRef-Unknown')
+license=('LicenseRef-Apple')
arch=('any')
-makedepends=('git' 'curl' 'xz' 'cpio')
+makedepends=(
+ 'cpio'
+ 'xz'
+)
conflicts=('bcwc-pcie-firmware')
provides=('bcwc-pcie-firmware')
_pkgsrc="$_pkgname"
-source=(
- "$_pkgsrc"::"git+https://github.com/patjak/facetimehd-firmware.git#tag=v$pkgver"
- "https://updates.cdn-apple.com/2019/cert/041-88431-20191011-e7ee7d98-2878-4cd9-bc0a-d98b3a1e24b1/OSXUpd10.11.5.dmg"
-)
-sha256sums=(
- 'cc2cc6a935e46f50e94e25db2e903c21bb70633f4010153f4b71c07ddab9665b'
- '46cd31ee35b084f59dc8b8f632e6bebdb4badeafbab064eea32ae66cc3743301'
-)
+source=('LicenseRef-Apple.tar.xz')
+sha256sums=('SKIP')
+
+build() {
+ local URL RANGE OSX_DRV OSX_DRV_DIR FILE DRV_HASH FW_HASH OFFSET SIZE
+ URL="https://updates.cdn-apple.com/2019/cert/041-88431-20191011-e7ee7d98-2878-4cd9-bc0a-d98b3a1e24b1/OSXUpd10.11.5.dmg"
+ RANGE=204909802-207733123
+ OSX_DRV=AppleCameraInterface
+ OSX_DRV_DIR=System/Library/Extensions/AppleCameraInterface.kext/Contents/MacOS
+ FILE="$OSX_DRV_DIR/$OSX_DRV"
-prepare() {
- cd "$_pkgsrc"
- sed -E 's&curl.*?URl.*?\|&cat "$(DMG)" |&' -i Makefile
+ DRV_HASH=f56e68a880b65767335071531a1c75f3cfd4958adc6d871adf8dbf3b788e8ee1
+ FW_HASH=e3e6034a67dfdaa27672dd547698bbc5b33f47f1fc7f5572a2fb68ea09d32d3d
+
+ OFFSET=81920
+ SIZE=603715
+
+ echo "Downloading driver..."
+ curl -k -L -r "$RANGE" "$URL" | xzcat -qq -Q | cpio --format odc -i -d "./$FILE" &> /dev/null || true
+ mv "$FILE" .
+
+ echo "Extracting firmware..."
+ dd bs=1 skip=$OFFSET count=$SIZE if=./$OSX_DRV of=./firmware.bin.gz &> /dev/null
+ gunzip ./firmware.bin.gz
+
+ cat > firmware.sha256 << END
+$DRV_HASH $OSX_DRV
+$FW_HASH firmware.bin
+END
}
-build() {
- cd "$_pkgsrc"
- make
+check() {
+ sha256sum -c firmware.sha256
}
package() {
- install -Dm644 "$_pkgsrc/firmware.bin" "$pkgdir/usr/lib/firmware/facetimehd/firmware.bin"
+ install -Dm644 firmware.bin -t "$pkgdir/usr/lib/firmware/facetimehd/"
+ install -Dm644 LicenseRef-Apple/*.rtf -t "$pkgdir/usr/share/licenses/$pkgname/"
}