summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 548da5488a74d0dbc7c4717f29393b0ee1af8724 (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
# Maintainer: meanlint <meanlint@outlook.com>
# Maintainer: shaka042 <chefmayonaisse.observant341 at slmails dot com>
# Contributor: Aria Moradi <aria.moradi007 at gmail dot com>
# Contributor: Mahor Foruzesh <mahor1221 at gmail dot com>

pkgname=suwayomi-server-preview-bin
_pkgname=suwayomi-server
_PkgName=Suwayomi-Server
pkgver=2.1.2065
pkgrel=1
_pkgver="${pkgver%_*}"
pkgdesc="A free and open source manga reader that runs extensions built for Tachiyomi"
arch=("any")
url="https://github.com/Suwayomi/Suwayomi-Server-preview"
license=("MPL2")
depends=("java-runtime>=21" "libc++" "gcc")
optdepends=("electron: running in Electron"
    "xorg-server-xvfb: Virtual framebuffer X server to run suwayomi in headless mode"
    "flaresolverr: A proxy server to bypass Cloudflare protection"
    "libappindicator: Allow applications to extend a menu via Ayatana indicators in Unity, KDE or Systray (tray icon)")
provides=("suwayomi" "$_pkgname" "tachidesk" "tachidesk-server")
conflicts=("tachidesk")
_jar="$_PkgName-v$_pkgver.jar"
_assets="$_PkgName-v$_pkgver-linux-assets"
backup=("etc/suwayomi/server.conf")
source=("$url/releases/download/v$_pkgver/$_jar"
  "$url/releases/download/v$_pkgver/$_assets.tar.gz"
  "https://raw.githubusercontent.com/Suwayomi/$_PkgName/refs/heads/master/scripts/resources/catch_abort.c")
noextract=("$_jar")
sha256sums=('SKIP'
            'SKIP'
            'SKIP'
)

build() {
   # Add missing abort handler
   export JAVA_HOME="/usr/lib/jvm/default"
   gcc -fPIC -I$JAVA_HOME/include -I$JAVA_HOME/include/linux -shared catch_abort.c -lpthread -o catch_abort.so
}

package() {
  cd "$srcdir/"
  install -Dm644 "catch_abort.so"                   "$pkgdir/usr/share/java/$_pkgname/bin/catch_abort.so"
  install -Dm644 "$_jar"                            "$pkgdir/usr/share/java/$_pkgname/bin/$_PkgName.jar"
  cd "$srcdir/$_assets/"
  install -Dm644 "$_pkgname.conf"                   "$pkgdir/etc/suwayomi/server.conf"
  install -Dm644 "$_pkgname.service"                "$pkgdir/usr/lib/systemd/system/$_pkgname.service"
  install -Dm644 "$_pkgname.sysusers"               "$pkgdir/usr/lib/sysusers.d/$_pkgname.conf"
  install -Dm644 "$_pkgname.tmpfiles"               "$pkgdir/usr/lib/tmpfiles.d/$_pkgname.conf"
  install -Dm644 "$_pkgname.desktop"                "$pkgdir/usr/share/applications/$_pkgname.desktop"
  install -Dm644 "$_pkgname.png"                    "$pkgdir/usr/share/pixmaps/$_pkgname.png"
  install -Dm755 "$_pkgname.sh"                     "$pkgdir/usr/bin/$_pkgname"
  # keep backwards compatibility
  ln -sr "$pkgdir/usr/bin/$_pkgname"                "$pkgdir/usr/bin/suwayomi"
}