# Maintainer: Spencer Bull <spencerbull2554@gmail.com>

pkgname=linux-firmware-cirrus-dx13260
pkgver=20260810
pkgrel=1
pkgdesc="Cirrus speaker firmware aliases for Dell XPS 13 DX13260 Panther Lake"
arch=('x86_64')
url="https://gitlab.com/kernel-firmware/linux-firmware"
license=('LicenseRef-cirrus')
depends=('linux-firmware-cirrus>=20260810-2')
options=('!strip' '!debug')
_cirrus=linux-firmware-cirrus-20260910-2-any.pkg.tar.zst
source=(
  "https://archive.archlinux.org/packages/l/linux-firmware-cirrus/${_cirrus}"
  "https://archive.archlinux.org/packages/l/linux-firmware-cirrus/${_cirrus}.sig"
  "dell-xps13-ptl-firmware.conf"
)
noextract=("${_cirrus}")
sha256sums=('70100c551b079bd8abec3d9c96a16defd04766b2a4afc6d7be9128d37e9840f7'
            'SKIP'
            '760385ad796818f9d60af3bc62c9670882c32050063f1d6086fb12f8817ed3fc')
validpgpkeys=('83BC8889351B5DEBBB68416EB8AC08600F108CDF')

package() {
  local firmware_dir="${pkgdir}/usr/lib/firmware/updates/cirrus"
  install -d "$firmware_dir"

  # The updates directory avoids ownership conflicts with native Arch aliases.
  local speaker
  for speaker in 1 2 3; do
    ln -s ../../cirrus/cs35l56/CS35L56_Rev4.5.9.wmfw.zst \
      "$firmware_dir/cs35l56-b2-dsp1-misc-10280e54-spkid${speaker}.wmfw.zst"
    ln -s "../../cirrus/cs35l56-b2-dsp1-misc-10280e53-spkid${speaker}-ampl.bin.zst" \
      "$firmware_dir/cs35l56-b2-dsp1-misc-10280e54-spkid${speaker}-ampl.bin.zst"
    ln -s "../../cirrus/cs35l56-b2-dsp1-misc-10280e53-spkid${speaker}-ampr.bin.zst" \
      "$firmware_dir/cs35l56-b2-dsp1-misc-10280e54-spkid${speaker}-ampr.bin.zst"
  done

  install -Dm644 dell-xps13-ptl-firmware.conf \
    "${pkgdir}/etc/mkinitcpio.conf.d/dell-xps13-ptl-firmware.conf"

  install -d "${pkgdir}/usr/share/licenses/${pkgname}"
  bsdtar -xOf "${srcdir}/${_cirrus}" usr/share/licenses/linux-firmware-cirrus/LICENSE.cirrus \
    >"${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.cirrus"
}
