updates
[lhc/web/wiklou.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index f4d5e2d..d47509f 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,3 +1,7 @@
+----
+Installing Wikipedia Phase III Software
+----
+
 The Wikipedia software was developed collabortively by
 many people, so it's something of a hodgepodge. The
 main wiki software itself is written in PHP, and requires
@@ -6,9 +10,9 @@ math rendering functions are written in Objective CAML,
 which is required to compile them. The test suite is
 written in Java, using several external libraries.
 
-Recommended versions are: Apache 1.3.26 or later; MySQL
-2.23.51 or later; PHP 4.2.2 or later. The installation at
-wikipedia.org also uses the APC caching software, but
+Recommended versions are: Apache 1.3.27 or later; MySQL
+4.0.13 or later; PHP 4.3.2 or later. The installation at
+wikipedia.org also uses PHP Accelerator software, but
 that's entirely optional and doesn't affect anything else.
 
 The math rendering functions are more complex, and will
@@ -18,24 +22,51 @@ static binaries. TeTeX and ImageMagick are required at
 runtime, and ImageMagick requires GhostScript. These are
 present in most Linux distributions.
 
+----
+Scripts install.php and update.php
+----
+
 Before installing the software, you must copy the file
 "LocalSettings.sample" to "LocalSettings.php", and
 "AdminSettings.sample" to "AdminSettings.php", and
 customize both of the php files to your local setup
 (things like installation parh, passwords, etc.) The
-script install.php in the maintenance directory can then
-be run to install the software.
+script install.php can then be run to install the
+software. It must be run from the command line with
+PHP: that is, type "php install.php" (you may need to
+specify the path the php executable). You will probably
+need to run as root.
+
+This script will copy all the necessary software over to
+the directories you have specified in the settings files.
+It will then warn you that it is about to create the
+database and give you the chance to exit. If you are
+installing the software to an existing database, you can
+answer "no" here and it will be left alone. The software
+installation will be otherwise complete. If you do choose
+to create a new database, you will need te root password
+to your MySQL installation.
+
+If you are merely updating an existing installation, run
+"php update.php" instead of install.  This will copy all
+the software, and also run any dtabase updates that may
+be necessary. These should give appropriate warnings if
+there are any dangerous ones.
+
+----
+Building from scratch
+----
 
 Here are some more notes on building a system from scratch
 the way it was done for the Wikipedia server:
 
 Downloads:
 
-  gcc-2.95.3.tar.gz
-  mysql-3.23.51.tar.gz
+  gcc-2.95.3.tar.gz (only if you now have gcc 2.96)
+  mysql-4.0.13.tar.gz (or 3.23.57 should work)
   libiconv-1.8.tar.gz
-  apache_1.3.26.tar.gz
-  php-4.2.1.tar.gz
+  apache_1.3.27.tar.gz
+  php-4.3.2.tar.gz
   apc-cvs.tar.gz
 
 And for math support:
@@ -43,15 +74,16 @@ And for math support:
   (TeTeX, ImageMagick, and GhostScript come with most Linux distros)
 
 1. MySQL strongly recommends using gcc 2.95 to compile MySQL.
-  RedHat Linux comes with 2.96 by default, so you'll have to install
+  RedHat Linux 7.x comes with 2.96 by default, so you'll have to install
   2.95 first.  Use "../gcc*/configure --enable-shared"  If your Linux
-  installation doesn't use gcc 2.96 you can skip this step.
+  installation doesn't use gcc 2.96, or has a more recent gcc 3.x,
+  you can skip this step.
 
 2. Install MySQL source; add "mysql" user and group. Make sure the
   directory into which you installed gcc 2.95 appears before the
   directory of gcc 2.96 in your path.  Configure with:
 
-  FLAGS="-O3 -mpentiumpro" CXX=gcc CXXFLAGS="-O3 -mpentiumpro -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static --disable-shared --with-extra-charset=complex
+  FLAGS="-O3 -mcpu=i686" CXX=gcc CXXFLAGS="-O3 -mcpu=i686 -felide-constructors -fno-exceptions -fno-rtti" ./configure --prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static --disable-shared --with-extra-charset=complex
 
   Edit the file myisam/ftdefs.h, changing the define for minimum word
   length for fulltext indexing: #define MIN_WORD_LEN 2.  Update
@@ -66,15 +98,21 @@ And for math support:
   FulltextStoplist.php from the MySQL sources if you have customized
   MySQL's stop list.
 
+  If you are running anything other than Wikipedia itself you'll want
+  to make a lot of changes to the LanguageXX.php files so it talks about
+  _your_ site and _your_ license. :)
+
 4. Optionally, install libiconv (http://www.gnu.org/software/libiconv/).
   This will be used by some language packages for converting
   native-charset URLs to and from UTF-8. If you're running an
-  English-only wiki, this won't be necessary.
+  English-only wiki, this probably won't be necessary. (Most Linux
+  distributions should come with libiconv anyway, but check for
+  a separate 'dev' package if on RedHat.)
 
 5. Unpack Apache distribution and begin configuring, but don't finish
   build yet. Configure with something like:
 
-   OPTIM='-O2 -mpentiumpro' ./configure --with-layout=Apache
+   OPTIM='-O2 -mcpu=i686' ./configure --with-layout=Apache
 
 6. If you'll want to use Apache's mod_rewrite to make page-viewing URLs
   look like static links (as wikipedia.org does), install the included
@@ -85,14 +123,18 @@ And for math support:
 
 7. Unpack and configure PHP. Configure with something like:
 
-  ./configure --enable-apc --with-mysql=/usr/local/mysql --with-iconv=/usr/local/lib --with-apache=/home/lee/src/apache_1.3.26
+  ./configure --enable-apc --enable-shmop --with-zlib --with-zlib-dir=/usr/lib --with-mysql=/usr/local/mysql --with-iconv=/usr/local/lib --with-apache=/home/lee/src/apache_1.3.26
+
+Or for Apache 2.0 module:
+  ./configure --enable-shmop --with-zlib --with-zlib-dir=/usr/lib --with-mysql=/usr/local/mysql --with-iconv --with-apxs2filter=/usr/local/apache/bin/apxs
 
   (using your own local paths, of course). Build and install as
-  instructed. Set "register_globals" on in the config file.
+  instructed. Set "register_globals" on in the config file, and
+  "warnings" to 
 
 8. Finish building Apache. Configure with something like:
 
-  OPTIM='-O2 -mpentiumpro' ./configure --with-layout=Apache --enable-module=rewrite --activate-module=src/modules/php4/libphp4.a
+  OPTIM='-O2 -mcpu=i686' ./configure --with-layout=Apache --enable-module=rewrite --enable-module=mmap-static --enable-module=headers --enable-module=expires --activate-module=src/modules/php4/libphp4.a
 
   Update httpd.conf as needed for your site.  For example:
 
@@ -117,8 +159,8 @@ And for math support:
   (the "php_admin_flag engine off/on" directives above) to prevent
   the uploading and running of malicious scripts.
 
-9. Optionally, install APC, following standard instructions for
-  installing as a Zend extension.
+9. Optionally, install APC or another PHP cache plug-in, following
+  standard instructions for installing as a Zend extension.
 
 10. If using embedded TeX support, be sure TeX and ImageMagick are
   installed (they are common on most Linux distros and freely
@@ -128,9 +170,9 @@ And for math support:
   You'll need to compile the texvc helper script; enter the math
   subdirectory of the source tree and run "make".
 
-  If you don't want embedded TeX support, disable it by setting
+  If you want embedded TeX support, enable it by setting
 
-   $wgUseTex = false;
+   $wgUseTex = true;
 
   in LocalSettings.php
 
@@ -155,5 +197,5 @@ provide enough information to work with, and preferably be aware
 of what you're doing!) and keep track of major changes to the
 software, including performance improvements and security patches.
 
-http://www.wikipedia.org/mailman/listinfo/wikitech-l
+http://mail.wikipedia.org/mailman/listinfo/wikitech-l