summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorzxp198210052024-02-08 18:42:56 +0800
committerzxp198210052024-02-08 18:42:56 +0800
commitc0716f3dcd4d7be00ce60f57871d846edd8f0594 (patch)
treedbb366b5d4365b46ef2a78bbc02517bc44b8acf2
downloadaur-c0716f3dcd4d7be00ce60f57871d846edd8f0594.tar.gz
first release
-rw-r--r--.SRCINFO20
-rw-r--r--PKGBUILD46
-rw-r--r--localchat.sh14
3 files changed, 80 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..fe332c2c9e5b
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,20 @@
+pkgbase = localchat-bin
+ pkgdesc = Chat with generative language models locally on your computer with zero setup.
+ pkgver = 0.8.0
+ pkgrel = 1
+ url = https://nathanlesage.github.io/local-chat/
+ arch = aarch64
+ arch = x86_64
+ license = GPL-3.0-only
+ makedepends = asar
+ depends = electron28
+ provides = localchat=0.8.0
+ conflicts = localchat
+ source = localchat.sh
+ sha256sums = 0fb7b939a071f4a08476bdd5aa143d2aa8cd335c83309f9919be16cd5c3e2014
+ source_aarch64 = localchat-0.8.0-aarch64.deb::https://github.com/nathanlesage/local-chat/releases/download/v0.8.0/localchat_0.8.0_arm64.deb
+ sha256sums_aarch64 = c67445a3afb9bb192b9b58f2890dbf60c4f0a113a901c126489327600ededf4d
+ source_x86_64 = localchat-0.8.0-x86_64.deb::https://github.com/nathanlesage/local-chat/releases/download/v0.8.0/localchat_0.8.0_amd64.deb
+ sha256sums_x86_64 = 8ebfb42c5403743ae43d918bdd5da7eab572c6f16c90419620edb0b0f73781cb
+
+pkgname = localchat-bin
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..b20818a3b683
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,46 @@
+# Maintainer: zxp19821005 <zxp19821005 at 163 dot com>
+pkgname=localchat-bin
+pkgver=0.8.0
+_electronversion=28
+pkgrel=1
+pkgdesc="Chat with generative language models locally on your computer with zero setup. "
+arch=(
+ 'aarch64'
+ 'x86_64'
+)
+url="https://nathanlesage.github.io/local-chat/"
+_ghurl="https://github.com/nathanlesage/local-chat"
+license=("GPL-3.0-only")
+conflicts=("${pkgname%-bin}")
+provides=("${pkgname%-bin}=${pkgver}")
+depends=(
+ "electron${_electronversion}"
+)
+makedepends=(
+ 'asar'
+)
+source_aarch64=("${pkgname%-bin}-${pkgver}-aarch64.deb::${_ghurl}/releases/download/v${pkgver}/${pkgname%-bin}_${pkgver}_arm64.deb")
+source_x86_64=("${pkgname%-bin}-${pkgver}-x86_64.deb::${_ghurl}/releases/download/v${pkgver}/${pkgname%-bin}_${pkgver}_amd64.deb")
+source=(
+ "${pkgname%-bin}.sh"
+)
+sha256sums=('0fb7b939a071f4a08476bdd5aa143d2aa8cd335c83309f9919be16cd5c3e2014')
+sha256sums_aarch64=('c67445a3afb9bb192b9b58f2890dbf60c4f0a113a901c126489327600ededf4d')
+sha256sums_x86_64=('8ebfb42c5403743ae43d918bdd5da7eab572c6f16c90419620edb0b0f73781cb')
+build() {
+ sed -e "s|@electronversion@|${_electronversion}|g" \
+ -e "s|@appname@|${pkgname%-bin}|g" \
+ -e "s|@runname@|app.asar|g" \
+ -i "${srcdir}/${pkgname%-bin}.sh"
+ bsdtar -xf "${srcdir}/data.tar.xz"
+ asar e "${srcdir}/usr/lib/${pkgname%-bin}/resources/app.asar" "${srcdir}/app.asar.unpacked"
+ sed "s|(!a.app.isPackaged){const|(a.app.isPackaged){const|g" -i "${srcdir}/app.asar.unpacked/.webpack/main/index.js"
+ asar p "${srcdir}/app.asar.unpacked" "${srcdir}/app.asar"
+}
+package() {
+ install -Dm755 "${srcdir}/${pkgname%-bin}.sh" "${pkgdir}/usr/bin/${pkgname%-bin}"
+ install -Dm644 "${srcdir}/app.asar" -t "${pkgdir}/usr/lib/${pkgname%-bin}/resources"
+ cp -r "${srcdir}/usr/lib/${pkgname%-bin}/resources/app.asar.unpacked" "${pkgdir}/usr/lib/${pkgname%-bin}"
+ install -Dm644 "${srcdir}/usr/share/pixmaps/${pkgname%-bin}.png" -t "${pkgdir}/usr/share/pixmaps"
+ install -Dm644 "${srcdir}/usr/share/applications/${pkgname%-bin}.desktop" -t "${pkgdir}/usr/share/applications"
+} \ No newline at end of file
diff --git a/localchat.sh b/localchat.sh
new file mode 100644
index 000000000000..f9ced1432cfc
--- /dev/null
+++ b/localchat.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+set -e
+_APPDIR="/usr/lib/@appname@"
+_RUNNAME="${_APPDIR}/@runname@"
+export PATH="${_APPDIR}:${PATH}"
+export LD_LIBRARY_PATH="${_APPDIR}/swiftshader:${_APPDIR}/lib:${LD_LIBRARY_PATH}"
+export ELECTRON_IS_DEV=0
+export NODE_ENV=production
+cd "${_APPDIR}"
+if [[ $EUID -ne 0 ]] || [[ $ELECTRON_RUN_AS_NODE ]]; then
+ exec electron@electronversion@ "${_RUNNAME}" "$@" || exit $?
+else
+ exec electron@electronversion@ "${_RUNNAME}" --no-sandbox "$@" || exit $?
+fi \ No newline at end of file