diff options
author | Bertrand Jacquin <beber@meleeweb.net> | 2013-08-22 00:57:00 +0200 |
---|---|---|
committer | Bertrand Jacquin <beber@meleeweb.net> | 2013-08-22 01:13:53 +0200 |
commit | 176dd49fe31990541d736465dd40471f3910b05f (patch) | |
tree | 7c9fdaedec2b394179590e0c84580be825f897bd /www-apps/trac | |
parent | net-analyzer/mk-livestatus: Bug #482026, Move to EAPI 5, Move to python-r1, F... (diff) | |
download | portage-176dd49fe31990541d736465dd40471f3910b05f.tar.xz |
www-apps/trac: Bug #482034, Move to EAPI 5, Move to distutils-r1 ( restrict to python{2_6,2_7} and one single implementation for binary files), SLOT DEPENDs, Remove python:2.5 from RDEPEND as now mask in tree (#480070), Remove dev-python/pysqlite from RDEPEND as remove from tree (#408835), Don't install cgi and fcgi as-is, but use python_doscript to fix shebangs, Add test IUSE and add needed DEPEND, replace with python_test() for new eclass usage, but still fail
Package-Manager: portage-2.2.0
Diffstat (limited to 'www-apps/trac')
-rw-r--r-- | www-apps/trac/ChangeLog | 12 | ||||
-rw-r--r-- | www-apps/trac/Manifest | 9 | ||||
-rw-r--r-- | www-apps/trac/files/1.0.1-git-identity.patch | 36 | ||||
-rw-r--r-- | www-apps/trac/files/postinst-en.txt | 41 | ||||
-rw-r--r-- | www-apps/trac/files/postupgrade-en.txt | 19 | ||||
-rw-r--r-- | www-apps/trac/files/tracd.confd | 13 | ||||
-rwxr-xr-x | www-apps/trac/files/tracd.initd | 27 | ||||
-rw-r--r-- | www-apps/trac/metadata.xml | 12 | ||||
-rw-r--r-- | www-apps/trac/trac-1.0.1.ebuild | 114 |
9 files changed, 283 insertions, 0 deletions
diff --git a/www-apps/trac/ChangeLog b/www-apps/trac/ChangeLog new file mode 100644 index 00000000..d0437969 --- /dev/null +++ b/www-apps/trac/ChangeLog @@ -0,0 +1,12 @@ +*trac-1.0.1 (21 Aug 2013) + + 21 Aug 2013; Bertrand Jacquin <beber@meleeweb.net> + +files/1.0.1-git-identity.patch, +files/postinst-en.txt, + +files/postupgrade-en.txt, +files/tracd.confd, +files/tracd.initd, + +metadata.xml, +trac-1.0.1.ebuild: + www-apps/trac: Bug #482034, Move to EAPI 5, Move to distutils-r1 ( restrict to + python{2_6,2_7} and one single implementation for binary files), SLOT DEPENDs, + Remove python:2.5 from RDEPEND as now mask in tree (#480070), Remove dev- + python/pysqlite from RDEPEND as remove from tree (#408835), Don't install cgi + and fcgi as-is, but use python_doscript to fix shebangs, Add test IUSE and add + needed DEPEND, replace with python_test() for new eclass usage, but still fail diff --git a/www-apps/trac/Manifest b/www-apps/trac/Manifest new file mode 100644 index 00000000..804d9fda --- /dev/null +++ b/www-apps/trac/Manifest @@ -0,0 +1,9 @@ +AUX 1.0.1-git-identity.patch 1691 SHA256 2ffbc7093cbdb6eefa7e4e936f25bdbbbf8b34a145c21e49116fb374c5e5b82b WHIRLPOOL 1a294cd7cca5cccfee2b3dacd251e55ae918fa28efad15f98013ab45730e2965fd1875af6ba1b21a4ef8d52472b0a24109e4ab9dda0ee204c54fb943f10f17bc +AUX postinst-en.txt 1331 SHA256 1799cf63e70e2ed7c3b1a1148b29ce456dda8e84ef137605549de7f1e2856a95 WHIRLPOOL d082aec44d057e3e0a7ccae6989a09c6c2e259bcc896cdd2bbea650c69c069fb9cbae7abd0db46f6c1cf6888cc36656a6a7271e2dfc962e21c5fa74708740ad8 +AUX postupgrade-en.txt 665 SHA256 aec1179a04056a650a4f7429a927f510cd0e7256f889fdae2575ef471634ba41 WHIRLPOOL 512578b971cee45e0699e7461dd12ee37844bda48e69018d8956f81768e13a31ff30f91421697228410e61fa7159dc1a07e0831d8f4941e6d1bf1855d8d08207 +AUX tracd.confd 359 SHA256 6ae50c887d18f8eeda7d59c4d3fd1b5e07e407711c4e4679fef3583f7be8ed6e WHIRLPOOL 591394e732d39bc13f97004cfb3c18128aa16a55557172d872797b5ca5c69e5f15d1420e697a4e40215b2a893ed684ba6b6388abacd97874fd6f04953b579e1a +AUX tracd.initd 927 SHA256 562c02b327609f526687009fe245c90b64e1aae40dd855151cd3361a00abce93 WHIRLPOOL 9b63f2cb6aa0f4cb03b70fe3241229e15b794bd1a167e4e684205fc6541ee1fe656544971b02d9ab37d7906535cb4eed6903fd8aab28c2a55f3e04b2e4673650 +DIST Trac-1.0.1.tar.gz 3479896 SHA256 9dd49065696a8d4dfcb1a1af81e51d6bd487f5a1e72b3325c1fe4ecb5c490adb WHIRLPOOL c795fab244c42752e1c7d2a0e488b1c062333a6de01e607b749271f0124c16746b55ad35a69b6844db272f7223179d6f29f9115abb5289f6af1bdf467394b1a5 +EBUILD trac-1.0.1.ebuild 2720 SHA256 f1cbe3fd116c8d47c10178615c44ae2912caf716e5286e8401f3feb422f3b9a7 WHIRLPOOL 18add219a051b80dd21fb7d17ca022a3344cdaa2e311eb67f0d77b8371d62655f96a15c37b0e037b82fb05b3960f2114769c1fb12c8fc44b237dacfb4acc1223 +MISC ChangeLog 725 SHA256 ec2f448809ee0f177589759d6640463f068520f218e4fa180119348578728f6f WHIRLPOOL b6fd264089afd0bb724974f3032d0346452d8d0237584df121fc66db3e7057d58f5bfbd5bb589b9663bec307941c190dcf84722a430b1d44dafe58541a1b8398 +MISC metadata.xml 353 SHA256 12d6ceeed2212b5daf258a1dc4fee3fb6acd607e866e4062a907c157ac387059 WHIRLPOOL ad21708451d96efaf7aec37feff0e6e4eda8ffda9ee7a8483da15a529aa0ba1eee840efd73638d3a7922c8a33345ef4fd4797dbc22e99be902f1e37559ff9cd1 diff --git a/www-apps/trac/files/1.0.1-git-identity.patch b/www-apps/trac/files/1.0.1-git-identity.patch new file mode 100644 index 00000000..703a2dbc --- /dev/null +++ b/www-apps/trac/files/1.0.1-git-identity.patch @@ -0,0 +1,36 @@ +http://trac.edgewall.org/changeset/11675
+
+Index: /branches/1.0-stable/tracopt/versioncontrol/git/tests/PyGIT.py
+===================================================================
+--- /branches/1.0-stable/tracopt/versioncontrol/git/tests/PyGIT.py (revision 11674)
++++ /branches/1.0-stable/tracopt/versioncontrol/git/tests/PyGIT.py (revision 11675)
+@@ -153,4 +153,6 @@
+ # create git repository and master branch
+ self._git('init', self.repos_path)
++ self._git('config', 'user.name', u"Joé")
++ self._git('config', 'user.email', "joe@example.com")
+ create_file(os.path.join(self.repos_path, '.gitignore'))
+ self._git('add', '.gitignore')
+@@ -166,5 +168,5 @@
+ cwd=self.repos_path)
+ proc.wait()
+- assert proc.returncode == 0
++ assert proc.returncode == 0, proc.stderr.read()
+ return proc
+
+@@ -181,5 +183,6 @@
+ create_file(os.path.join(self.repos_path, 'tickét.txt'))
+ self._git('add', 'tickét.txt')
+- self._git('commit', '-m', 'unicode-filename')
++ self._git('commit', '-m', 'unicode-filename',
++ '--date', 'Sun Feb 3 18:30 2013 +0100')
+ storage = self._storage()
+ filenames = sorted(fname for mode, type, sha, size, fname
+@@ -189,4 +192,7 @@
+ self.assertEquals(u'.gitignore', filenames[0])
+ self.assertEquals(u'tickét.txt', filenames[1])
++ # check commit author, for good measure
++ self.assertEquals(u'Joé <joe@example.com> 1359912600 +0100',
++ storage.read_commit(storage.head())[1]['author'][0])
+
+ def test_unicode_branches(self):
diff --git a/www-apps/trac/files/postinst-en.txt b/www-apps/trac/files/postinst-en.txt new file mode 100644 index 00000000..2a4012b9 --- /dev/null +++ b/www-apps/trac/files/postinst-en.txt @@ -0,0 +1,41 @@ +Install Instructions +==================== + +This is brief and generic information about Trac. + +See the releases notes at http://trac.edgewall.org/wiki/TracDev/ReleaseNotes +for the Trac version you have installed to learn about software changes and +possible caveats. + +Web Server +---------- + +Trac installation depends on the web server you are using. + +FastCGI users: see http://trac.edgewall.org/wiki/TracFastCgi + +CGI users: see http://trac.edgewall.org/wiki/TracCgi + +Apache 2 and mod_python users: you have to manually emerge +www-apache/mod_python. See http://trac.edgewall.org/wiki/TracModPython + +You can also use Trac without having to install a web server. See +http://trac.edgewall.org/wiki/TracStandalone to know more. + +Trac relies on the web server for users authentication. Please refer to the +Trac wiki and to your web server documentation to set up authentication. + +Trac environments +----------------- + +To complete the install, create your first Trac environment by running this +command: + + trac-admin /var/lib/trac/<project-name> initenv + +Don't forget to review the configuration file! It is located at +/var/lib/trac/<project-name>/conf/trac.ini. Consult its reference at +http://trac.edgewall.org/wiki/TracIni + +See http://trac.edgewall.org/wiki/TracEnvironment to know more about Trac +environments and how to configure them. diff --git a/www-apps/trac/files/postupgrade-en.txt b/www-apps/trac/files/postupgrade-en.txt new file mode 100644 index 00000000..1f5c8ea2 --- /dev/null +++ b/www-apps/trac/files/postupgrade-en.txt @@ -0,0 +1,19 @@ +Upgrade Instructions +==================== + +This is brief and generic information about Trac. + +See the releases notes at http://trac.edgewall.org/wiki/TracDev/ReleaseNotes +for the Trac version you have installed to learn about software changes and +possible caveats. + +If you are upgrading from a previous Trac version, please follow the +instructions here: + + http://trac.edgewall.org/wiki/TracUpgrade + +You will need to run trac-admin commands (upgrade, wiki upgrade...) for each +Trac environment you have. + +You might also want to check for new configuration options by comparing trac.ini +file with trac.ini.sample file in the conf/ directory in each Trac environment. diff --git a/www-apps/trac/files/tracd.confd b/www-apps/trac/files/tracd.confd new file mode 100644 index 00000000..2cb9d292 --- /dev/null +++ b/www-apps/trac/files/tracd.confd @@ -0,0 +1,13 @@ +# The commented variables in this file are the defaults that are used +# in the init-script. You don't need to uncomment them except to +# customize them to different values. + +# Port for tracd +#TRACD_PORT="8000" + +# Options for tracd +#TRACD_OPTS="--env-parent-dir /var/lib/trac/" + +# User and group as which to run tracd +#TRACD_USER="tracd" +#TRACD_GROUP="tracd" diff --git a/www-apps/trac/files/tracd.initd b/www-apps/trac/files/tracd.initd new file mode 100755 index 00000000..ffa84c24 --- /dev/null +++ b/www-apps/trac/files/tracd.initd @@ -0,0 +1,27 @@ +#!/sbin/runscript +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later +# $Header: /var/cvsroot/gentoo-x86/www-apps/trac/files/tracd.initd,v 1.6 2011/12/31 20:17:51 idl0r Exp $ + +depend() { + need net +} + +start() { + ebegin "Starting tracd" + # tracd fails to create pidfile if started as non-root user, thus we are asking + # s-s-d to do that. To have correct pid we avoid -d option of tracd and use + # --background option of s-s-d. + start-stop-daemon --start --user ${TRACD_USER:-tracd} --group ${TRACD_GROUP:-tracd} \ + --pidfile /var/run/tracd.pid --make-pidfile --background \ + --env PYTHON_EGG_CACHE="/var/lib/trac/egg-cache" \ + --exec /usr/bin/tracd -- \ + -p ${TRACD_PORT:-8000} ${TRACD_OPTS:---env-parent-dir /var/lib/trac/} + eend $? +} + +stop() { + ebegin "Stopping tracd" + start-stop-daemon --stop --quiet --pidfile /var/run/tracd.pid + eend $? +} diff --git a/www-apps/trac/metadata.xml b/www-apps/trac/metadata.xml new file mode 100644 index 00000000..999b5eb7 --- /dev/null +++ b/www-apps/trac/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>web-apps</herd> + <maintainer> + <email>djc@gentoo.org</email> + <name>Dirkjan Ochtman</name> + </maintainer> + <use> + <flag name="i18n">Enable support for i18n with dev-python/Babel</flag> + </use> +</pkgmetadata> diff --git a/www-apps/trac/trac-1.0.1.ebuild b/www-apps/trac/trac-1.0.1.ebuild new file mode 100644 index 00000000..584026f4 --- /dev/null +++ b/www-apps/trac/trac-1.0.1.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +PYTHON_COMPAT=( python{2_6,2_7} ) +DISTUTILS_SINGLE_IMPL=Yes + +inherit distutils-r1 eutils user webapp + +MY_PV="${PV/_beta/b}" +MY_P="Trac-${MY_PV}" + +DESCRIPTION="Trac is a minimalistic web-based project management, wiki and bug/issue tracking system." +HOMEPAGE="http://trac.edgewall.com/ http://pypi.python.org/pypi/Trac" +SRC_URI="http://ftp.edgewall.com/pub/trac/${MY_P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd" +IUSE="cgi fastcgi i18n mysql postgres +sqlite subversion test" +REQUIRED_USE="|| ( mysql postgres sqlite )" + +RDEPEND=" + dev-python/setuptools:0 + dev-python/docutils:0 + dev-python/genshi:0 + dev-python/pygments:0 + dev-python/pytz:0 + i18n? ( >=dev-python/Babel-0.9.5:0[${PYTHON_USEDEP}] ) + cgi? ( virtual/httpd-cgi:0 ) + fastcgi? ( virtual/httpd-fastcgi:0 ) + mysql? ( dev-python/mysql-python:0[${PYTHON_USEDEP}] ) + postgres? ( dev-python/psycopg:2[${PYTHON_USEDEP}] ) + sqlite? ( + >=dev-db/sqlite-3.3.4:3 + || ( dev-lang/python:2.7[sqlite] dev-lang/python:2.6[sqlite] ) + ) + subversion? ( dev-vcs/subversion:0[python,${PYTHON_USEDEP}] ) + " +DEPEND="${RDEPEND} + test? ( + dev-python/twill:0[${PYTHON_USEDEP}] + dev-python/lxml:0[${PYTHON_USEDEP}] + dev-python/configobj:0[${PYTHON_USEDEP}] + )" + +S="${WORKDIR}/${MY_P}" + +WEBAPP_MANUAL_SLOT="yes" + +pkg_setup() { + python-single-r1_pkg_setup + webapp_pkg_setup + + enewgroup tracd + enewuser tracd -1 -1 -1 tracd +} + +src_prepare() { + epatch "${FILESDIR}/${PV}-git-identity.patch" +} + +python_test() { + einfo "Running ${PYTHON} trac/test.py -v" + PYTHONPATH=. "${PYTHON}" trac/test.py -v || die + + if use i18n; then + emake check + fi +} + +# the default src_compile just calls setup.py build +# currently, this switches i18n catalog compilation based on presence of Babel +src_install() { + webapp_src_preinst + distutils-r1_src_install + + # project environments might go in here + keepdir /var/lib/trac + + # Use this as the egg-cache for tracd + dodir /var/lib/trac/egg-cache + keepdir /var/lib/trac/egg-cache + fowners tracd:tracd /var/lib/trac/egg-cache + + # documentation + dodoc -r contrib + + # tracd init script + newconfd "${FILESDIR}"/tracd.confd tracd + newinitd "${FILESDIR}"/tracd.initd tracd + + if use cgi; then + python_scriptinto "${MY_CGIBINDIR}" + python_doscript contrib/cgi-bin/trac.cgi + fi + if use fastcgi; then + python_scriptinto "${MY_CGIBINDIR}" + python_doscript contrib/cgi-bin/trac.fcgi + fi + + for lang in en; do + webapp_postinst_txt ${lang} "${FILESDIR}"/postinst-${lang}.txt + webapp_postupgrade_txt ${lang} "${FILESDIR}"/postupgrade-${lang}.txt + done + + webapp_src_install +} + +pkg_postinst() { + webapp_pkg_postinst +} |