diff options
author | 2008-06-23 11:57:07 +0000 | |
---|---|---|
committer | 2008-06-23 11:57:07 +0000 | |
commit | 869eeb3f72862dd4cd2b0d9f23e585a441c3ce38 (patch) | |
tree | 8b487689a0924965bc1b1940717fc0c30d8fc2e2 /www-apps/davical/files | |
parent | media-tv/em28xx-new: Revert revision #6351, cd ${S} is really needed (diff) | |
download | sunrise-869eeb3f72862dd4cd2b0d9f23e585a441c3ce38.tar.gz sunrise-869eeb3f72862dd4cd2b0d9f23e585a441c3ce38.tar.bz2 sunrise-869eeb3f72862dd4cd2b0d9f23e585a441c3ce38.zip |
www-apps/davical: New ebuild for bug 195118 - (initial work by Cory Coager <ccoager@gmail.com>)
svn path=/sunrise/; revision=6356
Diffstat (limited to 'www-apps/davical/files')
-rw-r--r-- | www-apps/davical/files/driver_ldap.patch | 12 | ||||
-rw-r--r-- | www-apps/davical/files/postinstall-en-0.9.5.txt | 27 | ||||
-rw-r--r-- | www-apps/davical/files/rscds.conf | 279 |
3 files changed, 318 insertions, 0 deletions
diff --git a/www-apps/davical/files/driver_ldap.patch b/www-apps/davical/files/driver_ldap.patch new file mode 100644 index 000000000..d2683ac3d --- /dev/null +++ b/www-apps/davical/files/driver_ldap.patch @@ -0,0 +1,12 @@ +diff -urN rscds-0.9.5.orig/inc/drivers_ldap.php rscds-0.9.5/inc/drivers_ldap.php +--- rscds-0.9.5.orig/inc/drivers_ldap.php 2008-06-20 09:55:09.000000000 +0200 ++++ rscds-0.9.5/inc/drivers_ldap.php 2008-06-20 09:56:42.000000000 +0200 +@@ -105,7 +105,7 @@ + if (!ldap_bind($this->connect,$config['bindDN'],$config['passDN'])){ + $bindDN = isset($config['bindDN']) ? $config['bindDN'] : 'anonymous'; + $passDN = isset($config['passDN']) ? $config['passDN'] : 'anonymous'; +- dbg_error_log( "LDAP", i18n('drivers_ldap : Failed to bind to host %1$s on port %2$s with bindDN of %3$s'), $host, $port $bindDN ); ++ dbg_error_log( "LDAP", i18n('drivers_ldap : Failed to bind to host %1$s on port %2$s with bindDN of %3$s'), $host, $port, $bindDN ); + $c->messages[] = i18n( 'drivers_ldap : Unable to bind to LDAP - check your configuration for bindDN and passDN, and that your LDAP server is reachable'); + $this->valid=false; + return ; diff --git a/www-apps/davical/files/postinstall-en-0.9.5.txt b/www-apps/davical/files/postinstall-en-0.9.5.txt new file mode 100644 index 000000000..0565bf1c2 --- /dev/null +++ b/www-apps/davical/files/postinstall-en-0.9.5.txt @@ -0,0 +1,27 @@ +1. You must setup a configuration file in the follow location: + /etc/davical/<servername>-conf.php + +2. Apache must be configured, here is a template: + <VirtualHost *:80> + DocumentRoot /var/www/<vhost>/htdocs/rscds/htdocs + DirectoryIndex index.php index.html + ServerName calendar.example.com + ServerAlias calendar.example.com + Alias /images/ /var/www/<vhost>/htdocs/images/ + php_value include_path /usr/share/awl/inc + php_value magic_quotes_gpc 0 + php_value register_globals 0 + <Directory "/var/www/<vhost>/htdocs/rscds/htdocs"> + Order deny,allow + Allow from all + </Directory> + </VirtualHost> + +3. You must setup a database in PostGreSQL. Follow these instructions: + su postgres -c createuser --no-createdb general + su postgres -c \ + /usr/share/webapps/rscds/<version>/sqlscripts/create-database.sh + + +The full installation documentation can be found here: + http://rscds.sourceforge.net/installation.php diff --git a/www-apps/davical/files/rscds.conf b/www-apps/davical/files/rscds.conf new file mode 100644 index 000000000..0288764bb --- /dev/null +++ b/www-apps/davical/files/rscds.conf @@ -0,0 +1,279 @@ +<?php +/*************************************************************************** +* * +* These apply everywhere and will need setting * +* * +***************************************************************************/ + +/**************************** +********* Mandatory ********* +*****************************/ + +/** +* Ex : $c->pg_connect[] = 'dbname=davical port=5432 user=general' +* The application will attempt to +* connect to the database, successively applying connection parameters from +* the array in $c->pg_connect. +* used in the web interface but also the caldav Server +*/ +$c->pg_connect[] = "dbname=davical user=general"; +// $c->pg_connect[] = "dbname=davical user=general port=5433 host=somehost password=mypass"; + + +/**************************** +********* Desirable ********* +*****************************/ + +/** +* default : Really Simple CalDAV Store +* Is used to specify the authentication realm of the server, as well as +* being used as a name to display in various places. +*/ +$c->system_name = "Really Simple CalDAV Store"; + +/** +* default is false +* If true, then events requested from someone other than the admmin or owner +* of a calendar will not get any alarm for it. Some client software also +* allows you to configure calendar by calendar which ones allow alarms. +*/ +$c->hide_alarm = true; + +/** +*default is false +*If true, then TODO requested from someone other than the admmin or owner +* of a calendar will not get any answer +*/ +$c->hide_TODO = true; + +/*************************************************************************** +* * +* ADMIN web Interface * +* * +***************************************************************************/ +/** +* Displayed on the login page to indicate who you should ask if you have +* problems logging on. Also for the "From" of the email sent when a user +* has lost his password and click on the login page +* on "Help! I've forgotten my password" +*/ +$c->admin_email ='calendar-admin@example.com'; + +/** +* default=true +* if true the admin web interface will +* have link on name to access details +* <p>The "enable_row_linking" option controls whether javascript is used +* to make the entire row clickable in browse lists in the administration +* pages. Since this doesn't work in Konqueror you may want to set this +* to false if you expect people to be using Konqueror with the DAViCal +* administration pages.</p> +*/ +// $c->enable_row_linking = true; + +/** +* These should be an array of style sheets with a path specified relative +* to the root directory. Used for overriding display styles in the admin +* interface. +* e.g. : $c->local_styles = array('/css/my.css'); +**/ +// $c->local_styles = array(); +// $c->print_styles = array(); + + +/*************************************************************************** +* * +* Caldav Server * +* * +***************************************************************************/ + +/** +* The "collections_always_exist" value defines whether a MKCALENDAR +* command is needed to create a calendar collection before calendar +* resources can be stored in it. You will want to leave this to the +* default (true) if people will be using Evolution or Sunbird / +* Lightning against this because that software does not support the +* creation of calendar collections. +* Default: true +*/ +// $c->collections_always_exist = true; + +/** +* The name of a user's "home" calendar. This will be created for each +* new user. +* Default: 'home' +*/ +// $c->home_calendar_name = 'home'; + +/** +* An array of groups / permissions which should be automatically added +* for each new user created. This is a crude mechanism which we +* will hopefully manage to work out some better approach for in the +* future. For now, create an array that looks something like: +* array( 9 => 'R', 4 => 'A' ) +* to create a 'read' relationship to user_no 9 and an 'all' relation +* with user_no 4. +* Default: none +*/ +// $c->default_relationships = array(); + + +/*************************************************************************** +* * +* External Authentication Sources * +* * +***************************************************************************/ + +/** +* Allow specifying another way to control access of the user by authenticating +* him against other drivers such has LDAP (the default is the PgSQL DB) +* $c->authenticate_hook['call'] should be set to the name of the plugin and must +* be a valid function that will be call like this: +* call_user_func( $c->authenticate_hook['call'], $username, $password ) +* +* The login mecanism is made in 2 places: +* - for the web interface in: index.php that calls RSCDSSession.php that extends +* Session.php (from AWL libraries) +* - for the caldav client in: caldav.php that calls BasicAuthSession.php +* Both Session.php and BasicAuthSession.php check against the +* authenticate_hook['call'], although for BasicAuthSession.php this will be for +* each page. For Session.php this will only occur during login. +* +* $c->authenticate_hook['config'] should be set up with any configuration data +* needed by the authenticate call for the moment used only in awl/inc/AuthPlugins.php +* and he used to authenticate the user should be at least 'password,user_no' +* awl/inc/AuthPlugins.php is a sample file not used by showing what could be +* a hook +*/ + +/********************************/ +/******* Other AWL hook *********/ +/********************************/ +// require_once('auth-functions.php'); +// $c->authenticate_hook = array( +// 'call' => 'AuthExternalAwl', +// 'config' => array( +// // A PgSQL database connection string for the database containing user records +// 'connection' => 'dbname=wrms host=otherhost port=5433 user=general', +// // Which columns should be fetched from the database +// 'columns' => "user_no, active, email_ok, joined, last_update AS updated, last_used, username, password, fullname, email", +// // a WHERE clause to limit the records returned. +// 'where' => "active AND org_code=7" +// ) +// ); + + +/********************************/ +/*********** LDAP hook **********/ +/********************************/ +/* + * For Active Directory go down to the next example. + */ + +//$c->authenticate_hook['call'] = 'LDAP_check'; +//$c->authenticate_hook['config'] = array( +// 'host' => 'www.tennaxia.net', //host name of your LDAP Server +// 'port' => '389', //port + + /* For the initial bind to be anonymous leave bindDN and passDN + commented out */ +// DN to bind to this server enabling to perform request +// 'bindDN'=> 'cn=manager,cn=internal,dc=tennaxia,dc=net', +// Password of the previous bindDN to bind to this server enabling to perform request +// 'passDN'=> 'xxxxxxxx', + +// 'protocolVersion' => '3', //Version of LDAP protocol to use +// 'baseDNUsers'=> 'dc=tennaxia,dc=net', //where to look at valid user +// 'filterUsers' => 'objectClass=kolabInetOrgPerson', //filter which must validate a user according to RFC4515, i.e. surrounded by brackets +// 'baseDNGroups' => 'ou=divisions,dc=tennaxia,dc=net', //not used ATM +// 'filterGroups' => 'objectClass=groupOfUniqueNames', //not used ATM + /** /!\ "username" should be set and "updated" must be set **/ +// 'mapping_field' => array("username" => "uid", +// "updated" => "modifyTimestamp", +// "fullname" => "cn" , +// "email" =>"mail" +// ), //used to create the user based on his ldap properties + /** used to set default value for all users, will be overcharged by ldap if defined also in mapping_field **/ +// 'default_value' => array("date_format_type" => "E","locale" => "fr_FR"), + /** foreach key set start and length in the string provided by ldap + example for openLDAP timestamp : 20070503162215Z **/ +// 'format_updated'=> array('Y' => array(0,4),'m' => array(4,2),'d'=> array(6,2),'H' => array(8,2),'M'=>array(10,2),'S' => array(12,2)), +// 'startTLS' => 'yes', // Require that TLS is used for LDAP? + // If ldap_start_tls is not working, it is probably + // because php wants to validate the server's + // certificate. Try adding "TLS_REQCERT never" to the + // ldap configuration file that php uses (e.g. /etc/ldap.conf + // or /etc/ldap/ldap.conf). Of course, this lessens security! +// 'scope' => 'subtree', // Search scope to use, defaults to subtree. +// // Allowed values: base, onelevel, subtree. +// +// ); +// +//include('drivers_ldap.php'); + +/* + * Use the following LDAP example if you are using Active Directory + * + * You will need to change host, passDN and DOMAIN in bindDN + * and baseDNUsers. + */ +//$c->authenticate_hook['call'] = 'LDAP_check'; +//$c->authenticate_hook['config'] = array( +// 'host' => 'ldap://ldap.example.net', +// 'bindDN' => 'auth@DOMAIN', +// 'passDN' => 'secret', +// 'baseDNUsers' => 'dc=DOMAIN,dc=local', +// 'protocolVersion' => 3, +// 'optReferrals' => 0, +// 'filterUsers' => '(&(objectcategory=person)(objectclass=user)(givenname=*))', +// 'mapping_field' => array("username" => "uid", +// "fullname" => "cn" , +// "email" => "mail"), +// 'default_value' => array("date_format_type" => "E","locale" => "en_NZ"), +// 'format_updated' => array('Y' => array(0,4),'m' => array(4,2),'d'=> array(6,2),'H' => array(8,2),'M'=>array(10,2),'S' => array(12,2)) +// ); +//include('drivers_ldap.php'); + + +/** +* Authentication against PAM using the Squid helper script. +*/ +//$c->authenticate_hook = array( +// 'call' => 'SQUID_PAM_check', +// 'config' => array( 'script' => '/usr/bin/pam_auth', 'email_base' => 'example.com' ); +// ); +//include('drivers_squid_pam.php'); + + +/** +* The default locale will be "en_NZ"; +* If you are in a non-English locale, you can set the default_locale +* configuration to one of the supported locales. +* +* Supported Locales (at present, see: "select * from supported_locales ;" for a full list) +* +* "de_DE", "en_NZ", "es_AR", "fr_FR", "nl_NL", "ru_RU" +* +* If you want locale support you probably know more about configuring it than me, but +* at this stage it should be noted that all translations are UTF-8, and pages are +* served as UTF-8, so you will need to ensure that the UTF-8 versions of these locales +* are supported on your system. +* +* People interested in providing new translations are directed to the Wiki: +* http://rscds.sourceforge.net/moin/TranslatingRscds +**/ +// $c->default_locale = "en_NZ"; + +/** +* Default will be $_SERVER['SERVER_NAME']; +* This is used to construct URLs which are passed in the answers to the client. You may +* want to force this to a specific domain in responses if your system is accessed by +* multiple names, otherwise you probably won't need to change it. +*/ +// $c->domain_name; + +/** +* Used as a fallback for the TZID of an event where one is not supplied as part +* of a VEVENT. The local (server) time zone will be used as a default. +*/ +// $c->local_tzid; |