Changes between Version 2 and Version 3 of TracInstall


Ignore:
Timestamp:
Aug 30, 2013 11:27:29 AM (11 years ago)
Author:
trac
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracInstall

    v2 v3  
    1 = Trac Installation Guide for 0.12 =  
     1= Trac Installation Guide for 1.0 =  
    22[[TracGuideToc]] 
    33 
    44Trac is written in the Python programming language and needs a database, [http://sqlite.org/ SQLite], [http://www.postgresql.org/ PostgreSQL], or [http://mysql.com/ MySQL]. For HTML rendering, Trac uses the [http://genshi.edgewall.org Genshi] templating system. 
    55 
    6 Since version 0.12, Trac can also be localized, and there's probably a translation available for your language. If you want to be able to use the Trac interface in other languages, then make sure you **first** have installed the optional package [#OtherPythonPackages Babel]. Lacking Babel, you will only get the default English version, as usual. If you install Babel later on, you will need to re-install Trac. 
    7  
    8 If you're interested in contributing new translations for other languages or enhance the existing translations, then please have a look at [trac:wiki:TracL10N TracL10N]. 
    9  
    10 What follows are generic instructions for installing and setting up Trac and its requirements. While you may find instructions for installing Trac on specific systems at [trac:wiki:TracInstallPlatforms TracInstallPlatforms] on the main Trac site, please be sure to '''first read through these general instructions''' to get a good understanding of the tasks involved. 
     6Since version 0.12, Trac can also be localized, and there's probably a translation available for your language. If you want to be able to use the Trac interface in other languages, then make sure you have installed the optional package [#OtherPythonPackages Babel]. Pay attention to the extra steps for localization support in the [#InstallingTrac Installing Trac] section below. Lacking Babel, you will only get the default english version, as usual. 
     7 
     8If you're interested in contributing new translations for other languages or enhance the existing translations, then please have a look at [[trac:TracL10N]]. 
     9 
     10What follows are generic instructions for installing and setting up Trac and its requirements. While you may find instructions for installing Trac on specific systems at [trac:TracInstallPlatforms TracInstallPlatforms] on the main Trac site, please be sure to '''first read through these general instructions''' to get a good understanding of the tasks involved. 
    1111 
    1212[[PageOutline(2-3,Installation Steps,inline)]] 
     
    1616To install Trac, the following software packages must be installed: 
    1717 
    18  * [http://www.python.org/ Python], version >= 2.4 and < 3.0 
    19    //(note that we dropped the support for Python 2.3 in this release and that this will be the last Trac release supporting Python 2.4)// 
    20  * [http://peak.telecommunity.com/DevCenter/setuptools setuptools], version >= 0.6 
    21  * [http://genshi.edgewall.org/wiki/Download Genshi], version >= 0.6 (but < 0.7dev, i.e. don't use Genshi trunk) 
     18 * [http://www.python.org/ Python], version >= 2.5 and < 3.0 
     19   (note that we dropped the support for Python 2.4 in this release) 
     20 * [http://peak.telecommunity.com/DevCenter/setuptools setuptools], version >= 0.6, or better yet, [http://pypi.python.org/pypi/distribute distribute] 
     21 * [http://genshi.edgewall.org/wiki/Download Genshi], version >= 0.6 (unreleased version 0.7dev should work as well) 
    2222 
    2323You also need a database system and the corresponding python bindings. 
     
    2626==== For the SQLite database #ForSQLite 
    2727 
    28 If you're using Python 2.5 or 2.6, you already have everything you need. 
    29  
    30 If you're using Python 2.4 and need pysqlite, you can download from  
    31 [http://code.google.com/p/pysqlite/downloads/list google code] the Windows installers or the tar.gz archive for building from source:  
     28As you must be using Python 2.5, 2.6 or 2.7, you already have the SQLite database bindings bundled with the standard distribution of Python (the `sqlite3` module). 
     29 
     30However, if you'd like, you can download the latest and greatest version of [[trac:Pysqlite]] from  
     31[http://code.google.com/p/pysqlite/downloads/list google code], where you'll find the Windows 
     32installers or the `tar.gz` archive for building from source:  
    3233{{{ 
    3334$ tar xvfz <version>.tar.gz  
     
    3637}}} 
    3738  
    38 This will extract the SQLite code and build the bindings.  
    39  
    40 To install SQLite, your system may require the development headers. Without these you will get various GCC related errors when attempting to build: 
    41  
    42 {{{ 
    43 $ apt-get install libsqlite3-dev 
    44 }}} 
    45  
    46 SQLite 2.x is no longer supported, and neither is !PySqlite 1.1.x. 
    47  
    48 A known bug !PySqlite versions 2.5.2-4 prohibits upgrade of trac databases 
     39This will download the latest SQLite code and build the bindings.  
     40 
     41SQLite 2.x is no longer supported. 
     42 
     43A known bug PySqlite versions 2.5.2-4 prohibits upgrade of trac databases 
    4944from 0.11.x to 0.12. Please use versions 2.5.5 and newer or 2.5.1 and 
    50 older. See [trac:#9434] for more detail. 
    51  
    52 See additional information in [trac:PySqlite]. 
     45older. See #9434 for more detail. 
     46 
     47See additional information in [trac:PySqlite PySqlite]. 
    5348 
    5449==== For the PostgreSQL database #ForPostgreSQL 
     
    7570 
    7671===== Subversion ===== 
    77  
    78 [http://subversion.apache.org/ Subversion] 1.5.x or 1.6.x and the '''''corresponding''''' Python bindings.  
    79  
    80 There are [http://subversion.apache.org/packages.html pre-compiled SWIG bindings] available for various platforms. See also the TracSubversion page for details about Windows packages. 
    81  
    82 Older versions starting from 1.4.0, etc. should still work. For troubleshooting information, check the [trac:TracSubversion#Troubleshooting TracSubversion] page. Versions prior to 1.4.0 won't probably work since trac uses svn core functionality (e.g. svn_path_canonicalize) that is not implemented in the python swig wrapper in svn <= 1.3.x (although it exists in the svn lib itself). 
     72 * [http://subversion.apache.org/ Subversion], 1.5.x or 1.6.x and the '''''corresponding''''' Python bindings. Older versions starting from 1.0, like 1.2.4, 1.3.2 or 1.4.2, etc. should still work. For troubleshooting information, check the [trac:TracSubversion#Troubleshooting TracSubversion] page. 
     73 
     74There are [http://subversion.apache.org/packages.html pre-compiled SWIG bindings] available for various platforms. (Good luck finding precompiled SWIG bindings for any Windows package at that listing. TracSubversion points you to [http://alagazam.net Algazam], which works for me under Python 2.6.) 
    8375 
    8476Note that Trac '''doesn't''' use [http://pysvn.tigris.org/ PySVN], neither does it work yet with the newer `ctype`-style bindings.  
    8577 
    86 '''Please note:''' if using Subversion, Trac must be installed on the '''same machine'''. Remote repositories are currently [trac:#493 not supported]. 
     78 
     79'''Please note:''' if using Subversion, Trac must be installed on the '''same machine'''. Remote repositories are currently [trac:ticket:493 not supported]. 
    8780 
    8881 
    8982===== Others ===== 
    9083 
    91 Support for other version control systems is provided via third-parties. See [trac:PluginList] and [trac:VersioningSystemBackend]. 
     84Support for other version control systems is provided via third-parties. See [trac:PluginList] and [trac:VersionControlSystem]. 
    9285 
    9386==== Web Server ==== 
     
    9689Alternatively you configure Trac to run in any of the following environments. 
    9790 * [http://httpd.apache.org/ Apache] with  
    98    - [http://code.google.com/p/modwsgi/ mod_wsgi], see [wiki:TracModWSGI] (preferred) 
    99    - //[http://modpython.org/ mod_python 3.3.1], see TracModPython (deprecated)// 
    100  * any [http://www.fastcgi.com/ FastCGI]-capable web server, see TracFastCgi 
    101  * any [http://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html AJP]-capable web 
    102    server, see [trac:TracOnWindowsIisAjp] 
    103  * IIS with [http://code.google.com/p/isapi-wsgi/ Isapi-wsgi], see [trac:TracOnWindowsIisIsapi] 
    104  * //as a last resort, a CGI-capable web server (see TracCgi), but usage of Trac as a cgi script  
    105    is highly discouraged, better use one of the previous options.// 
     91   - [http://code.google.com/p/modwsgi/ mod_wsgi], see [wiki:TracModWSGI] and  
     92     http://code.google.com/p/modwsgi/wiki/IntegrationWithTrac 
     93   - [http://modpython.org/ mod_python 3.3.1], deprecated: see TracModPython) 
     94 * a [http://www.fastcgi.com/ FastCGI]-capable web server (see TracFastCgi) 
     95 * an [http://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html AJP]-capable web 
     96   server (see [trac:TracOnWindowsIisAjp TracOnWindowsIisAjp]) 
     97 * a CGI-capable web server (see TracCgi), '''but usage of Trac as a cgi script  
     98   is highly discouraged''', better use one of the previous options.  
    10699    
    107100 
    108101==== Other Python Packages ==== 
    109102 
    110  * [http://babel.edgewall.org Babel], version 0.9.5,  
    111    needed for localization support[[BR]] 
    112    ''Note: '' If you want to be able to use the Trac interface in other languages, then make sure you first have installed the optional package Babel. Lacking Babel, you will only get the default english version, as usual. If you install Babel later on, you will need to re-install Trac.  
     103 * [http://babel.edgewall.org Babel], version >= 0.9.5,  
     104   needed for localization support (unreleased version 1.0dev should work as well) 
    113105 * [http://docutils.sourceforge.net/ docutils], version >= 0.3.9  
    114106   for WikiRestructuredText. 
     
    134126A few examples: 
    135127 
    136  - first install of the latest stable version Trac 0.12.2, with i18n support: 
     128 - install Trac 1.0: 
    137129   {{{ 
    138    easy_install Babel==0.9.5 
    139    easy_install Trac 
     130   easy_install Trac==1.0 
    140131   }}} 
    141    ''It's very important to run the two `easy_install` commands separately, otherwise the message catalogs won't be generated.'' 
    142  
    143  - upgrade to the latest stable version of Trac: 
     132   (NOT YET ENABLED) 
     133 - install latest development version 1.0dev: 
    144134   {{{ 
    145    easy_install -U Trac 
     135   easy_install Trac==dev 
    146136   }}} 
    147  
    148  - upgrade to the latest trunk development version (0.13dev): 
    149    {{{ 
    150    easy_install -U Trac==dev 
    151    }}} 
    152  
    153 For upgrades, reading the TracUpgrade page is mandatory, of course. 
     137   Note that in this case you won't have the possibility to run a localized version of Trac; 
     138   either use a released version or install from source  
     139 
     140=== Using `pip` 
     141'pip' is an easy_install replacement that is very useful to quickly install python packages. 
     142To get a trac installation up and running in less than 5 minutes: 
     143 
     144Assuming you want to have your entire pip installation in `/opt/user/trac` 
     145 
     146 -  
     147{{{ 
     148pip -E /opt/user/trac install trac psycopg2  
     149}}} 
     150or 
     151 -  
     152{{{ 
     153pip -E /opt/user/trac install trac mysql-python  
     154}}} 
     155 
     156Make sure your OS specific headers are available for pip to automatically build PostgreSQL (libpq-dev) or MySQL (libmysqlclient-dev) bindings. 
     157 
     158pip will automatically resolve all dependencies (like Genshi, pygments, etc.) and download the latest packages on pypi.python.org and create a self contained installation in `/opt/user/trac`. 
     159 
     160All commands (`tracd`, `trac-admin`) are available in `/opt/user/trac/bin`. This can also be leveraged for `mod_python` (using `PythonHandler` directive) and `mod_wsgi` (using `WSGIDaemonProcess` directive) 
     161 
     162Additionally, you can install several trac plugins (listed [http://pypi.python.org/pypi?:action=search&term=trac&submit=search here]) through pip. 
     163 
     164 
    154165 
    155166=== From source 
    156 If you want more control, you can download the source in archive form, or do a checkout from one of the official [[Trac:TracRepositories|source code repositories]]. 
    157  
    158 Be sure to have the prerequisites already installed. You can also obtain the Genshi and Babel source packages from http://www.edgewall.org and follow for them a similar installation procedure, or you can just `easy_install` those, see [#Usingeasy_install above]. 
    159  
    160 Once you've unpacked the Trac archive or performed the checkout, move in the top-level folder and do: 
     167Of course, using the python-typical setup at the top of the source directory also works. 
     168 
     169You can obtain the source for a .tar.gz or .zip file corresponding to a release (e.g. Trac-1.0.tar.gz), or you can get the source directly from the repository (see Trac:SubversionRepository for details). 
     170 
    161171{{{ 
    162172$ python ./setup.py install 
    163173}}} 
    164174 
    165 You'll need root permissions or equivalent for this step. 
     175''You'll need root permissions or equivalent for this step.'' 
    166176 
    167177This will byte-compile the python source code and install it as an .egg file or folder in the `site-packages` directory 
     
    178188=== Advanced Options === 
    179189 
    180 ==== Custom location with `easy_install` 
    181  
    182190To install Trac to a custom location, or find out about other advanced installation options, run: 
    183191{{{ 
     
    198206 
    199207The above will place your `tracd` and `trac-admin` commands into `/usr/local/bin` and will install the Trac libraries and dependencies into `/Library/Python/2.5/site-packages`, which is Apple's preferred location for third-party Python application installations. 
    200  
    201 ==== Using `pip` 
    202 'pip' is an easy_install replacement that is very useful to quickly install python packages. 
    203 To get a trac installation up and running in less than 5 minutes: 
    204  
    205 Assuming you want to have your entire pip installation in /opt/user/trac: 
    206  
    207  -  
    208 {{{ 
    209 pip -E /opt/user/trac install trac psycopg2  
    210 }}} 
    211 or 
    212  -  
    213 {{{ 
    214 pip -E /opt/user/trac install trac mysql-python  
    215 }}} 
    216  
    217 Make sure your OS specific headers are available for pip to automatically build PostgreSQL (libpq-dev) or MySQL (libmysqlclient-dev) bindings. 
    218  
    219 pip will automatically resolve all dependencies (like Genshi, pygments, etc.) and download the latest packages on pypi.python.org and create a self contained installation in /opt/user/trac . 
    220  
    221 All commands (tracd, trac-admin) are available in /opt/user/trac/bin. This can also be leveraged for mod_python (using !PythonHandler directive) and mod_wsgi (using WSGIDaemonProcess directive) 
    222  
    223 Additionally, you can install several trac plugins (listed [http://pypi.python.org/pypi?:action=search&term=trac&submit=search here]) through pip. 
    224  
    225208 
    226209