The PKGBUILD hard-depends on python-pywhispercpp-cpu by name while
optdepends tells GPU users to "replace" it with the -cuda variant.
That swap is impossible in a normal pacman transaction: the -cuda
package conflicts with -cpu but only provides the virtual
python-pywhispercpp name, so removing -cpu breaks vocalinux's
dependency and pacman aborts. The only workaround is pacman -Rdd,
which leaves a broken dependency record that re-breaks on every
vocalinux upgrade.
All three AUR backend packages (-cpu, -cuda, -rocm) declare
provides=('python-pywhispercpp'), so depending on the virtual name
lets any variant satisfy the dependency. AUR helpers prompt for a
provider on fresh installs, the standard Arch pattern for
swappable backends.
Claude-Session: https://claude.ai/code/session_01XAF9BkcSzwcMjTzkBxdx6k
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>