summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 2832876cb3ca90ba52ee7afa0e7299aaef48892c (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
# Maintainer: Mark Wagie <mark dot wagie at proton dot me>
pkgname=r-quick-share
pkgver=0.7.1
pkgrel=1
pkgdesc="Rust implementation of NearbyShare/QuickShare from Android for Linux."
arch=('x86_64')
url="https://github.com/Martichou/rquickshare"
license=('GPL-3.0-or-later')
depends=('gtk3' 'libayatana-appindicator' 'webkit2gtk')
makedepends=('cargo' 'pnpm' 'protobuf')
source=("$pkgname-$pkgver.tar.gz::$url/archive/refs/tags/v$pkgver.tar.gz")
sha256sums=('7d119a1faf764270ff7183dc878450a822b7114d49c1bdb0fad45dfe90a8a376')

prepare() {
  cd rquickshare-$pkgver
  export PNPM_HOME="$srcdir/pnpm-home"
  export CARGO_HOME="$srcdir/cargo-home"
  export RUSTUP_TOOLCHAIN=stable

  pushd frontend
  pnpm i
  popd

  pushd core_lib
  cargo fetch --target "$CARCH-unknown-linux-gnu"
  popd

  # Don't bundle AppImage
  sed -i 's/"targets": "all"/"targets": "deb"/g' frontend/src-tauri/tauri.conf.json
}

build() {
  cd rquickshare-$pkgver
  CFLAGS+=" -ffat-lto-objects"
  export PNPM_HOME="$srcdir/pnpm-home"
  export CARGO_HOME="$srcdir/cargo-home"
  export RUSTUP_TOOLCHAIN=stable

  pushd frontend
  pnpm build
  popd
}

package() {
  cd rquickshare-$pkgver
  _bundledir="frontend/src-tauri/target/release/bundle/deb/${pkgname}_${pkgver}_amd64"

  install -Dm755 "frontend/src-tauri/target/release/$pkgname" -t "$pkgdir/usr/bin/"

  for i in 32x32 128x128 128x128@2x; do
    install -Dm644 frontend/src-tauri/icons/${i}.png \
      "$pkgdir/usr/share/icons/hicolor/${i}/apps/$pkgname.png"
  done
  install -Dm644 frontend/src-tauri/icons/icon.png \
    "$pkgdir/usr/share/icons/hicolor/512x512/apps/$pkgname.png"

  install -Dm644 "${_bundledir}/data/usr/share/applications/$pkgname.desktop" -t \
    "$pkgdir/usr/share/applications/"
}