summaryrefslogtreecommitdiff
path: root/www-apps/trac
diff options
context:
space:
mode:
authorBertrand Jacquin <beber@meleeweb.net>2013-08-22 00:57:00 +0200
committerBertrand Jacquin <beber@meleeweb.net>2013-08-22 01:13:53 +0200
commit176dd49fe31990541d736465dd40471f3910b05f (patch)
tree7c9fdaedec2b394179590e0c84580be825f897bd /www-apps/trac
parentnet-analyzer/mk-livestatus: Bug #482026, Move to EAPI 5, Move to python-r1, F... (diff)
downloadportage-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/ChangeLog12
-rw-r--r--www-apps/trac/Manifest9
-rw-r--r--www-apps/trac/files/1.0.1-git-identity.patch36
-rw-r--r--www-apps/trac/files/postinst-en.txt41
-rw-r--r--www-apps/trac/files/postupgrade-en.txt19
-rw-r--r--www-apps/trac/files/tracd.confd13
-rwxr-xr-xwww-apps/trac/files/tracd.initd27
-rw-r--r--www-apps/trac/metadata.xml12
-rw-r--r--www-apps/trac/trac-1.0.1.ebuild114
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
+}