projects/aports·blob master · refs

71 lines · 2.9 KiB

1# Maintainer: Tony Evl <[email protected]>
2pkgname=opencloud
3pkgver=8.1.0
4pkgrel=0
5_webver=8.1.0
6pkgdesc="Modern file-sync and share platform - server with embedded web UI"
7url="https://opencloud.eu/"
8# riscv64: pnpm install segfaults
9arch="all !riscv64"
10license="Apache-2.0"
11depends="ca-certificates mailcap attr"
12makedepends="go nodejs pnpm rollup make bash"
13install="$pkgname.pre-install $pkgname.post-install"
14subpackages="$pkgname-openrc"
15pkgusers="opencloud"
16pkggroups="opencloud"
17source="opencloud-$pkgver.tar.gz::https://github.com/opencloud-eu/opencloud/archive/refs/tags/v$pkgver.tar.gz
18 opencloud-web-$_webver.tar.gz::https://github.com/opencloud-eu/web/releases/download/v$_webver/web.tar.gz
19 system-rollup.patch
20 opencloud.initd
21 opencloud.confd
22 "
23# net : pnpm fetches the idp frontend's npm dependencies during build().
24# !check: upstream has no self-contained unit-test target suitable for the
25# packaging sandbox; the acceptance suite needs a running stack.
26options="net !check"
27
28build() {
29 export GOFLAGS="$GOFLAGS -mod=vendor -trimpath"
30 export GOPROXY=off
31
32 mkdir -p services/web/assets/core
33 tar -C services/web/assets/core -xzf "$srcdir/$pkgname-web-$_webver.tar.gz"
34
35 make -C services/idp node-generate-prod
36
37 local _pkg="github.com/opencloud-eu/opencloud"
38 local _ldflags="-s -w
39 -X google.golang.org/protobuf/reflect/protoregistry.conflictPolicy=warn
40 -X $_pkg/pkg/version.Tag=v$pkgver
41 -X $_pkg/pkg/version.String=$pkgver
42 -X $_pkg/pkg/version.Edition=stable
43 -X $_pkg/pkg/config/defaults.BaseConfigPathType=path
44 -X $_pkg/pkg/config/defaults.BaseConfigPathValue=/etc/opencloud
45 -X $_pkg/pkg/config/defaults.BaseDataPathType=path
46 -X $_pkg/pkg/config/defaults.BaseDataPathValue=/var/lib/opencloud"
47
48 cd "$builddir"/opencloud
49 go build -tags disable_crypt -ldflags "$_ldflags" \
50 -o bin/opencloud ./cmd/opencloud
51}
52
53package() {
54 install -Dm755 "$builddir"/opencloud/bin/opencloud \
55 "$pkgdir"/usr/bin/opencloud
56
57 install -Dm755 "$srcdir"/$pkgname.initd "$pkgdir"/etc/init.d/$pkgname
58 install -Dm644 "$srcdir"/$pkgname.confd "$pkgdir"/etc/conf.d/$pkgname
59
60 install -dm700 "$pkgdir"/etc/opencloud
61 install -dm700 "$pkgdir"/var/lib/opencloud
62 install -dm755 "$pkgdir"/var/log/opencloud
63}
64
65sha512sums="
66c14f4598086466537c29de4a6eaad594f8d578dbd2a4def964086b20aa15964ab9be33c68b3886da6aa4c0b0898ad1021e9512f2235b9a4ec77679e81e2150ee opencloud-8.1.0.tar.gz
67eeafb648765628d7e4f0740d0cd94d15df8470919e246ae79d4e4147be87413338b825e4ea4ce6ee725998034e163b3a23f8cc9e1bf866005cf44aeb011db315 opencloud-web-8.1.0.tar.gz
68899b37658553684a72dc836cb158ca8e6bee8f9219c7c21b16427b0d0d73a598052811d7af2232d84462d126935c06b60e2d0ce309073eda9ad1f1eac37555a0 system-rollup.patch
693ba5eb5862c780c3af1865423cccb0b0c19dcea8c2892aa7e3375054d769766f63df783b90a26f790bdfea312f4bc7993aaa755898e295233733936c72f3c3d5 opencloud.initd
70d0efd0564edc826f5f06fe1fc04a412790cf0835b579e78c654f7157fdd1d2f87b24ebdbc33b5161560af22a89ec255919b16e9c3f03635a358ca8d2df45ce78 opencloud.confd
71"