blob: f229db15192abfebba9d903398e22f8c391de88f (
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
# Maintainer: TheBill2001 <billtran1632001 at gmail dot com>
# Contributer: Alpin <alpin 'at' alpindale 'dot' dev>
# Author: LostRuins (concedo)
pkgname=koboldcpp-portable
pkgver=1.122
pkgrel=1
pkgdesc="An easy-to-use AI text-generation software for GGML and GGUF models (portable build for old CPUs)"
arch=('x86_64')
url="https://github.com/LostRuins/koboldcpp"
license=('AGPL-3.0-only')
depends=(
"python"
"vulkan-icd-loader"
"python-requests"
)
optdepends=(
'python-customtkinter: for GUI launcher'
'python-darkdetect: for GUI launcher'
'python-psutil: increasing the process CPU priority'
'zenity: native file picker dialogs'
'yad: native file picker dialogs'
'python-jinja: jinja2 templates'
)
provides=(
"koboldcpp=$pkgver"
)
conflicts=(
"koboldcpp"
)
source=(
"$pkgname-$pkgver.tar.gz::https://github.com/LostRuins/koboldcpp/archive/refs/tags/v$pkgver.tar.gz"
'koboldcpp.desktop'
'koboldcpp.png'
)
sha256sums=(
'40d3bec39673f512d2c8c935734091670f8d659079b2b77ad7ebe43a15231971'
'2f2f45a745b30392d01472c1f5e68f82e5e7d7353a4615cf94b9f0cd4fd0505b'
'd244788c74a693a383bea7db6ab2bb2f762e6020de900be977b16e18dcd20f54'
)
build() {
cd "$srcdir/koboldcpp-$pkgver"
make LLAMA_VULKAN=1 LLAMA_PORTABLE=1 LLAMA_NOAVX2=1
}
package() {
cd "$srcdir/koboldcpp-$pkgver"
install -d "$pkgdir/usr/share/koboldcpp"
install -Dm644 ./*.so "$pkgdir/usr/share/koboldcpp/"
install -d "$pkgdir/usr/share/koboldcpp/embd_res"
install -Dm644 ./embd_res/* "$pkgdir/usr/share/koboldcpp/embd_res"
install -d "$pkgdir/usr/share/koboldcpp/kcpp_adapters"
install -m644 kcpp_adapters/* "$pkgdir/usr/share/koboldcpp/kcpp_adapters/"
install -Dm644 ./json_to_gbnf.py "$pkgdir/usr/share/koboldcpp/json_to_gbnf.py"
install -Dm644 ./kcpp_agent.py "$pkgdir/usr/share/koboldcpp/kcpp_agent.py"
install -Dm644 ./koboldcpp.py "$pkgdir/usr/share/koboldcpp/koboldcpp.py"
install -d "$pkgdir/usr/bin"
echo '#!/bin/sh' > "$pkgdir/usr/bin/json_to_gbnf"
echo 'exec /usr/bin/python3 /usr/share/koboldcpp/json_to_gbnf.py "$@"' >> "$pkgdir/usr/bin/json_to_gbnf"
chmod +x "$pkgdir/usr/bin/json_to_gbnf"
echo '#!/bin/sh' > "$pkgdir/usr/bin/kcpp_agent"
echo 'exec /usr/bin/python3 /usr/share/koboldcpp/kcpp_agent.py "$@"' >> "$pkgdir/usr/bin/kcpp_agent"
chmod +x "$pkgdir/usr/bin/kcpp_agent"
echo '#!/bin/sh' > "$pkgdir/usr/bin/koboldcpp"
echo 'exec /usr/bin/python3 /usr/share/koboldcpp/koboldcpp.py "$@"' >> "$pkgdir/usr/bin/koboldcpp"
chmod +x "$pkgdir/usr/bin/koboldcpp"
install -Dm644 "$srcdir/koboldcpp.desktop" "$pkgdir/usr/share/applications/koboldcpp.desktop"
install -Dm644 "$srcdir/koboldcpp.png" "$pkgdir/usr/share/icons/hicolor/512x512/apps/koboldcpp.png"
install -Dm644 LICENSE.md "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.md"
install -Dm644 MIT_LICENSE_GGML_SDCPP_LLAMACPP_ONLY.md "${pkgdir}/usr/share/licenses/${pkgname}/MIT_LICENSE_GGML_SDCPP_LLAMACPP_ONLY.md"
# Compile Python scripts
python -m compileall -o 0 -o 1 -d '/usr/share/koboldcpp' "$pkgdir/usr/share/koboldcpp/json_to_gbnf.py"
python -m compileall -o 0 -o 1 -d '/usr/share/koboldcpp' "$pkgdir/usr/share/koboldcpp/kcpp_agent.py"
python -m compileall -o 0 -o 1 -d '/usr/share/koboldcpp' "$pkgdir/usr/share/koboldcpp/koboldcpp.py"
}
|