diff --git a/1to2.md b/1to2.md new file mode 100644 index 00000000..08ca9a04 --- /dev/null +++ b/1to2.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Migration from 1.x to 2.0 +permalink: /1to2/ +--- diff --git a/_config.yml b/_config.yml index e6db4640..df203caf 100644 --- a/_config.yml +++ b/_config.yml @@ -1,6 +1,6 @@ # Site settings title: Radicale email: contact@kozea.fr -description: A free and open-source CalDAV and CardDAV server +description: A Free and Open-Source CalDAV and CardDAV Server baseurl: "/Radicale" #url: "http://radicale.org" diff --git a/about.md b/about.md index 2e6534f4..ccc4e5d7 100644 --- a/about.md +++ b/about.md @@ -4,3 +4,98 @@ title: About permalink: /about/ --- +## Main Goals + +Radicale is a complete calendar and contact storing and manipulating +solution. It can store multiple calendars and multiple address books. + +Calendar and contact manipulation is available from both local and distant +accesses, possibly limited through authentication policies. + +It aims to be a lightweight solution, easy to use, easy to install, easy to +configure. As a consequence, it requires few software dependencies and is +pre-configured to work out-of-the-box. + +Radicale is written in Python. It runs on most of the UNIX-like platforms +(Linux, *BSD, MacOS X) and Windows. It is free and open-source software. + +## What Radicale Will Never Be + +Radicale is a server, not a client. No interfaces will be created to work with +the server, as it is a really (really really) much more difficult task. + +CalDAV and CardDAV are not perfect protocols. We think that their main problem +is their complexity, that is why we decided not to implement the whole standard +but just enough to understand some of its client-side implementations. + +CalDAV and CardDAV are the best open standards available and they are quite +widely used by both clients and servers. We decided to use it, and we will not +use another one. + +## Technical Choices + +Important global development choices have been decided before writing +code. They are very useful to understand why the Radicale Project is different +from other CalDAV and CardDAV servers, and why features are included or not in +the code. + +### Oriented to Calendar and Contact User Agents + +Calendar and contact servers work with calendar and contact clients, using a +defined protocol. CalDAV and CardDAV are good protocols, covering lots of +features and use cases, but it is quite hard to implement fully. + +Some calendar servers have been created to follow the CalDAV and CardDAV RFCs +as much as possible: [Davical](http://www.davical.org/), +[Baïkal](http://sabre.io/baikal/) and +[Darwin Calendar Server](http://trac.calendarserver.org/), for example, are +much more respectful of CalDAV and CardDAV and can be used with a large number +of clients. They are very good choices if you want to develop and test new +CalDAV clients, or if you have a possibly heterogeneous list of user agents. + +Even if it tries it best to follow the RFCs, Radicale does not and **will not** +blindly implements the CalDAV and CardDAV standards. It is mainly designed to +support the CalDAV and CardDAV implementations of different clients. + +### Simple + +Radicale is designed to be simple to install, simple to configure, simple to +use. + +The installation is very easy, particularly with Linux: one dependency, no +superuser rights needed, no configuration required, no database. Installing and +launching the main script out-of-the-box, as a normal user, are often the only +steps to have a simple remote calendar and contact access. + +Contrary to other servers that are often complicated, require high privileges +or need a strong configuration, the Radicale Server can (sometimes, if not +often) be launched in a couple of minutes, if you follow the +[tutorial]({{ site.baseurl }}/tutorial/). + +### Lazy + +The CalDAV RFC defines what must be done, what can be done and what cannot be +done. Many violations of the protocol are totally defined and behaviours are +given in such cases. + +Radicale often assumes that the clients are perfect and that protocol +violations do not exist. That is why most of the errors in client requests have +undetermined consequences for the lazy server that can reply good answers, bad +answers, or even no answer. + +## History + +Radicale has been started as a (free topic) stupid school project replacing +another (assigned topic) even more stupid school project. + +At the beginning, it was just a proof-of-concept. The main goal was to write a +small, dirty and simple CalDAV server working with Lightning, using no external +libraries. That's how we created a piece of code that's (quite) easy to +understand, to use and to hack. + +The [first lines](https://github.com/Kozea/Radicale/commit/b1591aea) have been +added to the SVN (!) repository as I was drinking (many) beers at the very end +of 2008 (Python 2.6 and 3.0 were just released). It's now packaged for a +growing number of Linux distributions. + +And that was fun going from here to there thanks to you! diff --git a/architecture.md b/architecture.md new file mode 100644 index 00000000..6d750bce --- /dev/null +++ b/architecture.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Architecture +permalink: /architecture/ +--- diff --git a/configuration.md b/configuration.md new file mode 100644 index 00000000..dc024e9a --- /dev/null +++ b/configuration.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Configuration +permalink: /configuration/ +--- diff --git a/contribute.md b/contribute.md index fff225a1..e8165d0c 100644 --- a/contribute.md +++ b/contribute.md @@ -17,4 +17,4 @@ Found a bug? Want a new feature? Report a new issue on the Interested in hacking? Feel free to clone the [git repository on Github](https://github.com/Kozea/Radicale) if you want to -add new features, fix bugs or update documentation. +add new features, fix bugs or update the documentation. diff --git a/debugging.md b/debugging.md new file mode 100644 index 00000000..c67dc333 --- /dev/null +++ b/debugging.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Debugging +permalink: /debugging/ +--- diff --git a/documentation.md b/documentation.md index 596cf342..d3879366 100644 --- a/documentation.md +++ b/documentation.md @@ -5,36 +5,39 @@ permalink: /documentation/ --- This documentation page is written for version 2.0.x. If you want to update -Radicale from 1.x.x to 2.0.x, please follow our migration guide. +Radicale from 1.x.x to 2.0.x, please follow our [migration guide]({{ site.baseurl }}/1to2/). ## Install You're new to Radicale and you want to know how to use it? Welcome aboard! -- [What is Radicale?]() -- [A really simple 5-minute tutorial.]() -- [A simple but solid installation for a personal use.]() -- [A production-ready installation.]() +- [What is Radicale?]({{ site.baseurl }}/about/) +- [A really simple 5-minute tutorial.]({{ site.baseurl }}/tutorial/) +- [A simple but solid installation for a personal use.]({{ site.baseurl }}/installation/) +- [A production-ready installation.]({{ site.baseurl }}/production/) + +## Use + +- [Which clients are supported?]({{ site.baseurl }}/clients/) ## Configure Now that you have Radicale running, let's see what we can configure to make it fit our needs. -- [What can I configure?]() -- [Where are stored my configuration, my calendars and my address books?]() -- [Authentication & Rights.]() -- [Storage.]() -- [Logging.]() +- [What can I configure?]({{ site.baseurl }}/configuration/) +- [Where is stored all this stuff?]({{ site.baseurl }}/files/) +- [Authentication & Rights.]({{ site.baseurl }}/rights/) +- [Storage.]({{ site.baseurl }}/storage/) +- [Logging.]({{ site.baseurl }}/logging/) ## Hack Using is fun, but hacking is soooooooo coooooool. Radicale is a really small and simple piece of code, it may be the perfect project to start hacking! -- [How does Radicale work?]() -- [What do plugins do?]() -- [How do I write my own plugin?]() -- [Radicale debugging.]() -- [Collection versioning.]() -- [Adding or fixing documentation.]() +- [How does Radicale work?]({{ site.baseurl }}/architecture/) +- [Plugins.]({{ site.baseurl }}/plugins/) +- [Debugging.]({{ site.baseurl }}/debugging/) +- [Collection versioning.]({{ site.baseurl }}/versioning/) +- [Adding or fixing documentation.]({{ site.baseurl }}/edit/) diff --git a/download.md b/download.md index bbca90f9..e2ee4745 100644 --- a/download.md +++ b/download.md @@ -37,14 +37,15 @@ Radicale has been packaged for: - [ArchLinux (AUR)](https://aur.archlinux.org/packages/radicale/) by Guillaume Bouchard - [Debian](http://packages.debian.org/radicale) by Jonas Smedegaard -- [Gentoo (Sunrise Overlay)](http://bugs.gentoo.org/show_bug.cgi?id=322811) - by René Neumann +- [Gentoo](https://packages.gentoo.org/packages/www-apps/radicale) + by René Neumann, Maxim Koltsov and Manuel Rüger - [Fedora](https://admin.fedoraproject.org/pkgdb/package/radicale/) by Jorti -- [Mandriva/Mageia](http://sophie.zarb.org/search/results?search=radicale) by Jani - Välimaa +- [Mageia](http://madb.mageia.org/package/show/application/0/name/radicale) by + Jani Välimaa - [OpenBSD](http://openports.se/productivity/radicale) by Sergey Bronnikov, Stuart Henderson and Ian Darwin - [openSUSE](http://software.opensuse.org/package/Radicale?search_term=radicale) + by Ákos Szőts and Rueckert - [PyPM](http://code.activestate.com/pypm/radicale/) - [Slackware](http://schoepfer.info/slackware.xhtml#packages-network) by Johannes Schöpfer diff --git a/edit.md b/edit.md new file mode 100644 index 00000000..828c35f8 --- /dev/null +++ b/edit.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Editing the Documentation +permalink: /editing/ +--- diff --git a/files.md b/files.md new file mode 100644 index 00000000..438dd38f --- /dev/null +++ b/files.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Files and Folders +permalink: /files/ +--- diff --git a/index.html b/index.html index fb9b7be6..54640153 100644 --- a/index.html +++ b/index.html @@ -21,7 +21,7 @@ layout: default
Latest version of {{ site.title }} is {{ releases[0].tag_name }}, diff --git a/install.md b/install.md new file mode 100644 index 00000000..e5c80e8c --- /dev/null +++ b/install.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Simple Installation +permalink: /installation/ +--- diff --git a/logging.md b/logging.md new file mode 100644 index 00000000..15a08f50 --- /dev/null +++ b/logging.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Logging +permalink: /logging/ +--- diff --git a/plugins.md b/plugins.md new file mode 100644 index 00000000..788f9b35 --- /dev/null +++ b/plugins.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Plugins +permalink: /plugins/ +--- diff --git a/production.md b/production.md new file mode 100644 index 00000000..a01ce9f5 --- /dev/null +++ b/production.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Installation for Production +permalink: /production/ +--- diff --git a/rights.md b/rights.md new file mode 100644 index 00000000..bd4b2ce1 --- /dev/null +++ b/rights.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Authentication and Rights +permalink: /rights/ +--- diff --git a/storage.md b/storage.md new file mode 100644 index 00000000..99b57a5b --- /dev/null +++ b/storage.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Storage +permalink: /storage/ +--- diff --git a/tutorial.md b/tutorial.md new file mode 100644 index 00000000..16080164 --- /dev/null +++ b/tutorial.md @@ -0,0 +1,57 @@ +--- +layout: page +title: Tutorial +permalink: /tutorial/ +--- + +You want to try Radicale but only have 5 minutes free in your calendar? Let's +go right now! You won't have the best installation ever, but it will be enough +to play a little bit with Radicale. + +Follow one of the chapters below depending on your operating system. + +When Radicale is launched, you can check that everything is OK by opening +[http://localhost:5232/](http://localhost:5232/) in your favourite browser: +you'll get a "Radicale works!" message. + +When everything works, you can get a [client]({{ site.baseurl }}/clients/) and +start creating calendars and address books. And if Radicale fits your needs, it +may be time to [install it "The Right Way"]({{ site.baseurl }}/install/). + +## Linux / *BSD + +Installing Radicale on Linux or *BSD is often really easy. + +First of all, check that you have Python 3.4 or superior installed, or install +it thanks to your package manager. Then open a console and type: + + $ pip3 install radicale + $ python3 -m radicale --debug + ... + Radicale server ready + +## Windows + +First of all: please install all the Windows updates available for your version +of Windows! (But it's already done, isn't it?) + +The next step on Windows is to intall Python. Go to +[python.org](http://python.org) and download the latest version of Python. Run +the installer. + +On the first window of the installer, check the "Add Python to PATH" box and +click on "Install now". Wait a couple of minutes, it's done! + +Then launch a command prompt, and type: + + C:\Users\MyName> python -m pip install radicale + C:\Users\MyName> python -m radicale --debug + ... + Radicale server ready + +Victory! Open [http://localhost:5232/](http://localhost:5232/) in your browser +and enjoy the "Radicale works!" message! + +## OS X + +*To be written.* diff --git a/use.md b/use.md new file mode 100644 index 00000000..e8140a8e --- /dev/null +++ b/use.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Clients +permalink: /clients/ +--- diff --git a/versioning.md b/versioning.md new file mode 100644 index 00000000..c893763b --- /dev/null +++ b/versioning.md @@ -0,0 +1,5 @@ +--- +layout: page +title: Versioning +permalink: /versioning/ +---