diff options
-rw-r--r-- | doc/taler-exchange.texi | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/doc/taler-exchange.texi b/doc/taler-exchange.texi index 161d1c811..51737bfc1 100644 --- a/doc/taler-exchange.texi +++ b/doc/taler-exchange.texi @@ -644,6 +644,68 @@ key will get a starting time of @cite{t}, and the @cite{j}-th key will get a starting time of @cite{x + duration_withdraw}, where @cite{x} is the starting time of the @cite{(j-1)}-th key. +@chapter Configuration in Taler + +In Taler realm, any component obeys to the same pattern to get configuration +values. According to this pattern, once the component has been installed, the +installation deploys default values in @code{$@{prefix@}/share/taler/config.d/}, in +@emph{.conf} files. In order to override these defaults, the user can write a custom +@emph{.conf} file and either pass it to the component at execution time, or name it +@code{taler.conf} and place it under @code{$HOME/.config/}. + +A config file is a text file containing `sections`, and each section contains +its `values`. The right format follows:: + +@smallexample +[section1] +value1 = string +value2 = 23 + +[section2] +value21 = string +value22 = /path22 +@end smallexample + +Throughout any configuration file, it is possible to use @emph{$}-prefixed variables, +like @code{$VAR}, especially when they represent filesystem paths. +It is also possible to provide defaults values for those variables that are unset, +by using the following syntax: @code{$@{VAR:-default@}}. +However, there are two ways a user can set @emph{$}-prefixable variables: + +by defining them under a @code{[paths]} section, see example below, + +@smallexample +[paths] +TALER_DEPLOYMENT_SHARED = ${HOME}/shared-data +.. +[section-x] +path-x = ${TALER_DEPLOYMENT_SHARED}/x +@end smallexample + +or by setting them in the environment + +@smallexample +$ export VAR=/x +@end smallexample + +The configuration loader will give precedence to variables set under @code{[path]}, +though. + +The utility @code{taler-config}, which gets installed along with the exchange, +serves to get and set configuration values without directly editing the @emph{.conf}. +The option @code{-f} is particularly useful to resolve pathnames, when they use +several levels of @emph{$}-expanded variables. See @code{taler-config --help}. + +Note that, in this stage of development, the file @code{$HOME/.config/taler.conf} +can contain sections for @emph{all} the component. For example, both an exchange and +a bank can read values from it. + +The repository @emph{git://taler.net/deployment} contains examples of configuration +file used in our demos. See under @code{deployment/config}. + +Expectably, some components will not work just by using default values, as their +work is often interdependent. For example, a merchant needs to know an exchange +URL, or a database name. @node Deployment |