diff --git a/testing/radicale/APKBUILD b/testing/radicale/APKBUILD index 0e132dd5ee44dc9e7bfd819b7c4b974d0d925b17..60d8607d2965ec2f4ab8bda54b274a81362b5c4c 100644 --- a/testing/radicale/APKBUILD +++ b/testing/radicale/APKBUILD @@ -1,19 +1,21 @@ # Contributor: Sören Tempel <soeren+alpine@soeren-tempel.net> +# Contributor: Michał Polański <michal@polanski.me> # Maintainer: Natanael Copa <ncopa@alpinelinux.org> pkgname=radicale -pkgver=2.1.12 +pkgver=3.0.1 pkgrel=0 -pkgdesc="A simple CalDAV (calendar) and CardDAV (contact) server" -url="http://radicale.org" +pkgdesc="Free and open-source CalDAV and CardDAV server" +url="https://radicale.org/3.0.html" arch="noarch" license="GPL-3.0-or-later" -depends="python3 py3-vobject py3-dateutil py3-setuptools" +depends="python3 py3-passlib py3-vobject py3-defusedxml py3-dateutil py3-setuptools" +checkdepends="py3-pytest py3-pytest-flake8 py3-pytest-isort py3-pytest-cov py3-waitress" pkgusers="radicale" pkggroups="radicale" install="$pkgname.pre-install" -options="!check" # no test suite -source="https://files.pythonhosted.org/packages/source/R/Radicale/Radicale-$pkgver.tar.gz - $pkgname.initd" +source="$pkgname-$pkgver.tar.gz::https://github.com/Kozea/Radicale/archive/$pkgver.tar.gz + $pkgname.initd + $pkgname.confd" subpackages="$pkgname-openrc" builddir="$srcdir/Radicale-$pkgver" @@ -21,19 +23,28 @@ build() { python3 setup.py build } +check() { + # install the package to test_install directory for testing + python3 setup.py install --root="$PWD"/test_install + + PYTHONPATH="$PWD"/test_install/usr/lib/python3.8/site-packages \ + pytest +} + package() { - python3 setup.py install --skip-build --prefix=/usr \ - --root="$pkgdir" + python3 setup.py install --skip-build --prefix=/usr --root="$pkgdir" + + install -d -o radicale -g radicale "$pkgdir"/var/lib/radicale \ + "$pkgdir"/var/log/radicale install -d "$pkgdir"/etc/radicale install -m640 -g radicale config "$pkgdir"/etc/radicale/ - install -m640 -g radicale logging "$pkgdir"/etc/radicale/ + install -m640 -g radicale rights "$pkgdir"/etc/radicale/ - install -d -o radicale "$pkgdir"/var/lib/radicale \ - "$pkgdir"/var/log/radicale - install -Dm755 "$srcdir"/radicale.initd \ - "$pkgdir"/etc/init.d/radicale + install -Dm755 "$srcdir"/radicale.initd "$pkgdir"/etc/init.d/radicale + install -Dm644 "$srcdir"/radicale.confd "$pkgdir"/etc/conf.d/radicale } -sha512sums="a708fb1269f7ba8c9e351e101f613a8adb18c12b1239b832ed9e0287476f30aa7ded30f9bc259da9c4b5f3aefe90bbf9980d0d08d98dd07b79cd19930b0e204c Radicale-2.1.12.tar.gz -9856e5dbea45a6d2de592191fb97c310453a839e386a81c2ba0f28a9fb6005d8e8284b0ff59e02950bac3f5f1107aadb109baffc6c9445885792b50af959c740 radicale.initd" +sha512sums="7e8ce9350dad5e90dd5e4e1056f1a5e37fc496227faccc9fbf4877cbff52bc0dd65623fdc11b6bf554224dee540cdb592ac8f187b487a0482b97de9102e4965b radicale-3.0.1.tar.gz +f1eb4477ca7d7d8040837b712289f18d6b62c7f862a8e9bea32968a49b8bf4394360b5440c815aa23df48ba0aaac61bcb8c9d6e7575c3b23da2ac05a45eac194 radicale.initd +09bb6228ba07039b97b317d4547a33b7ebf9c8f47ff72b870fc2f5e46de620e0614d993c5c96d73f0ad6196d469bb0f7206478781abf314af1d598e3132d678e radicale.confd" diff --git a/testing/radicale/radicale.confd b/testing/radicale/radicale.confd new file mode 100644 index 0000000000000000000000000000000000000000..40ec94606c44b8e4aa705abbbb5aa28edc7759e1 --- /dev/null +++ b/testing/radicale/radicale.confd @@ -0,0 +1 @@ +radicale_opts="" diff --git a/testing/radicale/radicale.initd b/testing/radicale/radicale.initd index 82b8379a63fb7ea809a638465b49bc137d32f4c2..91a523ffb2f4faa411c4ca582eba75f9f04893bb 100644 --- a/testing/radicale/radicale.initd +++ b/testing/radicale/radicale.initd @@ -2,21 +2,27 @@ supervisor=supervise-daemon name=radicale -description="A simple CalDAV (calendar) and CardDAV (contact) server" +description="Free and open-source CalDAV and CardDAV server" command=/usr/bin/radicale -command_args_foreground="--foreground" - +command_args="$radicale_opts" command_user=radicale:radicale +logdir="/var/log/radicale" +logfile="$logdir/radicale.log" +supervise_daemon_args="--stderr $logfile" + depend() { use net need localmount } start_pre() { - checkpath --directory --owner radicale /var/lib/radicale - checkpath --directory --owner radicale /var/log/radicale - checkpath --file --owner root:radicale --mode 0640 /etc/radicale/config - checkpath --file --owner root:radicale --mode 0640 /etc/radicale/logging + checkpath -d -o radicale /var/lib/radicale + checkpath -d -o radicale "$logdir" + checkpath -f -o radicale "$logfile" + + checkpath -f -o root:radicale -m640 /etc/radicale/config + checkpath -f -o root:radicale -m640 /etc/radicale/rights + checkpath -f -o root:radicale -m640 /etc/radicale/users } diff --git a/testing/radicale/radicale.pre-install b/testing/radicale/radicale.pre-install index 147f8851755a052cdc2c6c705af542884d960323..0697d4a2a3fb5581e7df13e0251bd5cb75c0ce52 100644 --- a/testing/radicale/radicale.pre-install +++ b/testing/radicale/radicale.pre-install @@ -4,6 +4,5 @@ name=radicale addgroup -S $name 2>/dev/null adduser -S -D -H -h /var/lib/$name -s /sbin/nologin -G $name -g $name $name 2>/dev/null -addgroup $name $name 2>/dev/null exit 0