blob: 91fd5a0933dfe5f22221c9d6dbeab4e7aa183399 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# Maintainer: Orion-zhen <https://github.com/Orion-zhen>
pkgname=opencode-notifier
pkgver=0.2.5
pkgrel=1
pkgdesc="OpenCode plugin for desktop notifications and sounds on permission, completion, and error events."
arch=('any')
url="https://github.com/mohak34/opencode-notifier"
license=('MIT')
depends=('opencode' 'libnotify')
makedepends=('bun')
options=('!strip' '!debug')
conflicts=("${pkgname}-debug")
install=$pkgname.install
source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz")
sha256sums=('7064745dfb572746149a24d58106b5f9fb643fe01ac9482aad6ba8f063cd0f54')
build() {
cd "$srcdir/$pkgname-$pkgver"
# 安装所有依赖(包括 devDependencies,因为构建 TypeScript 需要它们)
bun install
# 执行构建脚本,生成 dist 目录
bun run build
}
package() {
cd "$srcdir/$pkgname-$pkgver"
# 清理包含 devDependencies 的庞大 node_modules
rm -rf node_modules
# 仅重新安装生产环境依赖 (dependencies),大幅缩小插件体积
bun install --production
# 创建插件目标目录
local plugindir="$pkgdir/usr/lib/opencode/plugins/$pkgname"
mkdir -p "$plugindir"
# 严格按照 package.json 中定义的 "files" 字段,只拷贝必要产物和依赖
cp -r dist sounds logos package.json node_modules "$plugindir/"
# 安装许可证
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}
|