diff --git a/www/Makefile b/www/Makefile index 6e41676e62c3..53ee67d0cb8a 100644 --- a/www/Makefile +++ b/www/Makefile @@ -1914,6 +1914,7 @@ SUBDIR += qupzilla-qt5 SUBDIR += qutebrowser SUBDIR += radicale + SUBDIR += radicale2 SUBDIR += red5 SUBDIR += redaxo SUBDIR += redmine diff --git a/www/radicale2/Makefile b/www/radicale2/Makefile new file mode 100644 index 000000000000..7f09b2ec6614 --- /dev/null +++ b/www/radicale2/Makefile @@ -0,0 +1,53 @@ +# Created by: Mark Felder +# $FreeBSD$ + +PORTNAME= radicale2 +PORTVERSION= 2.1.9 +CATEGORIES= www python +MASTER_SITES= CHEESESHOP +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTNAME= Radicale-${PORTVERSION} + +MAINTAINER= decke@FreeBSD.org +COMMENT= Python based CalDAV/CardDAV server + +LICENSE= GPLv3 + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=0:devel/py-setuptools@${FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}bcrypt>=0:security/py-bcrypt@${FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}passlib>=0:security/py-passlib@${FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}vobject>=0:deskutils/py-vobject@${FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}flake8>=0:devel/py-flake8@${FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}isort>=0:devel/py-isort@${FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest-cov>=0:devel/py-pytest-cov@${FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest-runner>=0:devel/py-pytest-runner@${FLAVOR} + +CONFLICTS= radicale-1.[0-9]* + +USES= python:3.3+ shebangfix +USE_PYTHON= autoplist distutils +USERS= radicale +GROUPS= radicale +USE_RC_SUBR= radicale +NO_ARCH= yes +SHEBANG_FILES= radicale.fcgi radicale.wsgi + +SUB_LIST= USERS="${USERS}" GROUPS="${GROUPS}" PYTHON_CMD="${PYTHON_CMD}" + +post-patch: + ${REINPLACE_CMD} 's,= /etc,= ${PREFIX}/etc,g' ${WRKSRC}/config + ${REINPLACE_CMD} 's,~/.config/radicale,${DATADIR},g' ${WRKSRC}/config + +post-install: + ${MKDIR} ${STAGEDIR}/${ETCDIR} + ${MKDIR} ${STAGEDIR}/${DATADIR} + ${MKDIR} ${STAGEDIR}/${WWWDIR} + ${INSTALL_DATA} ${WRKSRC}/config ${STAGEDIR}/${ETCDIR}/config.sample + ${INSTALL_DATA} ${WRKSRC}/logging ${STAGEDIR}/${ETCDIR}/logging.sample + ${INSTALL_SCRIPT} ${WRKSRC}/radicale.fcgi ${STAGEDIR}${WWWDIR}/radicale.fcgi + ${INSTALL_SCRIPT} ${WRKSRC}/radicale.wsgi ${STAGEDIR}${WWWDIR}/radicale.wsgi + +do-test: + @cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test + +.include diff --git a/www/radicale2/distinfo b/www/radicale2/distinfo new file mode 100644 index 000000000000..ba354ed8cba5 --- /dev/null +++ b/www/radicale2/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1526561113 +SHA256 (Radicale-2.1.9.tar.gz) = 41241d9aaae1990ceb7a716d6a47d7c99d09fdc76b2e1f36e3de4554664bcc63 +SIZE (Radicale-2.1.9.tar.gz) = 77098 diff --git a/www/radicale2/files/radicale.in b/www/radicale2/files/radicale.in new file mode 100644 index 000000000000..307c69e71d6b --- /dev/null +++ b/www/radicale2/files/radicale.in @@ -0,0 +1,45 @@ +#!/bin/sh +# Created by: Mark Felder +# $FreeBSD$ +# + +# PROVIDE: radicale +# REQUIRE: DAEMON +# BEFORE: LOGIN +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf to enable radicale: +# radicale_enable (bool): Set to "NO" by default. +# Set it to "YES" to enable radicale. +# + +. /etc/rc.subr + +name=radicale +rcvar=radicale_enable + +# set defaults + +load_rc_config $name + +: ${radicale_enable:=NO} +: ${radicale_config=%%ETCDIR%%/config} +: ${radicale_user=%%USERS%%} +: ${radicale_group=%%GROUPS%%} + +pidfile=/var/run/radicale/radicale.pid +command=%%PREFIX%%/bin/radicale +command_args="-d -p ${pidfile} -C ${radicale_config}" +command_interpreter=%%PYTHON_CMD%% +required_files=${radicale_config} +start_precmd=do_precmd + +do_precmd() +{ + if [ ! -d ${pidfile%/*} ]; then + install -d -o ${radicale_user} ${pidfile%/*} + fi +} + +run_rc_command "$1" diff --git a/www/radicale2/pkg-descr b/www/radicale2/pkg-descr new file mode 100644 index 000000000000..c813718fe355 --- /dev/null +++ b/www/radicale2/pkg-descr @@ -0,0 +1,15 @@ +Radicale is a small but powerful CalDAV (calendars, todo-lists) and CardDAV +(contacts) server, that: + + Shares calendars through CalDAV, WebDAV and HTTP. + Shares contacts through CardDAV, WebDAV and HTTP. + Supports events, todos, journal entries and business cards. + Works out-of-the-box, no installation nor configuration required. + Can warn users on concurrent editing. + Can limit access by authentication. + Can secure connections. + Works with many CalDAV and CardDAV clients. + Is GPLv3-licensed free software. + +WWW: http://radicale.org/ +WWW: https://github.com/Kozea/Radicale diff --git a/www/radicale2/pkg-message b/www/radicale2/pkg-message new file mode 100644 index 000000000000..17e1096e8497 --- /dev/null +++ b/www/radicale2/pkg-message @@ -0,0 +1,4 @@ +Migration from radicale 1.x to 2.x requires that you export the storage +with radicale 1.1.x before it can be used. + +Migration instructions: https://radicale.org/1to2/ diff --git a/www/radicale2/pkg-plist b/www/radicale2/pkg-plist new file mode 100644 index 000000000000..eb43ea812b91 --- /dev/null +++ b/www/radicale2/pkg-plist @@ -0,0 +1,5 @@ +@sample %%ETCDIR%%/config.sample +@sample %%ETCDIR%%/logging.sample +@dir(radicale,radicale,0755) %%DATADIR%% +%%WWWDIR%%/radicale.fcgi +%%WWWDIR%%/radicale.wsgi