Files
cthulhu/distro-packages/Arch-Linux/PKGBUILD
2025-12-09 09:44:39 -05:00

112 lines
2.4 KiB
Bash

# Maintainer: Storm Dragon <storm_dragon@stormux.org>
pkgname=cthulhu
pkgver=2025.12.09
pkgrel=1
pkgdesc="Desktop-agnostic screen reader with plugin system, forked from Orca"
url="https://git.stormux.org/storm/cthulhu"
arch=(any)
license=(LGPL)
depends=(
# Core AT-SPI accessibility
at-spi2-core
gobject-introspection-runtime
python-gobject
python-cairo
gtk3
# Audio and speech
speech-dispatcher
gstreamer
gst-plugins-base # playbin, audiotestsrc, basic decoders
gst-plugins-good # pulsesink, more decoders
# Braille support
brltty
liblouis
# Plugin system and D-Bus remote control
python-pluggy
python-dasbus
# AI Assistant dependencies (for screenshots, HTTP requests, and actions)
python-requests
python-pyautogui
# Desktop integration
hicolor-icon-theme
libwnck3
pango
# System utilities
python
python-setproctitle
socat # for self-voicing feature
xorg-xkbcomp
xorg-xmodmap
)
optdepends=(
'espeak-ng: Alternative TTS engine'
'festival: Alternative TTS engine'
'flite: Lightweight TTS engine'
'espeak: Legacy TTS engine'
# AI Assistant providers (optional)
'claude-code: Claude AI provider support'
'openai-codex: ChatGPT AI provider support'
'gemini-cli: Gemini AI provider support'
'ollama: Local AI model support'
# OCR plugin dependencies (optional)
'python-pillow: Image processing for OCR and AI Assistant'
'python-pytesseract: Python wrapper for Tesseract OCR engine'
'python-pdf2image: PDF to image conversion for OCR'
'python-scipy: Scientific computing for OCR color analysis'
'python-webcolors: Color name lookup for OCR text decoration'
'tesseract: OCR engine for text recognition'
'tesseract-data-eng: English language data for Tesseract'
)
makedepends=(
git
meson
ninja
python-build
python-installer
python-wheel
)
install=cthulhu.install
source=(
"git+https://git.stormux.org/storm/cthulhu.git"
"cthulhu.install"
)
b2sums=(
'SKIP'
'SKIP'
)
prepare() {
cd cthulhu
git checkout testing
}
pkgver() {
cd cthulhu
grep "^version = " src/cthulhu/cthulhuVersion.py | sed 's/version = "\(.*\)"/\1/'
}
build() {
cd cthulhu
arch-meson _build
meson compile -C _build
}
package() {
cd cthulhu
meson install -C _build --destdir "$pkgdir"
# Remove icon cache - it will be generated by post-install hooks
rm -f "$pkgdir/usr/share/icons/hicolor/icon-theme.cache"
}
# vim:set sw=2 sts=-1 et: