Files
2026-10-15 18:01:00 +02:00

55 lines
1.7 KiB
Bash

# Maintainer: Sandro Cazzaniga <sandro@cazzaniga.fr>
pkgname=plotzilla
pkgver=1.4.1
pkgrel=1
pkgdesc='Screenwriting app for Linux: scripts in the Hollywood standard format, Fountain, FDX and PDF'
arch=('x86_64' 'aarch64')
url='https://git.kharec.info/Kharec/plotzilla'
license=('GPL-3.0-only')
depends=('gtk3' 'webkit2gtk-4.1' 'libsoup3' 'gdk-pixbuf2' 'glib2' 'glibc' 'hicolor-icon-theme')
makedepends=('git' 'go' 'nodejs' 'npm')
optdepends=('ttf-courier-prime: the font of the printed page, on screen too'
'hunspell-en_us: English spell checking'
'hunspell-fr: French spell checking')
source=("$pkgname::git+$url.git#tag=$pkgver")
sha256sums=('SKIP')
prepare() {
cd "$pkgname"
export GOPATH="$srcdir/gopath"
go mod download -modcacherw
# Downloads belong in prepare(); the build then runs offline.
npm ci --prefix frontend --no-audit --no-fund
}
build() {
cd "$pkgname"
export GOPATH="$srcdir/gopath"
export CGO_CPPFLAGS="$CPPFLAGS"
export CGO_CFLAGS="$CFLAGS"
export CGO_CXXFLAGS="$CXXFLAGS"
export CGO_LDFLAGS="$LDFLAGS"
export GOFLAGS='-buildmode=pie -trimpath -mod=readonly -modcacherw'
npm run build --prefix frontend
# The binary embeds frontend/dist; webkit2_41 selects WebKitGTK 4.1.
go build -tags desktop,production,webkit2_41 \
-ldflags "-linkmode=external -compressdwarf=false" \
-o build/bin/plotzilla .
}
check() {
cd "$pkgname"
export GOPATH="$srcdir/gopath"
go test ./internal/...
}
package() {
cd "$pkgname"
# DESTDIR skips the cache updates: pacman's hooks refresh the MIME,
# desktop and icon caches.
make install DESTDIR="$pkgdir" PREFIX=/usr
install -Dm644 README.md CHANGELOG.md -t "$pkgdir/usr/share/doc/$pkgname"
}