version 0.3.5
[fms.git] / readme.txt
index 133a0aa..3df7b4b 100644 (file)
@@ -1,34 +1,54 @@
 COMPILING\r
 ---------\r
 COMPILING\r
 ---------\r
-Compiling FMS requires CMake, pthreads and iconv if you want to do charset\r
-conversion.  Other required libraries are bundled with FMS.\r
+Compiling FMS requires CMake, Poco ( version >=1.2.9 ) and iconv if you want to\r
+do charset conversion.  Other required libraries are bundled with FMS.\r
 \r
 To compile, run these commands from the source directory:\r
 \r
 To compile, run these commands from the source directory:\r
-cmake .\r
+cmake -D I_HAVE_READ_THE_README=ON .\r
 make\r
 \r
 If you want to use the bundled SQLite3 library, add a -D USE_BUNDLED_SQLITE=ON\r
 make\r
 \r
 If you want to use the bundled SQLite3 library, add a -D USE_BUNDLED_SQLITE=ON\r
-to the cmake command.  To do charset conversion to UTF-8 when sending messages,\r
-add a -D DO_CHARSET_CONVERSION=ON.\r
+to the cmake command.  Use of the bundled SQLite3 library is on by default when\r
+compiling on a Mac.  To turn off charset conversion to UTF-8 when sending\r
+messages, add a -D DO_CHARSET_CONVERSION=OFF.  Compiling with charset\r
+conversion turned on is recommended.\r
 \r
 UPGRADING\r
 ---------\r
 \r
 UPGRADING\r
 ---------\r
-It is always a good idea to make copies of your current FMS installation before\r
-continuing.  First shut down FMS and then replace the binary and templates with\r
-those from the new version.  You may keep the same database unless otherwise\r
-noted.\r
+It is always a good idea to make a copy of your current FMS installation before\r
+continuing.  First shut down FMS, make a copy of the directory, and then\r
+replace all files except the database with those from the new version.  You may\r
+keep the same database unless otherwise noted.\r
 \r
 INSTALLATION\r
 ------------\r
 \r
 INSTALLATION\r
 ------------\r
-Place the binary and any templates in a directory of your choice.  On the first\r
-run, a database file will also be created in this directory.  Make sure the\r
-user that runs FMS has read/write access to this directory.\r
+Place the binary and any templates in a directory of your choice.  Windows\r
+users may need to download the runtime DLLs available from the fms Freesite and\r
+place in the fms directory if they are not already installed on the system.  On\r
+the first run, a database file will also be created in this directory.  Make\r
+sure the user that runs FMS has read/write access to this directory.\r
 \r
 RUNNING\r
 -------\r
 \r
 RUNNING\r
 -------\r
-You may run FMS in console mode by running the binary directly.  If you are\r
-running *nix and would like to run as a daemon, use the -d argument.  On\r
-Windows, -i will install FMS as a service, and -u will uninstall the service.\r
+You may run FMS in console mode by running the binary directly.  You can view\r
+available command line options by typing /help on Windows and --help on other\r
+platforms.  If you are running *nix and would like to run as a daemon, use the \r
+--daemon argument.  On Windows, /registerService will install FMS as a service,\r
+and /unregisterService will uninstall the service.  Use the /displayName=name\r
+argument when installing the service to set the service name to whatever you\r
+want.  You will need to manually start the service unless you change the\r
+startup type in the service properties.\r
+\r
+If you are experiencing a problem with FMS that you can't solve, and you've\r
+already rebooted your machine, restarted FMS, and have reproduced the problem\r
+with a brand new database, follow these instructions.  Set the logging option\r
+to trace and restart FMS.  Create a post on the fms group that contains the\r
+operating system you are using, along with a description of the problem, what\r
+you have tried already, if you are using a precompiled binary, the startup\r
+lines from the log file as well as the portion that corresponds to the problem\r
+you are experiencing, and any other information you have that pertains to the\r
+problem.  Make sure to anonymize any IP addresses, host names, subnet masks,\r
+and keys from the log that you don't want people to know about.\r
 \r
 EXITING\r
 -------\r
 \r
 EXITING\r
 -------\r
@@ -75,9 +95,10 @@ called site-template.htm is used to insert the site.  You can customize the
 template by placing an HTML file called identityname-template.htm in the same\r
 directory as the fms binary.  In the template, the string [LINKS] will be\r
 replaced by a <ul> list of links and [CONTENT] will be replaced by the page\r
 template by placing an HTML file called identityname-template.htm in the same\r
 directory as the fms binary.  In the template, the string [LINKS] will be\r
 replaced by a <ul> list of links and [CONTENT] will be replaced by the page\r
-content.  The Freesite will be inserted once a day and contain your last 10\r
-posts and your trust list if you are publishing it.  The site will be inserted\r
-to a USK accessible via: USK@yourpublickey.../fms/0/\r
+content.  [IDENTITYNAME] will be replaced by the name of the identity inserting\r
+the Freesite.  The Freesite will be inserted once a day and contain your last\r
+10 posts and your trust list if you are publishing it.  The site will be\r
+inserted to a USK accessible via: USK@yourpublickey.../fms/0/\r
 \r
 You may add extra files to your Freesite by creating a file called identityname-\r
 files.txt that contains a list of files to add to the Freesite.  There should\r
 \r
 You may add extra files to your Freesite by creating a file called identityname-\r
 files.txt that contains a list of files to add to the Freesite.  There should\r
@@ -107,3 +128,38 @@ above your configured minimum.  You will also download messages from identities
 with NULL local message trust (the peer message trust must be NULL or >= your\r
 configured minimum as well), but you will not download trust lists from\r
 identities with NULL local trust list trust.\r
 with NULL local message trust (the peer message trust must be NULL or >= your\r
 configured minimum as well), but you will not download trust lists from\r
 identities with NULL local trust list trust.\r
+\r
+NNTP EXTENSIONS\r
+---------------\r
+The following commands are available through the NNTP connection.  The client\r
+must have authenticated for the commands to work.  Comments MUST be surrounded\r
+by ".\r
+\r
+XSETTRUST MESSAGE userid@keypart val\r
+XSETTRUST TRUSTLIST userid@keypart val\r
+XSETTRUST MESSAGECOMMENT userid@keypart "comment"\r
+XSETTRUST TRUSTLISTCOMMENT userid@keypart "comment"\r
+\r
+Responses:\r
+2xx Trust Set\r
+4xx Unknown ID or other error\r
+5xx Syntax error\r
+\r
+XGETTRUST MESSAGE userid@keypart\r
+XGETTRUST TRUSTLIST userid@keypart\r
+XGETTRUST PEERMESSAGE userid@keypart\r
+XGETTRUST PEERTRUSTLIST userid@keypart\r
+\r
+Responses:\r
+2xx val\r
+4xx Unknown ID or other error\r
+5xx Syntax error\r
+\r
+XGETTRUSTLIST\r
+trust values will be 0 to 100 or can be the string "null" without quotes.\r
+\r
+Responses:\r
+2xx Trust List Follows\r
+userid@keypart TAB messagetrust TAB trustlisttrust TAB peermessagetrust TAB peertrustlisttrust TAB messagecomment TAB trustlistcomment\r
+.\r
+4xx other error\r