aboutsummaryrefslogtreecommitdiff
path: root/seafile/APKBUILD
blob: 8a47f382c98425414deb5cf7465f7a5c56b0ea4f (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
# Contributor: <xmingske@gmail.com>
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=seafile
pkgver=7.0.9
pkgrel=1
pkgdesc="Cloud storage system with advanced support for file syncing, privacy protection and teamwork"
url="https://github.com/haiwen/seafile/"
arch="all"
license="AGPL3"
makedepends="autoconf automake bash curl-dev fuse-dev glib-dev
	intltool jansson-dev libarchive-dev libevent-dev libevhtp-dev
	libsearpc-dev libtool libzdb-dev openssl-dev sqlite-dev util-linux-dev
	vala bsd-compat-headers libevhtp-dev"
depends="bash ${pkgname}-common"
pkgusers="seafile"
pkggroups="seafile"
source="
    $pkgname-$pkgver.tar.gz::https://github.com/haiwen/seafile/archive/v${pkgver}.tar.gz
    seafile.initd
    seafile.confd"
subpackages="$pkgname-dev $pkgname-doc py-$pkgname:py $pkgname-server
	$pkgname-common"
install="seafile-server.pre-install seafile-server.post-install"

_builddir="${srcdir}/${pkgname}-${pkgver}"

prepare() {
	local pf
	cd "${_builddir}" || return 1
	for pf in $source; do
		case $pf in
		*.patch) msg $pf; patch -p1 -i "$srcdir"/${pf} || return 1;;
		esac
	done
}

build() {
	cd "${_builddir}"
	./autogen.sh
	./configure \
                --prefix=/usr \
                --sysconfdir=/etc \
                --mandir=/usr/share/man \
                --infodir=/usr/share/info \
		--enable-server \
		--enable-python \
		--enable-fuse \
		--enable-client \
		--enable-console
	make CFLAGS="$CFLAGS $(pkgconf --cflags evhtp)" || return 1
}

package() {
	cd "${_builddir}"
	make DESTDIR="${pkgdir}" install || return 1
	rm "${pkgdir}"/usr/lib/libseafile.la || return 1
}

py() {
        arch="noarch"
        cd "$_builddir"
        pkgdesc="$pkgname python bindings"
        install -d "$subpkgdir"/usr/lib || return 1
        mv "$pkgdir"/usr/lib/python* "$subpkgdir"/usr/lib/ || return 1
}

common() {
	mkdir -p "${subpkgdir}"/usr/bin || return 1
	mkdir -p "${subpkgdir}"/usr/lib || return 1
	mv "${pkgdir}"/usr/bin/seafile "${subpkgdir}"/usr/bin
	mv "${pkgdir}"/usr/lib/libseafile.so.0* "${subpkgdir}"/usr/lib
}

server() {
	mkdir -p "${subpkgdir}"/usr/bin
	for b in "${pkgdir}"/usr/bin/*; do
		if [[ "$b" != "${pkgdir}/usr/bin/seaf-cli" ]] && \
		[[ "$b" != "${pkgdir}/usr/bin/seaf-daemon" ]] && \
		[[ "$b" != "${pkgdir}/usr/bin/seafile" ]]; then
			mv "$b" "${subpkgdir}/usr/bin" || return 1
		fi
	done
	mkdir -m 755 -p "${subpkgdir}"/usr/share/seafile || return 1
	cp -ar "${_builddir}"/scripts "${subpkgdir}"/usr/share/seafile || return 1
	install -D -m0644 "${srcdir}"/seafile.confd "${subpkgdir}"/etc/conf.d/seafile \
	    || return 1
	install -D -m0755 "${srcdir}"/seafile.initd "${subpkgdir}"/etc/init.d/seafile \
	    || return 1

	#make dirs for default instance
	SEAFILE_HOME="${subpkgdir}"/var/lib/seafile
	SEAFILE_DEFAULT=$SEAFILE_HOME/default
	mkdir -m 755 -p $SEAFILE_DEFAULT 2>/dev/null
	chown seafile:seafile $SEAFILE_DEFAULT

}
sha512sums="
4c87e7a4a6a4cef631cbfbeb1bde3c8c9e0915d5fe4597d5b3a4b8aa15e9650e97b51ee6a3b0bae4d235ec53149dca01aed7acd704da593c97da0a17e352a75d  seafile-7.0.9.tar.gz
66b84519ab66e7435da13a2ed1869bac3ead1f7b46ed4b0a5ecda6dfcea056c5e0af8abcf1eba00fc2e68b8df7e07e3951968c385850f01ecf46f08dfdbe7083  seafile.initd
051ccc065a3b7abc7c802e00e364da1c3f689e133c4ba37385dbff97cfe8ad4b490cf53778344d129213fb0238258690a47f5e737387bce1368db59d22ee8504  seafile.confd
"