* doc/guide.tex: Improved the documentation of Binary

installer. Updated the requirements, specifically: Erlang R10B-9
is required as minimum, and R12 is not yet supported. Added
section Upgrading ejabberd. Improved documentation about Erlang
runtime system environment variables and command-line parameters.
* doc/guide.html: Likewise

* doc/release_notes_2.0.0.txt: Updated to RC1
* doc/version.tex: Likewise
* src/ejabberd.hrl: Likewise

* doc/introduction.tex: Updated to 22 languages

* doc/Makefile: Ensure that Bash is used

SVN Revision: 1154
This commit is contained in:
Badlop 2008-01-15 17:53:40 +00:00
parent 8e72271730
commit 21f9c7e2d2
8 changed files with 480 additions and 328 deletions

View File

@ -1,5 +1,20 @@
2008-01-15 Badlop <badlop@process-one.net>
* doc/guide.tex: Improved the documentation of Binary
installer. Updated the requirements, specifically: Erlang R10B-9
is required as minimum, and R12 is not yet supported. Added
section Upgrading ejabberd. Improved documentation about Erlang
runtime system environment variables and command-line parameters.
* doc/guide.html: Likewise
* doc/release_notes_2.0.0.txt: Updated to RC1
* doc/version.tex: Likewise
* src/ejabberd.hrl: Likewise
* doc/introduction.tex: Updated to 22 languages
* doc/Makefile: Ensure that Bash is used
* doc/guide.tex: Updated copyright dates to 2008.
* src/*: Likewise

View File

@ -1,5 +1,7 @@
# $Id$
SHELL = /bin/bash
CONTRIBUTED_MODULES = ""
ifeq ($(shell ls mod_http_bind.tex),mod_http_bind.tex)
CONTRIBUTED_MODULES += "\\r\\n\\setboolean{modhttpbind}{true}"

File diff suppressed because it is too large Load Diff

View File

@ -181,12 +181,13 @@ ejabberd Development Team
\input{introduction}
\chapter{Installing \ejabberd{}}
\section{Installing \ejabberd{} with Binary Installer}
Probably the easiest way to install an \ejabberd{} Instant Messaging server
Probably the easiest way to install an \ejabberd{} instant messaging server
is using the binary installer published by Process-one.
The binary installers of released \ejabberd{} versions
are available in the Process-one \ejabberd{} download page:
are available in the Process-one \ejabberd{} downloads page:
\ahrefurl{http://www.process-one.net/en/ejabberd/downloads}
The installer will deploy and configure a full featured \ejabberd{}
@ -198,15 +199,34 @@ In *nix systems, remember to set executable the binary installer before starting
./ejabberd-2.0.0_1-linux-x86-installer.bin
\end{verbatim}
The installer generates desktop shortcuts to start and stop ejabberd.
The Windows installer also adds ejabberd as a system service,
and a shortcut to a debug console for experienced administrators.
You can start ejabberd using the shortcut or the Windows service.
If you want ejabberd to be started automatically at boot time,
go to service settings and set ejabberd to be automatic started.
On a Linux system, if you want ejabberd to start as daemon at boot time,
copy \term{ejabberd.init} from the bin directory to something like \term{/etc/init.d/ejabberd}
(depending on your distribution) and call \term{/etc/inid.d/ejabberd start} to start it.
The \term{ejabberdctl} administration script is included in the \term{bin} directory.
Please refer to the section~\ref{ejabberdctl} for details about \term{ejabberdctl},
and configurable options to fine tune the Erlang runtime system.
\section{Installing \ejabberd{} with Operating System specific packages}
Some Operating Systems provide a specific \ejabberd{} package adapted to
your system architecture and libraries, which also checks dependencies
the system architecture and libraries.
It usually also checks dependencies
and performs basic configuration tasks like creating the initial
administrator account. Some examples are Debian and Gentoo. Consult the
resources provided by your Operating System for more information.
Usually those packages create a script like \term{/etc/init.d/ejabberd}
to start and stop \ejabberd{} as a service at boot time.
\section{Installing \ejabberd{} with CEAN}
\footahref{http://cean.process-one.net/}{CEAN}
@ -215,6 +235,11 @@ packages from many Erlang programs, including \ejabberd{} and all its dependenci
The binaries are available for many different system architectures, so this is an
alternative to the binary installer and Operating System's \ejabberd{} packages.
You will have to create your own \ejabberd{} start
script depending of how you handle your CEAN installation.
The default \term{ejabberdctl} script is located
into \ejabberd{}'s priv directory and can be used as an example.
\section{Installing \ejabberd{} from Source Code}
\label{installation}
\ind{install}
@ -231,18 +256,18 @@ To compile \ejabberd{} on a `Unix-like' operating system, you need:
\begin{itemize}
\item GNU Make
\item GCC
\item libexpat 1.95 or higher
\item Erlang/OTP R9C-2 or higher
\item OpenSSL 0.9.6 or higher (optional)
\item Zlib 1.2.3 or higher (optional)
\item GNU Iconv 1.8 or higher (optional, not needed on systems with GNU libc)
\item Libexpat 1.95 or higher
\item Erlang/OTP R10B-9 up to R11B-5. Erlang R12 releases are not yet officially supported, and are not recommended for production servers.
\item OpenSSL 0.9.6 or higher, for STARTTLS, SASL and SSL encryption. Optional, highly recommended.
\item Zlib 1.2.3 or higher, for Stream Compression support (XEP-0138). Optional.
\item GNU Iconv 1.8 or higher, for the IRC Transport (mod\_irc). Optional. Not needed on systems with GNU Libc.
\end{itemize}
\subsection{Download Source Code}
\label{download}
\ind{install!download}
Released versions of \ejabberd{} are available in the Process-one \ejabberd{} download page:
Released versions of \ejabberd{} are available in the Process-one \ejabberd{} downloads page:
\ahrefurl{http://www.process-one.net/en/ejabberd/downloads}
\ind{Subversion repository}
@ -261,8 +286,6 @@ To compile \ejabberd{} execute the commands:
./configure
make
\end{verbatim}
The compilation process may report several warnings related to unusued variables.
This is common, and is not a problem.
The build configuration script provides several parameters.
To get the full list run the command:
@ -335,9 +358,6 @@ The files and directories created are, by default:
\ind{install!start}
You can use the \term{ejabberdctl} command line administration script to start and stop \ejabberd{}.
This script is located into tools directory of sources archive. If you installed \ejabberd{} from sources,
\term{ejabberdctl} is located into destination sbin directory (default /usr/local/sbin). If you installed
\ejabberd{} with the installer, \term{ejabberdctl} is located into \ejabberd{}'s bin directory.
Usage example:
\begin{verbatim}
@ -352,13 +372,6 @@ $ ejabberdctl stop
Please refer to the section~\ref{ejabberdctl} for details about \term{ejabberdctl},
and configurable options to fine tune the Erlang runtime system.
Note: if you installed \ejabberd{} with your distribution packaging system, \term{ejabberdctl} should be called
by an /etc/init.d/ejabberd script to allow you to start and stop \ejabberd{} as a service at boot time.
If you installed \ejabberd{} using CEAN package, you will have to create your own \ejabberd{} start
script depending of how you handle your CEAN installation. The default \term{ejabberdctl} script is located
into \ejabberd{}'s priv directory and can be used as an example.
\subsection{Specific Notes for BSD}
\label{bsd}
\ind{install!bsd}
@ -463,6 +476,18 @@ to enter the \ejabberd{} Web Admin:
suffix, is because \ejabberd{}'s virtual hosting support.
\end{enumerate}
\section{Upgrading \ejabberd{}}
To upgrade an ejabberd installation to a new version,
simply uninstall the old version, and then install the new one.
Of course, it is important that the configuration file
and Mnesia database spool directory are not removed.
\ejabberd{} automatically updates the Mnesia table definitions at startup when needed.
If you also use an external database for storage of some modules,
check if the release notes of the new ejabberd version
indicates you need to also update those tables.
\chapter{Configuring \ejabberd{}}
\section{Basic Configuration}
@ -3317,10 +3342,41 @@ The \term{ejabberdctl} administration script can be configured in the file ejabb
This file provides detailed information about each configurable option.
\subsection{Erlang configuration}
\subsection{Erlang runtime system}
\label{erlangconfiguration}
The basic parameters used by \term{ejabberdctl} when starting the Erlang node:
\ejabberd{} is an Erlang/OTP application that runs inside an Erlang runtime system.
This system is configured using environment variables and command line parameters.
The \term{ejabberdctl} administration script uses many of those possibilities.
You can configure some of them with the file \term{ejabberdctl.cfg},
which includes detailed description about them.
This section describes for reference purposes
all the environment variables and command line parameters.
The environment variables:
\begin{description}
\titem{EJABBERD\_CONFIG\_PATH}
Path to the ejabberd configuration file.
\titem{EJABBERD\_MSGS\_PATH}
Path to the directory with translated strings.
\titem{EJABBERD\_LOG\_PATH}
Path to the ejabberd log file.
\titem{EJABBERD\_SO\_PATH}
Path to the directory with binary system libraries.
\titem{HOME}
Path to the directory that is considered \ejabberd{}'s home.
This path is used to read the file \term{.erlang.cookie}.
\titem{ERL\_CRASH\_DUMP}
Path to the file where crash reports will be dumped.
\titem{ERL\_INETRC}
Indicates which IP name resolution to use. It is required if using \term{-sname}.
\titem{ERL\_MAX\_PORTS}
Maximum number of simultaneously open Erlang ports.
\titem{ERL\_MAX\_ETS\_TABLES}
Maximum number of ETS and Mnesia tables.
\end{description}
The command line parameters:
\begin{description}
\titem{-sname ejabberd}
The Erlang node will be identified using only the first part
@ -3345,14 +3401,18 @@ The basic parameters used by \term{ejabberdctl} when starting the Erlang node:
Specify the Mnesia database directory.
\titem{-sasl sasl\_error\_logger \{file, "/var/log/ejabberd/sasl.log"\}}
Specify the directory for the sasl.log file.
\titem{+K [true|false]}
Kernel polling.
\titem{-smp [auto|enable|disable]}
SMP support.
\titem{+P 250000}
Maximum number of Erlang processes.
\titem{-remsh ejabberd@localhost}
Open an Erlang shell in a remote Erlang node.
\end{description}
Note that some characters need to be escaped when used in shell scripts, for instance \verb|"| and \verb|{}|.
You can find other options in the Erlang manual page (\shell{erl -man erl}).
In addition, there are several configurable parameters
in the file \term{/etc/ejabberd/ejabberdctl.cfg}
to fine tune the Erlang runtime system.
\section{Web Admin}
\label{webadmin}

View File

@ -68,7 +68,7 @@ Peter Saint-Andr\'e, Executive Director of the Jabber Software Foundation}
\item \marking{Internationalized:} \ejabberd{} leads in internationalization. Hence it is very well suited in a globalized world. Related features are:
\begin{itemize}
\item Translated in 20 languages. %%\improved{}
\item Translated to 22 languages. %%\improved{}
\item Support for \footahref{http://www.ietf.org/rfc/rfc3490.txt}{IDNA}.
\end{itemize}

View File

@ -1,16 +1,16 @@
Release Notes
ejabberd 2.0.0 beta 1
24 december 2007
ejabberd 2.0.0 rc1
16 January 2008
ejabberd 2.0.0 is a major new version for ejabberd adding plenty of
new features, performance and scalability improvements and
architectural changes.
ejabberd 2.0.0 includes near than 200 improvements over ejabberd
ejabberd 2.0.0 includes more than 200 improvements over ejabberd
1.1.x. A complete list of changes can be retrieved from:
http://redir.process-one.net/ejabberd-2.0.0
The new code can be downloaded from ejabberd download page:
The new code can be downloaded from ejabberd downloads page:
http://www.process-one.net/en/ejabberd/
@ -61,7 +61,7 @@
- Support for LDAP servers pool.
- Simplified use of virtual hosting with LDAP with domain substitution
in config.
- Ability to match on several userid attibutes.
- Ability to match on several userid attributes.
* Multi-user chat
@ -69,7 +69,7 @@
- Clustering and load balancing support.
- Ability to define default room configuration in ejabberd config file.
- Many anti abuse features have been added:
. New ACL to limit the creation of persistent room to autorized users.
. New ACL to limit the creation of persistent room to authorized users.
. Ability to define the maximum number of users per room.
. Limitation of the rate of message and presence packets.
. Limitation of the maximum number of room a user can join at the same time.
@ -94,7 +94,7 @@
an efficient alternative to HTTP polling for scalable Web based chat
solutions.
- HTTP module can now serve static documents (with
mod_http_fileserver). It is needed for high-performance Web2.0 chat
mod_http_fileserver). It is needed for high-performance Web 2.0 chat
/ IM application. System administrators can now avoid using a proxy
(like Apache) that handles much less simultaneous than ejabberd HTTP
module.
@ -110,13 +110,14 @@
- Dynamic log levels: Improved logging with more log levels. You can
now change the loglevel at run time. No performance penalty is
involved when less verbose levels are used.
- Better command-line tool, with more options available.
- The ejabberdctl command-line administration script now can start
and stop ejabberd. It also includes other useful options.
* Localization
- ejabberd is now available in 22 languages: Catalan, Chinese, Czech,
Dutch, English, French, Galicia, German, Italian, Japanese, Polish,
Dutch, English, French, Galician, German, Italian, Japanese, Polish,
Portuguese, Portuguese (Brazil), Russian, Slovak, Spanish, Swedish,
Thai, Turkish, Ukrainian, Vietnamese, Wallon.
@ -141,11 +142,26 @@
* Bugfixes
- ejabberd 2.0 also fixes numerous small bugs :) Read the full
- ejabberd 2.0.0 also fixes numerous small bugs :) Read the full
changelog for details.
Bugs report
Important Notes:
- Since this release, ejabberd requires Erlang R10B-5 or higher.
R11B-5 is the recommended version. R12 is not yet officially
supported, and is not recommended for production servers.
- The 'ssl' option is no longer available in the listening ports.
To get legacy SSL encryption use the option 'tls'.
- The new ejabberdctl command line administration script can start,
stop and perform many other administrative tasks in ejabberd.
Bug reports
You can officially report bugs on Process-one support site:
https://support.process-one.net/

View File

@ -1,2 +1,2 @@
% ejabberd version (automatically generated).
\newcommand{\version}{2.0.0-beta1}
\newcommand{\version}{2.0.0-rc1}

View File

@ -22,7 +22,7 @@
%-define(ejabberd_debug, true).
%-define(DBGFSM, true).
-define(VERSION, "2.0.0-beta1").
-define(VERSION, "2.0.0-rc1").
%% ---------------------------------
%% Logging mechanism