nextcloud-native

LOW
maintainer Felitendo 0 votes scanned 2026-08-21 07:14:31.584968
View on AUR
Why flagged

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

Triggered rules

Low Few votes, recently uploaded zero_votes_recent

Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.

PKGBUILD

1# Maintainer: Felitendo
2# This PKGBUILD is updated automatically:
3# https://github.com/Felitendo/PKGBUILDS
4
5pkgname=nextcloud-native
6pkgver=0.1.0alpha.2
7pkgrel=1
8pkgdesc="Adaptive native client for Nextcloud files, media and apps"
9arch=('x86_64')
10url="https://nc-native.obiente.dev"
11license=('AGPL-3.0-or-later')
12# createDistributable produces a jpackage application image with its own jlink
13# runtime, so the shared libraries that runtime needs are the only depends.
14depends=('alsa-lib' 'brotli' 'bzip2' 'expat' 'fontconfig' 'freetype2'
15 'gcc-libs' 'glibc' 'hicolor-icon-theme' 'libbsd' 'libglvnd' 'libmd'
16 'libpng' 'libsecret' 'libx11' 'libxau' 'libxcb' 'libxdmcp' 'libxext'
17 'libxi' 'libxrender' 'libxtst' 'xdg-utils' 'zlib')
18# The Android SDK, Rust and Node.js that CONTRIBUTING.md lists are needed for
19# the mobile target, the Windows shell helper and the website. The Linux
20# desktop image builds with JDK 21 alone; python renders the AppStream file.
21makedepends=('jdk21-openjdk' 'python')
22optdepends=('gnome-keyring: Secret Service provider for stored accounts'
23 'kwallet: Secret Service provider for stored accounts on Plasma'
24 'fuse2: mount an account as a virtual file system')
25options=('!strip' '!debug')
26# Upstream has no stable release yet; only the versioned tags are packaged.
27# pkgver drops the hyphen from the tag; see pkg.sh.
28_tag="v0.1.0-alpha.2"
29source=("${pkgname}-${pkgver}.tar.gz::https://github.com/Obiente/nc-native/archive/refs/tags/${_tag}.tar.gz")
30sha256sums=('7ec5b795778668f133f0fe3d3e41e11b4fcb0c2e825c794c3915d791af14f920')
31
32_srcname="nc-native-${_tag#v}"
33
34build() {
35 cd "$_srcname"
36
37 export JAVA_HOME=/usr/lib/jvm/java-21-openjdk
38 # keep Gradle's cache inside the build tree instead of ~/.gradle
39 export GRADLE_USER_HOME="$srcdir/gradle-home"
40
41 # Gradle resolves the dependency graph from Maven Central and Google's
42 # repository during this step, so build() needs network access.
43 ./gradlew --no-daemon --console=plain :ui:createDistributable
44}
45
46package() {
47 cd "$_srcname"
48
49 install -d "$pkgdir/opt/nextcloudnative"
50 cp -a ui/build/compose/binaries/main/app/NextcloudNative/. \
51 "$pkgdir/opt/nextcloudnative/"
52
53 # the launcher resolves its own directory through /proc/self/exe, so a
54 # symlink into /usr/bin keeps the application image self-contained
55 install -d "$pkgdir/usr/bin"
56 ln -s /opt/nextcloudnative/bin/NextcloudNative "$pkgdir/usr/bin/nextcloud-native"
57
58 # upstream's jpackage template, with the launcher path jpackage would fill in
59 sed "s|^Exec=.*|Exec=/opt/nextcloudnative/bin/NextcloudNative|" \
60 release/linux/jpackage/NextcloudNative.desktop \
61 > "$srcdir/nextcloudnative-NextcloudNative.desktop"
62 install -Dm644 "$srcdir/nextcloudnative-NextcloudNative.desktop" \
63 "$pkgdir/usr/share/applications/nextcloudnative-NextcloudNative.desktop"
64
65 install -Dm644 ui/src/desktopMain/resources/nextcloud-native.png \
66 "$pkgdir/usr/share/icons/hicolor/512x512/apps/dev.obiente.nextcloudnative.png"
67
68 # same renderer the packageDeb path uses, fed from gradle.properties so the
69 # metadata cannot drift away from the tag being built
70 python3 tools/render-linux-appstream-metadata.py \
71 release/linux/dev.obiente.nextcloudnative.metainfo.xml \
72 "$pkgdir/usr/share/metainfo/dev.obiente.nextcloudnative.metainfo.xml" \
73 "$(grep -Po '^ncDesktopPackageVersion=\K.*' gradle.properties)" \
74 "$(grep -Po '^ncVersionName=\K.*' gradle.properties)" \
75 "$(date -u -d "@$SOURCE_DATE_EPOCH" +%F)"
76
77 install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
78}
79

Scan history

Scanned at (UTC)SeverityRules
2026-08-21 07:14:31 Low 1

Report a package

Reports go to the AURWatch maintainer (one person) and are read by hand. No login required.

0 / 4000
Your suggestion