summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--www-apps/radicale/Manifest1
-rw-r--r--www-apps/radicale/files/radicale-1.1.1-config.patch34
-rw-r--r--www-apps/radicale/files/radicale.init.d26
-rw-r--r--www-apps/radicale/metadata.xml7
-rw-r--r--www-apps/radicale/radicale-1.1.1.ebuild72
5 files changed, 140 insertions, 0 deletions
diff --git a/www-apps/radicale/Manifest b/www-apps/radicale/Manifest
new file mode 100644
index 0000000..ab96bab
--- /dev/null
+++ b/www-apps/radicale/Manifest
@@ -0,0 +1 @@
+DIST Radicale-1.1.1.tar.gz 47174 SHA256 e2c9812913c464ab88ae1f66b29e81f87a4cc6ee1c94d167b33508c530dab4b0 SHA512 dc251d8fa4d347c2bbcf472b7a2da94d674f858a007fec1d74774cd1f3ae43eb2d5902ed45762638ec49546b8ee1f66446d07b50fc0ff6595deb67ea07f87af2 WHIRLPOOL 315977a0bed6c1d5bfac24617b23e791d6c306658a14a478364dde61b5df5ac4136be18139d3edb7ab554f40a1d3cfce367770dab4c023868bb476f34e28a3b6
diff --git a/www-apps/radicale/files/radicale-1.1.1-config.patch b/www-apps/radicale/files/radicale-1.1.1-config.patch
new file mode 100644
index 0000000..4eb286f
--- /dev/null
+++ b/www-apps/radicale/files/radicale-1.1.1-config.patch
@@ -0,0 +1,34 @@
+diff --git a/config b/config
+index 453a45e..10c1595 100644
+--- a/config
++++ b/config
+@@ -146,7 +146,7 @@ http_password_parameter =
+ #custom_handler =
+
+ # File for rights management from_file
+-#file = ~/.config/radicale/rights
++file = /etc/radicale/rights
+
+
+ [storage]
+@@ -163,7 +163,7 @@ file = ~/.config/radicale/rights
+ #custom_handler =
+
+ # Folder for storing local collections, created if not present
+-#filesystem_folder = ~/.config/radicale/collections
++filesystem_folder = /var/lib/radicale/
+
+ # Database URL for SQLAlchemy
+ # dialect+driver://user:password@host/dbname[?key=value..]
+diff --git a/logging b/logging
+--- a/logging
++++ b/logging
+@@ -45,7 +45,7 @@ formatter = simple
+ [handler_file]
+ # File handler
+ class = FileHandler
+-args = ('/var/log/radicale',)
++args = ('/var/log/radicale/radicale.log',)
+ formatter = full
+
+
diff --git a/www-apps/radicale/files/radicale.init.d b/www-apps/radicale/files/radicale.init.d
new file mode 100644
index 0000000..a59e8d3
--- /dev/null
+++ b/www-apps/radicale/files/radicale.init.d
@@ -0,0 +1,26 @@
+#!/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 \
+ --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/metadata.xml b/www-apps/radicale/metadata.xml
new file mode 100644
index 0000000..d3bddde
--- /dev/null
+++ b/www-apps/radicale/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="pypi">Radicale</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/www-apps/radicale/radicale-1.1.1.ebuild b/www-apps/radicale/radicale-1.1.1.ebuild
new file mode 100644
index 0000000..8876986
--- /dev/null
+++ b/www-apps/radicale/radicale-1.1.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5} )
+
+inherit eutils distutils-r1 user
+
+MY_PN="Radicale"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="A simple CalDAV calendar server"
+HOMEPAGE="http://www.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=""
+
+S=${WORKDIR}/${MY_P}
+
+RDIR=/var/lib/radicale
+LDIR=/var/log/radicale
+
+PATCHES=( "${FILESDIR}"/${P}-config.patch )
+
+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
+ dodir ${RDIR}
+ fowners radicale:radicale ${RDIR}
+ diropts -m0755
+ dodir ${LDIR}
+ fowners radicale:radicale ${LDIR}
+
+ # config file
+ insinto /etc/${PN}
+ doins config logging
+
+ # fcgi and wsgi files
+ exeinto /usr/share/${PN}
+ doexe radicale.wsgi
+ doexe radicale.fcgi
+
+ 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."
+
+ einfo "Radicale supports different authentication backends that depend on external libraries."
+ einfo "Please install"
+ optfeature "LDAP auth" dev-python/python-ldap
+ optfeature "PAM auth" dev-python/python-pam
+ optfeature "HTTP auth" dev-python/requests
+ optfeature "FastCGI mode" dev-python/flup
+ optfeature "Database storage backend" dev-python/sqlalchemy
+ einfo "Please note that some of these libraries are Python 2 only."
+}