Fix and update package

This commit is contained in:
SelfRef 2025-09-27 22:22:35 +02:00
parent ebe9a732fc
commit ca11b60e18
No known key found for this signature in database
GPG key ID: 1DCDBA681B911503
3 changed files with 40 additions and 64 deletions

View file

@ -1,24 +1,22 @@
pkgbase = jan
pkgdesc = An open source alternative to ChatGPT that runs 100% offline on your computer
pkgver = 0.5.16
pkgver = 0.6.10
pkgrel = 1
url = https://jan.ai/
arch = x86_64
license = AGPL-3.0
makedepends = git
makedepends = nvm
makedepends = libxcrypt-compat
makedepends = python
depends = nss
depends = atk
depends = libcups
makedepends = yarn
makedepends = cargo
makedepends = libappindicator-gtk3
depends = gtk3
depends = alsa-lib
depends = webkit2gtk-4.1
optdepends = libappindicator-gtk3: for tray icon support
provides = jan
conflicts = jan
source = jan::git+https://github.com/janhq/jan.git#tag=v0.5.16
source = jan.desktop
sha256sums = 99368386ae385b7b95d9670da1b0c59ee840dac9bc6313393fedbc2e5680a043
sha256sums = 689c50321d61f2c40a275c004865e9956501038782867bbe73e9d42128f40048
options = !lto
source = jan::git+https://github.com/menloresearch/jan.git#tag=v0.6.10
sha256sums = c4811e40b4b0a8558eafbb5656a37409697c7f93481ea7e7a0b0a06c6a928587
pkgname = jan

View file

@ -1,74 +1,62 @@
# Maintainer: SelfRef <arch@selfref.dev>
_basename=jan
pkgname=${_basename}
pkgver=0.5.16
_pkgbase=jan
pkgname=${_pkgbase}
pkgver=0.6.10
pkgrel=1
pkgdesc="An open source alternative to ChatGPT that runs 100% offline on your computer"
url="https://jan.ai/"
arch=('x86_64')
license=('AGPL-3.0')
source=(
"$_basename::git+https://github.com/janhq/jan.git#tag=v$pkgver"
'jan.desktop'
)
sha256sums=('99368386ae385b7b95d9670da1b0c59ee840dac9bc6313393fedbc2e5680a043'
'689c50321d61f2c40a275c004865e9956501038782867bbe73e9d42128f40048')
provides=("$_basename")
conflicts=("$_basename")
source=("$_pkgbase::git+https://github.com/menloresearch/jan.git#tag=v$pkgver")
sha256sums=('c4811e40b4b0a8558eafbb5656a37409697c7f93481ea7e7a0b0a06c6a928587')
provides=("$_pkgbase")
conflicts=("$_pkgbase")
options=(!lto)
depends=(
'nss'
'atk'
'libcups'
'gtk3'
'alsa-lib'
'webkit2gtk-4.1'
)
optdepends=(
'libappindicator-gtk3: for tray icon support'
)
makedepends=(
'git'
'nvm'
'libxcrypt-compat'
'python'
'yarn'
'cargo'
'libappindicator-gtk3'
)
_ensure_local_nvm() {
which nvm >/dev/null 2>&1 && nvm deactivate && nvm unload
export NVM_DIR="${srcdir}/.nvm"
source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]]
which nvm >/dev/null 2>&1 && nvm deactivate && nvm unload
export NVM_DIR="${srcdir}/.nvm"
source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]]
}
prepare() {
cd "$_basename"
cd "$_pkgbase"
_ensure_local_nvm
workflow_file=.github/workflows/template-build-linux-x64.yml
[ -f "$workflow_file" ] && node_ver=$(grep -Po 'node-version: \K\d+' "$workflow_file")
nvm install ${node_ver:-20}
npm install --global yarn
[ -f electron/package.json ] && sed -i '/"build:linux"/s/-l deb -l AppImage/-l --dir/' electron/package.json
nvm install 20
[ -f package.json ] && sed -i '/"build:tauri:linux"/ s/\.\/[^ ]*\.sh//g; /"build:tauri:linux"/ s/&& "/--bundles deb"/g' package.json
}
build() {
cd "$_basename"
cd "$_pkgbase"
_ensure_local_nvm
export YARN_CACHE_FOLDER="$srcdir"/yarn-cache
export RUSTUP_TOOLCHAIN=stable
rm -rf src-tauri/target/release/bundle/deb
make build
}
package() {
# Desktop file
install -Dm644 ../jan.desktop "$pkgdir"/usr/share/applications/jan.desktop
cd "$_pkgbase"
install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$_pkgbase/LICENSE"
# Application files
cd "$_basename"/electron
install -dm755 "$pkgdir"/opt/Jan
cp -r dist/linux-unpacked/* "$pkgdir"/opt/Jan/
# Icon files
cd icons
[ -f icon.png ] && install -Dm644 icon.png "$pkgdir"/usr/share/icons/hicolor/512x512/apps/jan.png
[ -f icon-tray.png ] && install -Dm644 icon-tray.png "$pkgdir"/usr/share/icons/hicolor/16x16/apps/jan.png
[ -f icon-tray@2x.png ] && install -Dm644 icon-tray@2x.png "$pkgdir"/usr/share/icons/hicolor/32x32/apps/jan.png
cd src-tauri/target/release/bundle/deb/Jan_*/data/usr
install -Dm755 bin/* -t "$pkgdir"/usr/bin
install -dm755 "$pkgdir"/usr/share
cp -r share/* "$pkgdir"/usr/share
}

View file

@ -1,10 +0,0 @@
[Desktop Entry]
Name=Jan
Exec=/opt/Jan/jan %U
Terminal=false
Type=Application
Icon=jan
StartupWMClass=Jan
Comment=Use offline LLMs with your own data. Run open source models like Llama2 or Falcon on your internal computers/servers.
MimeType=x-scheme-handler/jan;
Categories=Utility;