= Руководство по установке Trac для версии 1.2 [[TracGuideToc]] [[TranslatedPages]] Trac написан на языке программирования Python и использует базы данных [http://sqlite.org/ SQLite], [http://www.postgresql.org/ PostgreSQL] или [http://mysql.com/ MySQL]. Для генерации HTML, Trac использует систему шаблонов [http://genshi.edgewall.org/ Genshi]. Trac может быть локализован, и скорее всего перевод на ваш язык уже доступен. Если вы хотите использовать интерфейс Trac на другом языке, убедитесь в том, что у вас установлен дополнительный пакет [#OtherPythonPackages Babel]. Обратите также ваше внимание на дополнительные шаги, которые потребуются для поддержки локализации в разделе [#InstallingTrac Installing Trac] ниже. При отсутствии пакета Babel, вы получите только английскую версию. Если вас интересует поддержка новых переводов Trac на другие языки или поддержка существующих переводов, ознакомьтесь с документацией [trac:wiki:TracL10N TracL10N]. Далее приведены общие инструкции по установке и настройке Trac. Несмотря на то что вы можете найти инструкции по установке Trac на конкретные платформы в разделе [trac:TracInstallPlatforms TracInstallPlatforms], мы советуем '''предварительно ознакомится с этими общими инструкциями''' для лучшего понимания описанных в них задач. [[PageOutline(2-3,Этапы установки,inline)]] == Зависимости === Обязательное зависимости Перед установкой Trac, вам необходимо установить следующие пакеты: * [http://www.python.org/ Python] версии >= 2.6 и < 3.0 (обратите внимание, мы не поддерживаем Python 2.5 с этого выпуска) * [http://peak.telecommunity.com/DevCenter/setuptools setuptools] версии >= 0.6 * [http://genshi.edgewall.org/ Genshi] версии >= 0.6 Вам также необходима ''система управления базами данных'' и соответствующие библиотеки для Python (python bindings). Данная версия Trac поддерживает СУБД SQLite, PostgreSQL и MySQL. ===== Для базы SQLite #ForSQLite Так как вы должны использовать Python 2.6 или 2.7, у вас уже установлены все требуемые для SQLite библиотеки имеющиеся в стандартной поставке Python (модуль `sqlite3`). При желаниии вы можете установить более новую версию [https://pypi.org/project/pysqlite pysqlite] чем та, что поставляется в дистрибутиве Python. Для более подробной информации, смотрите [trac:PySqlite#ThePysqlite2bindings PySqlite]. ===== Для базы PostgreSQL #ForPostgreSQL Вам нужно установить СУБД и соответствующую библиотеку Python: * [http://www.postgresql.org/ PostgreSQL], версия 8.0 или новее. * [http://pypi.python.org/pypi/psycopg2 psycopg2], версия 2.0 или новее. Для более подробной информации, смотрите [trac:DatabaseBackend#Postgresql Серверы СУБД]. ===== Для базы MySQL Trac теперь может работать с MySQL, если вы будете следовать инструкциям. * [http://mysql.com/ MySQL] версии 5.0 или новее * [http://sf.net/projects/mysql-python MySQLdb] версии 1.2.2 или новее '''Очень''' важно внимательно прочитать страницу [trac:MySQLdb] перед созданием базы данных. === Опциональные зависимости ===== Subversion * [http://subversion.apache.org/ Subversion], 1.6 или новее и '''''соответствующие''''' библиотеки Python. [http://subversion.apache.org/packages.html Скомпилированные SWIG библиотеки] доступны для различных платформ. (Удачи в поисках скомпилированных SWIG библиотек для любого Windows пакета. TracSubversion содержит ссылку на [http://alagazam.net Algazam], где есть библиотеки, работающие с Python 2.6.) Для информации о возникающих проблемах обратитесь к странице [trac:TracSubversion#Troubleshooting TracSubversion] {{{#!div style="border: 1pt dotted; margin: 1em" **Примечание:** * Заметьте, что Trac '''не''' использует [http://pysvn.tigris.org/ PySVN], он ещё не работает с новыми `ctype`-style bindings. * При использовании Subversion, Trac должен быть установлен на '''той же машине'''. Удаленные репозитарии в данный момент [trac:ticket:493 не поддерживаются]. }}} ==== Git Поддерживается [https://git-scm.com/ Git] версии 1.5.6 или новее. Более подробная информация доступна на странице [trac:TracGit]. ==== Другие системы контроля версий Поддержка для других систем контроля версий предоставляется по средствам сторонних плагинов. Смотрите [trac:PluginList#VersionControlSystems] или [trac:VersionControlSystem]. ==== Web-сервер Web-сервер не является обязательным требованием, так как Trac предоставляется вместе со встроенным сервером, подробнее смотрите ниже в разделе [#RunningtheStandaloneServer Запуск встроенного сервера]. В противном случае вы можете настроить Trac для запуска в любом из следующих окружений: * [https://httpd.apache.org/ Apache] с модулями * [https://github.com/GrahamDumpleton/mod_wsgi mod_wsgi], смотрите [wiki:TracModWSGI] и [https://code.google.com/p/modwsgi/wiki/IntegrationWithTrac ModWSGI IntegrationWithTrac]. * [http://modpython.org/ mod_python 3.5.0], смотрите TracModPython * [http://www.fastcgi.com/ FastCGI]-совместимый web-сервер (смотрите TracFastCgi) * [https://tomcat.apache.org/connectors-doc/ajp/ajpv13a.html AJP]-совместимый web-сервер (смотрите [trac:TracOnWindowsIisAjp TracOnWindowsIisAjp]) * Microsoft IIS с FastCGI и FastCGI-to-WSGI шлюзом (смотрите [trac:CookBook/Installation/TracOnWindowsIisWfastcgi IIS с FastCGI]) * CGI-совместимый web-сервер (смотрите TracCgi), '''но использование Trac в качестве cgi-скрипта сильно обескураживает''', лучше используйте одну из предыдущих опций. ==== Прочие пакеты Python * [http://babel.edgewall.org Babel], версия 0.9.6 или >= 1.3, необходим для поддержки переводов * [http://docutils.sourceforge.net/ docutils], версия >= 0.3.9 для WikiRestructuredText. * [http://pygments.org Pygments] для [подсветки синтаксиса TracSyntaxColoring]. * [http://pytz.sf.net pytz] для получения полного списка временных зон, иначе Trac выдаст ограниченный список временных зон в соответствии со своей внутренней реализацией. {{{#!div style="border: 1pt dotted; margin: 1em" **Внимание**: Доступные версии данных зависимостей не обязательно взаимозаменяемы, поэтому обратите внимание на номера версий. Если у вас возникли проблемы с работой Trac, пожалуйста, ещё раз проверьте все зависимости, прежде чем обращаться за помощью в [trac:MailingList] или [trac:IrcChannel]. }}} Пожалуйста обратитесь к документации этих пакетов, чтобы найти информацию каким наилучшим способом они могут быть установлены. Дополнительно, большинство из [trac:TracInstallPlatforms платформо-специфических инструкций] так же описывают установку этих зависимостей. Однако имейте в виду, что информация там ''вероятно, касается более старых версий Trac, чем та, которую вы устанавливаете''. == Установка Trac Инструмент командной строки [TracAdmin trac-admin], используется для создания и поддержки [TracEnvironment проектного окружения] ,а также [TracStandalone tracd] автономный сервер устанавливаются вместе с Trac. Существует несколько способов установки Trac. В данном руководстве предполагается, что у вас есть права пользователя `root` или возможность использовать утилиту `sudo`. Umask `0002` должна использоваться для обычной установки на Unix-подобные платформы. === Использование `easy_install` Trac может быть установлен из PyPI или Subversion репозитария с помощью утилит пакета [https://pypi.org/project/setuptools setuptools]. Вот несколько примеров: - Установка последней стабильной версии Trac: {{{#!sh $ easy_install Trac }}} - Установка последней версии находящейся в разработке: {{{#!sh $ easy_install https://download.edgewall.org/trac/Trac-latest-dev.tar.gz }}} == Создание окружения проекта [TracEnvironment Окружение Trac] - это внутреннее хранилище, в котором Trac хранит информацию такую как вики страницы, карточки, отчёты, настройки и т.д. Окружение - это по существу директория, в которой содержится [TracIni конфигурационный файл], а также другие файлы и директории. Новое окружение создаётся с помощью [wiki:TranslationRu/TracAdmin trac-admin]: {{{ $ trac-admin /path/to/myproject initenv }}}