Changes between Version 1 and Version 2 of TracInstall
- Timestamp:
- 21/09/2011 11:27:42 (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TracInstall
v1 v2 1 {{{ 2 #!div style="margin-top: .5em; padding: 0 1em; background-color: #ffd; border:1px outset #ddc;" 3 4 '''NOTE: this page is for 0.12dev (trunk), the version currently in development. For installing previous Trac versions, please refer to [[0.11/TracInstall]]''' 5 }}} 6 = Trac Installation Guide for 0.12dev = 1 = Trac Installation Guide for 0.12 = 7 2 [[TracGuideToc]] 8 3 9 4 Trac 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. 10 5 11 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 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.12 13 If you're interested in contributing new translations for other languages or enhance the existing translations, then please have a look at [ "TracL10N"].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]. 14 9 15 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 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. … … 34 29 35 30 If you're using Python 2.4 and need pysqlite, you can download from 36 [http://code.google.com/p/pysqlite/downloads/list google code] the Windows 37 installers or the tar.gz archive for building from source: 31 [http://code.google.com/p/pysqlite/downloads/list google code] the Windows installers or the tar.gz archive for building from source: 38 32 {{{ 39 33 $ tar xvfz <version>.tar.gz … … 44 38 This will extract the SQLite code and build the bindings. 45 39 46 SQLite 2.x is no longer supported. For SQLite 3.x, the pysqlite 1.1.x 47 bindings are also no longer supported, use pysqlite 2.x. 48 49 See additional information in [trac:PySqlite PySqlite]. 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 49 from 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]. 50 53 51 54 ==== For the PostgreSQL database #ForPostgreSQL 52 55 53 56 You need to install the database and its Python bindings: 54 * [http://www.postgresql.org/ PostgreSQL] 57 * [http://www.postgresql.org/ PostgreSQL], version 8.0 or later 55 58 * [http://pypi.python.org/pypi/psycopg2 psycopg2] 56 59 … … 65 68 * [http://sf.net/projects/mysql-python MySQLdb], version 1.2.2 or later 66 69 67 It is '''very''' important to read carefully the [trac:MySqlDb MySqlDb] page before creating the database.70 It is '''very''' important to read carefully the [trac:MySqlDb] page before creating the database. 68 71 69 72 === Optional Dependencies … … 72 75 73 76 ===== Subversion ===== 74 * [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. 75 76 There are [http://subversion.apache.org/packages.html pre-compiled SWIG bindings] available for various platforms. Note that Trac '''doesn't''' use [http://pysvn.tigris.org/ PySVN], neither does it work yet with the newer `ctype`-style bindings 77 * [http://subversion.apache.org/ Subversion], 1.5.x or 1.6.x and the '''''corresponding''''' Python bindings. 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). 78 79 There 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.) 80 81 Note that Trac '''doesn't''' use [http://pysvn.tigris.org/ PySVN], neither does it work yet with the newer `ctype`-style bindings. [Is there a ticket for implementing ctype bindings?] 77 82 78 83 … … 82 87 ===== Others ===== 83 88 84 Support for other version control systems is provided via third-parties. See [trac:PluginList PluginList] and [trac:VersioningSystemBackendVersioningSystemBackend].89 Support for other version control systems is provided via third-parties. See [trac:PluginList] and [trac:VersioningSystemBackend]. 85 90 86 91 ==== Web Server ==== … … 91 96 - [http://code.google.com/p/modwsgi/ mod_wsgi], see [wiki:TracModWSGI] and 92 97 http://code.google.com/p/modwsgi/wiki/IntegrationWithTrac 93 - [http://modpython.org/ mod_python 3.3.1], see TracModPython)98 - [http://modpython.org/ mod_python 3.3.1], deprecated: see TracModPython) 94 99 * a [http://www.fastcgi.com/ FastCGI]-capable web server (see TracFastCgi) 95 100 * an [http://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html AJP]-capable web 96 server (see [trac:TracOnWindowsIisAjp TracOnWindowsIisAjp])97 * ACGI-capable web server (see TracCgi), '''but usage of Trac as a cgi script98 is highly discouraged''', better use one of the following options,101 server (see [trac:TracOnWindowsIisAjp]) 102 * a CGI-capable web server (see TracCgi), '''but usage of Trac as a cgi script 103 is highly discouraged''', better use one of the previous options. 99 104 100 105 … … 102 107 103 108 * [http://babel.edgewall.org Babel], version >= 0.9.5, 104 needed for localization support 109 needed for localization support[[BR]] 110 ''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. 105 111 * [http://docutils.sourceforge.net/ docutils], version >= 0.3.9 106 112 for WikiRestructuredText. … … 114 120 an internal time zone implementation. 115 121 116 '''Attention''': The various available versions of these dependencies are not necessarily interchangable, so please pay attention to the version numbers above. If you are having trouble getting Trac to work please double-check all the dependencies before asking for help on the [trac:MailingList MailingList] or [trac:IrcChannelIrcChannel].122 '''Attention''': The various available versions of these dependencies are not necessarily interchangable, so please pay attention to the version numbers above. If you are having trouble getting Trac to work please double-check all the dependencies before asking for help on the [trac:MailingList] or [trac:IrcChannel]. 117 123 118 124 Please refer to the documentation of these packages to find out how they are best installed. In addition, most of the [trac:TracInstallPlatforms platform-specific instructions] also describe the installation of the dependencies. Keep in mind however that the information there ''probably concern older versions of Trac than the one you're installing'' (there are even some pages that are still talking about Trac 0.8!). … … 121 127 == Installing Trac == 122 128 === Using `easy_install` 123 One way to install Trac is using `setuptools`.129 One way to install Trac is using [http://pypi.python.org/pypi/setuptools setuptools]. 124 130 With setuptools you can install Trac from the subversion repository; 125 131 126 132 A few examples: 127 133 128 - install Trac 0.12 beta1::134 - first install of the latest stable version Trac 0.12.1, with i18n support: 129 135 {{{ 130 easy_install Trac==0.12b1 136 easy_install Babel==0.9.5 Genshi==0.6 137 easy_install Trac 131 138 }}} 132 133 - install latest development version 0.12dev 139 ''It's very important to run the two `easy_install` commands separately, otherwise the message catalogs won't be generated.'' 140 141 - upgrade to the latest stable version of Trac: 134 142 {{{ 135 easy_install Trac==dev143 easy_install -U Trac 136 144 }}} 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 145 146 - upgrade to the latest trunk development version (0.13dev): 147 {{{ 148 easy_install -U Trac==dev 149 }}} 150 151 For upgrades, reading the TracUpgrade page is mandatory, of course. 139 152 140 153 === From source 141 Of course, using the python-typical setup at the top of the source directory also works. 142 143 You can obtain the source for a .tar.gz or .zip file corresponding to a release (e.g. Trac-0.12b1.tar.gz), or you can get the source directly from the repository (see Trac:SubversionRepository for details). 144 154 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]]. 155 156 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]. 157 158 Once you've unpacked the Trac archive or performed the checkout, move in the top-level folder and do: 145 159 {{{ 146 160 $ python ./setup.py install … … 154 168 The script will also install the [wiki:TracAdmin trac-admin] command-line tool, used to create and maintain [wiki:TracEnvironment project environments], as well as the [wiki:TracStandalone tracd] standalone server. 155 169 156 If you install from source and want to make Trac available in other languages, make sure you have installed Babel and then run this additional step before doing the `install` (or simply redo the `install` afterwards): 157 {{{ 158 $ python ./setup.py compile_catalog -f 159 }}} 160 (the `-f` flag is needed as long as some translations are marked ''fuzzy'', i.e. incomplete, which will most probably be the case during the whole development period, as strings are continuously added or modified) 161 170 If you install from source and want to make Trac available in other languages, make sure Babel is installed. Only then, perform the `install` (or simply redo the `install` once again afterwards if you realize Babel was not yet installed): 171 {{{ 172 $ python ./setup.py install 173 }}} 174 Alternatively, you can do a `bdist_egg` and copy the .egg from dist/ to the place of your choice, or you can create a Windows installer (`bdist_wininst`). 162 175 163 176 === Advanced Options === … … 181 194 182 195 The 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. 196 197 === Using `pip` 198 'pip' is an easy_install replacement that is very useful to quickly install python packages. 199 To get a trac installation up and running in less than 5 minutes: 200 201 Assuming you want to have your entire pip installation in /opt/user/trac: 202 203 - 204 {{{ 205 pip -E /opt/user/trac install trac psycopg2 206 }}} 207 or 208 - 209 {{{ 210 pip -E /opt/user/trac install trac mysql-python 211 }}} 212 213 Make sure your OS specific headers are available for pip to automatically build PostgreSQL (libpq-dev) or MySQL (libmysqlclient-dev) bindings. 214 215 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 . 216 217 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) 218 219 Additionally, you can install several trac plugins (listed [http://pypi.python.org/pypi?:action=search&term=trac&submit=search here]) through pip. 220 183 221 184 222 … … 205 243 # chown -R apache.apache /path/to/myproject 206 244 }}} 245 246 {{{#!div class=important 247 '''Warning:''' Please only use ASCII-characters for account name and project path, unicode characters are not supported there. 248 }}} 249 207 250 208 251 == Running the Standalone Server ==