summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 672b2a6bfb1e84e691920ed1eda5c28713037994 (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
# Maintainer: Fritz Prix <fritzprix@gmail.com>
pkgname=libragent
pkgver=0.4.7
pkgrel=1
pkgdesc="A desktop app for AI agents with built-in tools"
arch=('x86_64')
url="https://github.com/fritzprix/libr-agent"
license=('MIT')
depends=('webkit2gtk-4.1' 'gtk3' 'libappindicator-gtk3' 'librsvg' 'libsecret')
makedepends=('git' 'cargo' 'nodejs' 'pnpm' 'clang')
source=("${pkgname}::git+https://github.com/fritzprix/libr-agent.git#tag=v${pkgver}"
        "libragent.desktop")
sha256sums=('SKIP'
            'SKIP')

prepare() {
  cd "$pkgname"
  pnpm install --frozen-lockfile
}

build() {
  cd "$pkgname"
  # Ensure we don't try to sign the package
  export TAURI_SIGNING_PRIVATE_KEY=""
  export TAURI_SIGNING_KEY_PASSWORD=""
  
  # Fix for ring build issues in AUR environment
  # ring crate can fail with GCC or when CFLAGS interfere with assembly compilation
  export CC=clang
  export CXX=clang++
  unset CFLAGS
  unset CXXFLAGS
  unset LDFLAGS
  
  # Build the application using tauri build to ensure assets are bundled
  # --no-bundle skips creating deb/rpm/appimage which avoids linuxdeploy issues
  pnpm tauri build --no-bundle
}

package() {
  cd "$pkgname"
  
  # Install binary
  install -Dm755 "src-tauri/target/release/libragent" "$pkgdir/usr/bin/libragent"
  
  # Install icons
  install -Dm644 "src-tauri/icons/128x128.png" "$pkgdir/usr/share/icons/hicolor/128x128/apps/libragent.png"
  install -Dm644 "src-tauri/icons/32x32.png" "$pkgdir/usr/share/icons/hicolor/32x32/apps/libragent.png"
  install -Dm644 "src-tauri/icons/icon.png" "$pkgdir/usr/share/icons/hicolor/512x512/apps/libragent.png"
  
  # Install desktop file
  install -Dm644 "../libragent.desktop" "$pkgdir/usr/share/applications/libragent.desktop"
  
  # Install license
  install -Dm644 "LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
}