Verbatim:Development/Dev Instance: Difference between revisions
Jump to navigation
Jump to search
(→Setting up a Pootle development instance: virtualenv is not required) |
|||
| Line 9: | Line 9: | ||
** <code>git svn clone -Ttrunk https://translate.svn.sourceforge.net/svnroot/translate/src/ pootle</code> | ** <code>git svn clone -Ttrunk https://translate.svn.sourceforge.net/svnroot/translate/src/ pootle</code> | ||
** if you are using <code>git-svn</code>, make sure to generate an empty <code>dbs</code> directory, as git won't pick up empty directories [http://sourceforge.net/mailarchive/forum.php?thread_name=4A37D896.3070403%40mozilla.com&forum_name=translate-devel] | ** if you are using <code>git-svn</code>, make sure to generate an empty <code>dbs</code> directory, as git won't pick up empty directories [http://sourceforge.net/mailarchive/forum.php?thread_name=4A37D896.3070403%40mozilla.com&forum_name=translate-devel] | ||
* create a clean Python environment for the application, using [http://pypi.python.org/pypi/virtualenv virtualenv] | * if you do not want to install Pootle's requirements into your global Python environment, create a clean, virtual Python environment for the application, using [http://pypi.python.org/pypi/virtualenv virtualenv]. Note that this is not required, but may be helpful if you develop on multiple python-based projects | ||
** <code>virtualenv --no-site-packages --python=path/to/python2.[ | ** <code>virtualenv --no-site-packages --python=path/to/python2.[4-6] pootle-env</code> | ||
** <code>cd pootle-env/</code> | ** <code>cd pootle-env/</code> | ||
** <code>. bin/activate</code> | ** <code>. bin/activate</code> | ||
| Line 19: | Line 19: | ||
*** <code>python setup.py install</code> | *** <code>python setup.py install</code> | ||
* Initialize the database by running the <code>./PootleServer</code> script once. | * Initialize the database by running the <code>./PootleServer</code> script once. | ||
** '''Note for OS X users:''' At this point | ** '''Note for OS X users:''' At this point you may get an error that lxml is not installed. Running <code>easy_install lxml</code> didn't work for me, but it might work for you. Instead what I had to do was download the [http://codespeak.net/lxml/lxml-2.2.1.tgz lxml .tqz] and then: | ||
***<code>tar -xvzf lxml-2.2.1.tgz</code> | ***<code>tar -xvzf lxml-2.2.1.tgz</code> | ||
***<code>cd lxml-2.2.1</code> | ***<code>cd lxml-2.2.1</code> | ||
Revision as of 15:29, 2 July 2009
Verbatim » Development / Dev Instance
Setting up a Pootle development instance
Pootle's installation instructions are on the Pootle wiki. Make sure to follow the (django-based) installation instructions, not the ones referring to jToolkit.
- have Python 2.4--2.6 installed (Mozilla is currently running 2.4 in production)
- grab an svn checkout of the Pootle trunk:
svn co https://translate.svn.sourceforge.net/svnroot/translate/src/trunk pootle... orgit svn clone -Ttrunk https://translate.svn.sourceforge.net/svnroot/translate/src/ pootle- if you are using
git-svn, make sure to generate an emptydbsdirectory, as git won't pick up empty directories [1]
- if you do not want to install Pootle's requirements into your global Python environment, create a clean, virtual Python environment for the application, using virtualenv. Note that this is not required, but may be helpful if you develop on multiple python-based projects
virtualenv --no-site-packages --python=path/to/python2.[4-6] pootle-envcd pootle-env/. bin/activate
- Install the pre-requisites. Some notes:
- PyLucene and Xapian are not vital
- The translate toolkit is part of the Pootle project too, and while it comes with an svn checkout of the trunk you still need to install it:
cd pootlepython setup.py install
- Initialize the database by running the
./PootleServerscript once.- Note for OS X users: At this point you may get an error that lxml is not installed. Running
easy_install lxmldidn't work for me, but it might work for you. Instead what I had to do was download the lxml .tqz and then:tar -xvzf lxml-2.2.1.tgzcd lxml-2.2.1python setup.py build --static-depspython setup.py install
- The issue apparently is that lxml requires newer versions of the libxml and libxslt libraries than the system offers. Building from source with the --static-deps flag will force lxml to download the versions it needs and link against those. More details are available on the lxml website.
- Note for OS X users: At this point you may get an error that lxml is not installed. Running
- You can run the pootle server later by using
./manage.py runserver PORTNUMBER(if you omit PORTNUMBER, it'll default to 8000) [2]