blob: 2f6edb1775c74d4334a9a5e6f52eb654c80843ea (
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
47
48
49
50
51
52
53
|
# Maintainer: Yakov Till <yakov.till@gmail.com>
pkgname=codegraph-bin
pkgver=0.9.1
pkgrel=1
pkgdesc="Pre-indexed code knowledge graph for AI coding assistants — fewer tokens, fewer tool calls, 100% local"
arch=('x86_64' 'aarch64')
url="https://github.com/colbymchenry/codegraph"
license=('MIT')
depends=('bash' 'glibc' 'libgcc' 'libstdc++.so')
provides=("${pkgname%-bin}")
conflicts=("${pkgname%-bin}")
options=('!debug')
_urlbase="https://github.com/colbymchenry/codegraph/releases/download/v${pkgver}"
source=("LICENSE-${pkgver}::https://raw.githubusercontent.com/colbymchenry/codegraph/v${pkgver}/LICENSE")
source_x86_64=("${pkgname}-${pkgver}-x86_64.tar.gz::${_urlbase}/codegraph-linux-x64.tar.gz")
source_aarch64=("${pkgname}-${pkgver}-aarch64.tar.gz::${_urlbase}/codegraph-linux-arm64.tar.gz")
sha256sums=('e6d98f98c666bebe065ac2492a0a19232cc318d4d67bac3ca42ffb77bacc8809')
sha256sums_x86_64=('015875ee4c1ea381f675df721d5f6d44738014c2b45cd41b552b6338d7ba4179')
sha256sums_aarch64=('5f527951caba9d16ea14983d45ae1d6943ce6b2a1d6c095fc57243965c0b6507')
latestver() {
curl -fsSL "https://api.github.com/repos/colbymchenry/codegraph/releases/latest" |
jq -r '.tag_name // empty' | sed 's/^v//'
}
package() {
local _archdir
case "${CARCH}" in
x86_64) _archdir="codegraph-linux-x64" ;;
aarch64) _archdir="codegraph-linux-arm64" ;;
esac
install -d "${pkgdir}/usr/lib/codegraph"
cp -a "${srcdir}/${_archdir}"/{node,lib} "${pkgdir}/usr/lib/codegraph/"
install -Dm755 /dev/stdin "${pkgdir}/usr/bin/codegraph" <<'WRAPPER'
#!/bin/sh
exec /usr/lib/codegraph/node /usr/lib/codegraph/lib/dist/bin/codegraph.js "$@"
WRAPPER
# Remove shebangs from bundled JS (vendored node used, not system node)
find "${pkgdir}/usr/lib/codegraph/lib" -name '*.js' -exec \
sed -i '1{/^#!.*node/d}' {} +
find "${pkgdir}/usr/lib/codegraph/lib" -name '*.d.ts' -exec \
sed -i '1{/^#!.*node/d}' {} +
# Prune empty directories left by bundled node_modules
find "${pkgdir}/usr/lib/codegraph/lib/node_modules" -type d -empty -delete
install -Dm644 "${srcdir}/LICENSE-${pkgver}" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}
|