summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorJason Yip2023-06-18 11:02:01 -0700
committerJason Yip2023-06-18 11:02:01 -0700
commit3450aa5c4fced7d5362c4df5f674575ef66e4dc6 (patch)
tree135f60a5603a1baa064a9a102208e4d98d4ff051 /PKGBUILD
downloadaur-3450aa5c4fced7d5362c4df5f674575ef66e4dc6.tar.gz
[INIT]
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD55
1 files changed, 55 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..f2a10f872164
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,55 @@
+# Maintainer: Porous3247 <pqtb3v7t at jasonyip1 dot anonaddy dot me>
+# Contributor: Asuka Minato <asukaminato at nyan dot eu dot org>
+
+_pkgname="llm"
+_feature="cublas"
+pkgname="${_pkgname}-${_feature}-git"
+pkgver=r772.3becd72
+pkgrel=1
+pkgdesc="An ecosystem of Rust libraries for working with large language models (with CUBlas)"
+arch=(any)
+url="https://github.com/rustformers/${_pkgname}"
+license=('MIT' 'APACHE')
+depends=(glibc gcc-libs cuda)
+makedepends=(git cargo)
+provides=("${_pkgname}")
+conflicts=("${_pkgname}")
+replaces=(llama-cli)
+source=("git+${url}"
+ "git+https://github.com/ggerganov/llama.cpp"
+ )
+sha256sums=('SKIP' 'SKIP')
+
+
+prepare() {
+ cd "${srcdir}/${_pkgname}"
+ git submodule init
+ git config submodule.crates/ggml/sys/llama-cpp.url "${srcdir}/llama.cpp"
+ git -c protocol.file.allow=always submodule update
+ export RUSTUP_TOOLCHAIN=stable
+ cargo update
+ cargo fetch --locked --target "${CARCH}-unknown-linux-gnu"
+ cat LICENSE-* > LICENSE
+}
+
+pkgver() {
+ cd "${srcdir}/${_pkgname}"
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
+}
+
+build() {
+ cd "${srcdir}/${_pkgname}"
+ RUSTUP_TOOLCHAIN=stable CARGO_TARGET_DIR=target cargo build --frozen --release "--features=${_feature}"
+}
+
+check () {
+ cd "${srcdir}/${_pkgname}"
+ RUSTUP_TOOLCHAIN=stable cargo test --frozen --all-features --workspace
+}
+
+package() {
+ cd "${srcdir}/${_pkgname}"
+ install -Dm755 "target/release/${_pkgname}" -t "${pkgdir}/usr/bin/"
+ install -Dm644 README.md -t "${pkgdir}/usr/share/doc/${_pkgname}/"
+ install -Dm644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}/"
+}