From 14574090c438b7a0b26428bfd4c4c7776fbe0b0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karel=20Ko=C4=8D=C3=AD?= Date: Fri, 2 Nov 2018 19:01:59 +0100 Subject: www-apps/radicale: redirect stdout and stderr to logger --- www-apps/radicale/Manifest | 1 + www-apps/radicale/files/radicale.init.d | 28 ++++++++++ www-apps/radicale/radicale-2.1.10-r1.ebuild | 84 +++++++++++++++++++++++++++++ 3 files changed, 113 insertions(+) create mode 100644 www-apps/radicale/Manifest create mode 100644 www-apps/radicale/files/radicale.init.d create mode 100644 www-apps/radicale/radicale-2.1.10-r1.ebuild diff --git a/www-apps/radicale/Manifest b/www-apps/radicale/Manifest new file mode 100644 index 0000000..2d8e116 --- /dev/null +++ b/www-apps/radicale/Manifest @@ -0,0 +1 @@ +DIST Radicale-2.1.10.tar.gz 77790 BLAKE2B 37061dd049dc918775f20b522ed86a47f32f34505c13763f8ae49ff007aca77f88caafc959be857c735c11b13506efdfc8413750808b88d5ea6dbe69e05f03ff SHA512 30fac6639e56bbd10664330d84ebba28b34005b4b4b4c5a6c22f53cb7e810ba4961cbd314e62fe33538674a2d4b45f14751f36ef5fa2ae2b7d44c1b1158f6e1c diff --git a/www-apps/radicale/files/radicale.init.d b/www-apps/radicale/files/radicale.init.d new file mode 100644 index 0000000..2035c8d --- /dev/null +++ b/www-apps/radicale/files/radicale.init.d @@ -0,0 +1,28 @@ +#!/sbin/openrc-run +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +PIDFILE=/var/run/radicale.pid + +depend() { + use net + need localmount +} + +start() { + ebegin "Starting radicale" + start-stop-daemon --start --quiet --background \ + --user radicale \ + --stdout-logger /usr/bin/logger \ + --stderr-logger /usr/bin/logger \ + --pidfile ${PIDFILE} --make-pidfile \ + --exec /usr/bin/radicale -- --foreground + eend $? +} + +stop() { + ebegin "Stopping radicale" + start-stop-daemon --stop --quiet \ + --pidfile ${PIDFILE} + eend $? +} diff --git a/www-apps/radicale/radicale-2.1.10-r1.ebuild b/www-apps/radicale/radicale-2.1.10-r1.ebuild new file mode 100644 index 0000000..89f03ec --- /dev/null +++ b/www-apps/radicale/radicale-2.1.10-r1.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +PYTHON_COMPAT=( python{3_4,3_5,3_6} ) + +inherit distutils-r1 eutils user + +MY_PN="Radicale" +MY_P="${MY_PN}-${PV}" + +DESCRIPTION="A simple CalDAV calendar server" +HOMEPAGE="https://radicale.org/" +SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="+bcrypt" + +RDEPEND=">=dev-python/vobject-0.9.6[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-2.7.3[${PYTHON_USEDEP}] + bcrypt? ( dev-python/passlib[bcrypt,${PYTHON_USEDEP}] )" + +S=${WORKDIR}/${MY_P} + +RDIR=/var/lib/radicale +LDIR=/var/log/radicale + +pkg_pretend() { + if [[ -f ${RDIR}/.props && ${MERGE_TYPE} != buildonly ]]; then + eerror "It looks like you have a version 1 database in ${RDIR}." + eerror "You must convert this database to version 2 format before upgrading." + eerror "You may want to back up the old database before migrating." + eerror + eerror "If you have kept the Gentoo-default database configuration, this will work:" + eerror "1. Stop any running instance of Radicale." + eerror "2. Run \`radicale --export-storage ~/radicale-exported\`." + eerror "3. Run \`chown -R radicale: ~/radicale-exported\`" + eerror "4. Run \`mv \"${RDIR}\" \"${RDIR}.old\"\`." + eerror "5. Install Radicale version 2." + eerror "6. Run \`mv ~/radicale-exported \"${RDIR}/collections\"\`." + eerror + eerror "For more details, or if you are have a more complex configuration," + eerror "please see the migration guide: https://radicale.org/1to2/" + eerror "If you do a custom migration, please ensure the database is cleaned out of" + eerror "${RDIR}, including the hidden .props file." + die + fi +} + +pkg_setup() { + enewgroup radicale + enewuser radicale -1 -1 ${RDIR} radicale +} + +python_install_all() { + rm README* || die + + # init file + newinitd "${FILESDIR}"/radicale.init.d radicale + + # directories + diropts -m0750 -oradicale -gradicale + keepdir ${RDIR} + diropts -m0755 -oradicale -gradicale + keepdir ${LDIR} + + # config file + insinto /etc/${PN} + doins config logging + + # fcgi and wsgi files + exeinto /usr/share/${PN} + doexe radicale.fcgi radicale.wsgi + + distutils-r1_python_install_all +} + +pkg_postinst() { + einfo "A sample WSGI script has been put into ${ROOT%/}/usr/share/${PN}." + einfo "You will also find there an example FastCGI script." +} -- cgit v1.2.3