summaryrefslogtreecommitdiff
path: root/libre/nextcloud-client/PKGBUILD
blob: 69a997b488542a0c67bd1e549a3e3726dabcb16b (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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
# Maintainer (Arch): Chih-Hsuan Yen <yan12125@archlinux.org>
# Contributor (Arch): Tyler Dence <tyzoid@archlinux32.org>
# Contributor (Arch): Konstantin Shalygin <k0ste@k0ste.ru>
# Contributor: Theo von Arx <theova@member.fsf.org>

# parabola changes and rationale:
#  - removed qt5-webengine dependency


pkgname=nextcloud-client
pkgver=2.6.1
_commit=5adbc01ef138efd252c5c8c340f57dae0b34d8b9
pkgrel=2
pkgrel+=.parabola1
pkgdesc='Nextcloud desktop client'
pkgdesc+=', without nonfree qt5-webengine dependency'
arch=(x86_64)
arch+=(i686 armv7h)
url='https://nextcloud.com/'
license=(GPL)

depends=('openssl' 'sqlite' 'qtkeychain' 'qt5-svg' 'xdg-utils')
optdepends=(
  'kio: integration with Dolphin'
  'nemo-python: integration with Nemo'
  'python-nautilus: integration with Nautilus'
  'python2-caja: integration with Caja'
)
makedepends=('doxygen' 'extra-cmake-modules' 'kio' 'python-sphinx' 'qt5-tools' 'git' 'cmocka')
backup=(etc/Nextcloud/sync-exclude.lst)

source=($pkgname::git+https://github.com/nextcloud/desktop.git?signed#commit=$_commit
        issue1458-workaround.patch::https://github.com/yan12125/desktop/commit/7da680ef7843a52c3136916744f50d4a003bb8b5.patch
        issue1458-2.patch::https://github.com/yan12125/desktop/commit/2b313368325dac5b8d0e69394cfcc4faaa745f75.patch
        remove-qtwebengine.patch
        $pkgname-fix-build.diff)
validpgpkeys=('A26B951528EA1BA1678C7AE5D406C75CEE1A36D6') # one of keys controlled by github.com/camilasan
sha256sums=('SKIP'
            '07cd68f54c004175b4a09cce25830a357d0ebaafaf4e4cabfb8b0d4deeded2f3'
            '157c87a789219a3442ca5947c48dcd1ef3898612ff32070bf8842a42bfbe857a'
            '0e036c1f9f200aff057092f5a5848a5f496903bac51105349b87b2cf11b04958'
            '8b257a0554ceb54a7ed320dbfa3becb97d6845338e28a8aa0a4f6239f3141645')


prepare()
{
  cd "$srcdir/$pkgname/"

  # tmpdir for check()
  mkdir tmpdir "$srcdir/$pkgname/build"

  # Use system GNUInstallDirs.cmake so that we can benefit from
  # https://gitlab.kitware.com/cmake/cmake/merge_requests/3735
  rm -v cmake/modules/GNUInstallDirs.cmake

  patch -Np1 -i ../issue1458-workaround.patch
  patch -Np1 -i ../issue1458-2.patch

  # https://github.com/nextcloud/desktop/pull/719
  # "Rename owncloud tests to nextcloud" - actually breaks building of tests
  patch -Np1 -i ../$pkgname-fix-build.diff

  # Remove qt5-webengine dependency
  patch -Np1 -i ../remove-qtwebengine.patch
}

build()
{
  cd "$srcdir/$pkgname/build"

  # bundled breakpad in libcrashreporter-qt submodule is too old and does not build with glibc >= 2.26
  # Upstream fix: https://github.com/google/breakpad/commit/bddcc58860f522a0d4cbaa7e9d04058caee0db9d
  cmake \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DNO_SHIBBOLETH=1 \
    -DWITH_CRASHREPORTER=OFF \
    -DUNIT_TESTING=ON \
    ..

  make
  # TODO: fix installation of PDF and HTML documents
  # WIP at https://github.com/yan12125/desktop/tree/doc-install-path
  make doc-man
}

check()
{
  cd "$srcdir/$pkgname/build"

  # many tests fail on i686 and armv7h
  [ "$CARCH" == 'i686' ] || [ "$CARCH" == 'armv7h' ] && return 0

  # Tests fail if $TMPDIR is too small; specify an alternative for machines
  # with a small /tmp partition.
  TMPDIR="$srcdir/tmpdir" make test ARGS="-V"
}

package()
{
  cd "$srcdir/$pkgname/build"

  make DESTDIR="$pkgdir" install
}