Documentation
Documentation is still rather weak, but it is getting better. Besides
-the README and INSTALL* files, there are now manpages for the daemon
-and its config file. For any information still not found, please do
-not hesitate to contact the author. Any further documentation aside
+the README and INSTALL* files, there are now manpages for a number of
+the constituent programs. For any information still not found, please
+do not hesitate to contact the author. Any further documentation aside
from this README file is located in the `doc' directory.
Credits
-This document was last updated 2007-10-15, reflecting release 1.0 of
+This document was last updated 2008-02-14, reflecting release 1.1 of
Dolda Connect.
use of command-line parameters:
* --with-guile enables the Guile extension library, necessary for any
- clients written in Scheme (such as the automatic downloader).
+ clients written in Scheme (such as the automatic downloader and the
+ hub manager).
* --enable-gnomeapplet selects the GNOME panel applet for
compilation.
* --enable-gaimplugin selects the Gaim chat plugin for compilation.
PAM authentication is always enabled as long as Dolda Connect was
compiled with PAM support. To enable password-less authentication,
set the "auth.authless" setting in the configuration file to "1". If
-your network is not completely trusted (especially the host running
+your network is not completely trusted (especially if the host running
doldacond is globally accessible via the Internet), you really should
make sure to set up some firewalling rules.
-This document was last updated 2007-10-15, reflecting release 1.0 of
+This document was last updated 2008-02-14, reflecting release 1.1 of
Dolda Connect.
--- /dev/null
+ Build dependencies on Debian
+
+Note: The following lists probably apply to Ubuntu as well.
+
+For (re-)building the configure scripts and related items (not
+necessary if you build from a tarball):
+ * gettext
+ * cvs
+ * build-essential
+ * autoconf
+ * automake
+ * libtool
+ * guile-1.8-dev (Yes, this really is necessary, in order to get the
+ GUILE_FLAGS autoconf macro into aclocal.m4)
+
+Basic dependencies for most components:
+ * zlib1g-dev
+ * libbz2-dev
+
+For building the daemon:
+ * libgdbm-dev
+ * libpam0g-dev (Only if PAM authentication is used)
+
+For building dolcon:
+ * libgtk2.0-dev
+ * libxml2-dev
+
+For all Scheme programs:
+ * guile-1.8-dev
+
+For the GNOME panel applet:
+ * libpanel-applet2-dev
+
+For the Pidgin plugin:
+ * libpurple-dev
+
+
+
+This document was last updated 2008-02-14, reflecting release 1.1 of
+Dolda Connect.
--- /dev/null
+ Server address resolution
+
+The libdcui library implements a rather flexible scheme for resolving
+the adress of the server to connect to. In order for you to be able to
+create the setup you would like best, this file documents the
+scheme. It is worth noting that it is implemented in the library
+itself, and so is automatically shared by any program using it,
+including (but not limited to) dolcon, autodl, hubmgr, the panel
+applet, Pidgin plugin and others.
+
+The server address is specified as a single string. If no server has
+been explicity specified, the library first checks the environment
+variable DCSERVER, and uses its value if set. If it is unset as well,
+the library attempts the following connections, in order:
+
+ * The Unix socket /tmp/doldacond-$USERNAME
+ * The Unix socket /var/run/doldacond.sock
+ * TCP port 1500 on localhost
+ * If compiled with DNS support and getdomainname(2) does not return
+ `(none)' or nothing, the address indicated by the _dolcon._tcp SRV
+ record on that domain, if one exists.
+
+If a server is specified, either explicity or through the DCSERVER
+environment variable, it is resolved as follows:
+
+ * If the address contains a slash character, it is assumed to be the
+ name of a Unix socket.
+ * If the address does not contain a colon, and the library has been
+ compiled with DNS support, and the address specifies a domain name
+ with a _dolcon._tcp SRV record, the address of that SRV record is
+ used.
+ * If the address matches the regexp `^\[(.*)\]:([0-9]+)$', the string
+ in the first subgroup is resolved by the system's getaddrinfo(3),
+ and the port set to the second subgroup, and the result is
+ connected to. This is mostly intended for connecting to literal
+ IPv6 addresses.
+ * If none of the above rules have been matched, the address
+ specification is resolved using the system's getaddrinfo(3)
+ implementation, and connected to. A port number can be specified by
+ appending a colon and the port number to the address specification,
+ such as in `localhost:1500'.
+ * If none of the above rules are successful, the connection fails.
+
+
+
+This document was last updated 2008-02-14, reflecting release 1.1 of
+Dolda Connect.