Sophie

Sophie

distrib > Mandriva > 2007.0 > x86_64 > media > contrib-backports-src > by-pkgid > c2daa911e0055f4f26b0bf5b3722b79b > files > 3

trac-0.10.3.1-1mdv2007.0.src.rpm

# rationale behind the splitting
# every database backend is here to pull the proper database module
# every vcs backend is here for the same reason
# frontend are here to place specific configuration files, except 
#   wsgi, here to not pull anything ( ie, not pull apache ) or change the configuration

# TODO people who want to use fcgi with lighttpd ?
%define rel 1

Name:		trac
Version: 0.10.3.1
Release: %mkrel %rel
License:	BSD
Group:		Networking/WWW
Summary:	Integrated SCM & Project manager
Source0:    http://ftp.edgewall.com/pub/trac/%{name}-%{version}.tar.bz2
Source1:    tracd.init
Source2:    tracd.sysconfig
Source3:    Trac.pm
Url:		http://projects.edgewall.com/trac/wiki/TracDownload
BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires: python-devel 
Requires:   python-clearsilver 
Requires:   %{name}-frontend %{name}-db_backend %{name}-vcs_backend
BuildArch:  noarch 
%description
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 


%package cgi
Group:		Networking/WWW
Summary:	Trac Integrated SCM & Project manager - cgi frontend
Group:		Networking/WWW
Requires:       %{name}
# it can work with any cgi webserver, but only apache is covered by the package
Requires:       webserver
Provides:       %{name}-frontend

%description cgi
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package contains various files needed to integrate it
with apache.

%package fcgi
Group:		Networking/WWW
Summary:	Trac Integrated SCM & Project manager - cgi frontend
Group:		Networking/WWW
Requires:       %{name}
# it can work with any fcgi webserver, but only apache is covered by the package
Requires:       apache-mod_fcgid
Provides:       %{name}-frontend

%description fcgi
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package contains various files needed to integrate it
with apache and fcgi.

%package wsgi
Group:		Networking/WWW
Summary:	Trac Integrated SCM & Project manager - wsgi frontend
Group:		Networking/WWW
Requires:       %{name}
Provides:       %{name}-frontend

%description wsgi
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package contains various files needed to integrate it
with a wsgi (Web Server Gateway Interface) compliant server, 
such as Twisted or Paste.

%package mod_python
Group:		Networking/WWW
Summary:	Trac Integrated SCM & Project manager - mod_python frontend
Group:		Networking/WWW
Requires:       %{name}
Requires:       apache-mod_python
Provides:       %{name}-frontend

%description mod_python
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package contains various files needed to integrate it
with apache and mod_python by default.

# TODO fast cgi


%package -n drakwizard-%{name}
Group:		System/Configuration/Other
Summary:	Trac Integrated SCM & Project manager - project creation wizard


%description -n drakwizard-%{name}
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package provides a wizard to create trac multiple project
repository using tracd.

You can access it with drakwizard or with Mandriva control center.


%package standalone
Group:		Networking/WWW
Summary:	Trac Integrated SCM & Project manager - standalone frontend
Requires:       %{name}
Provides:       %{name}-frontend
Requires(pre):  rpm-helper

%description standalone
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package contains various files needed to run as standalone
http server.


%package sqlite
Group:		Networking/WWW
Summary:	Trac Integrated SCM & Project manager - sqlite database support
Requires:       %{name}
Requires:       python-sqlite      
Provides:       %{name}-db_backend

%description sqlite
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package contains the needed modules to use sqlite as trac
database backend.


%package postgresql
Group:		Networking/WWW
Summary:	Trac Integrated SCM & Project manager - postgresql database support
Requires:       %{name}
Requires:       python-psycopg    
Provides:       %{name}-db_backend

%description postgresql
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package contains the needed modules to use postgresql as trac
database backend.


%package mysql
Group:		Networking/WWW
Summary:	Trac Integrated SCM & Project manager - mysql database support
Requires:       %{name}
Requires:       python-mysql  
Provides:       %{name}-db_backend

%description mysql
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package contains the needed modules to use mysql as trac
database backend.
Beware, the module is still experimental for the moment.

%package svn
Group:		Networking/WWW
Summary:	Trac Integrated SCM & Project manager - subversion support
Requires:       %{name}
Requires:       python-svn subversion     
Provides:       %{name}-vcs_backend 

%description svn
Trac is a minimalistic web-based software project management
and bug/issue tracking system. It provides an interface to
revision control systems (Subversion), an integrated 
Wiki and convenient report facilities. 

This package contains the needed modules to use subversion as trac
version control system backend.


%prep
%setup -q

%build
cat > README.upgrade.urpmi << EOF
Trac changed the format of the database since the last release.
See the file UPGRADE, in %_defaultdocdir/%{name}-%{version}/.

In order to ease the installation, and provides more modularity, 
trac package have been split in 2 frontends. You can choose 
%{name}-standalone for a version with tracd, or %{name}-cgi 
for the previous system. 

EOF

cat > %{name}.conf << EOF
Alias /trac/ "/usr/share/trac/htdocs/"

# fix mdk bug #16298
PassEnv LC_ALL
PassEnv LANG

# fix mdk bug #16298
<Directory "/usr/share/trac/htdocs">
        Allow from All
</Directory>

# Trac need to know where the database is located
#<Location "/cgi-bin/trac.cgi">
#        SetEnv TRAC_ENV "/somewhere/myproject.env/"
#</Location>

# You need this to allow users to authenticate
#<Location "/cgi-bin/trac.cgi/login">
#        AuthType Basic
#        AuthName "trac"
#        AuthUserFile /somewhere/trac.htpasswd
#        Require valid-user
#</location>
EOF

cat > %{name}_mod_python.conf << EOF
# fix mdk bug #16298
PassEnv LC_ALL
PassEnv LANG

# in order to have the project in /projects/myproject
# see http://projects.edgewall.com/trac/wiki/TracModPython
# for the complete doc

#<Location /projects/myproject>
#   SetHandler mod_python
#   PythonHandler trac.web.modpython_frontend 
#   PythonOption TracEnv /var/trac/myproject
#   PythonOption TracUriRoot /projects/myproject
#</Location>
#
#<Location "/projects/myproject/login">
#  AuthType Basic
#  AuthName "myproject"
#  AuthUserFile /var/trac/myproject/.htaccess
#  Require valid-user
#</Location>
EOF

cat > %{name}_fcgi.conf << EOF
# fix mdk bug #16298
PassEnv LC_ALL
PassEnv LANG

# see http://projects.edgewall.com/trac/wiki/TracFastCgi
# for the complete doc

#DefaultInitEnv TRAC_ENV "/var/trac/myproject/"

# You need this to allow users to authenticate
#<Location "/cgi-bin/trac.fcgi/login">
#        AuthType Basic
#        AuthName "trac"
#        AuthUserFile /somewhere/trac.htpasswd
#        Require valid-user
#</location>
EOF


cat > wizard.trac.conf << EOF
NAME="Trac"
DESCRIPTION="Trac wizard ( project management software )"
LONG_DESCRIPTION="A wizard to setup a bugtracking system"
EOF

cat > README.wizard << EOF
Since many people complain that wizards do not help to understand their
system, here is a quick summary of this wizard actions, and how to do the
same by hand :

1) subversion repository creation ( if it do not exist )
$ svnadmin create --fs-type fsfs \$DIRECTORY

fsfs was chosen over bdbd because it is more robust, according to trac
developers.

2) trac repository creation
$ trac-admin \$TRAC_REPOSITORY_PATH initenv \$PROJECT_NAME

3) integration with tracd
in order to use your new trac project, you need to add it to tracd config 
file, in /etc/sysconfig/tracd. All you need is to add it to PROJECT,
and reload tracd, with service tracd restart.

EOF
%install

rm -rf $RPM_BUILD_ROOT
python ./setup.py install --root=$RPM_BUILD_ROOT --prefix=%_prefix

#change default config
perl -pi -e "s#$RPM_BUILD_ROOT##" $RPM_BUILD_ROOT/%{_libdir}/python%{pyver}/site-packages/%{name}/siteconfig.py
rm -f $RPM_BUILD_ROOT/%{_libdir}/python%{pyver}/site-packages/%{name}/siteconfig.pyc

mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf/webapps.d
cp %{name}.conf  $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf/webapps.d/
cp %{name}_mod_python.conf $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf/webapps.d/
cp %{name}_fcgi.conf $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf/webapps.d/

mkdir -p $RPM_BUILD_ROOT/var/www/cgi-bin
mv $RPM_BUILD_ROOT/%{_datadir}/%name/cgi-bin/trac.*cgi $RPM_BUILD_ROOT/var/www/cgi-bin/

mkdir -p $RPM_BUILD_ROOT/%{_initrddir}
cat %{SOURCE1} >  $RPM_BUILD_ROOT/%{_initrddir}/%{name}d 
chmod 0755 $RPM_BUILD_ROOT/%{_initrddir}/%{name}d

mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/
cat %{SOURCE2} >  $RPM_BUILD_ROOT/%{_sysconfdir}/sysconfig/%{name}d

mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/wizard.d/
cp wizard.trac.conf $RPM_BUILD_ROOT/%{_sysconfdir}/wizard.d/%{name}.conf

mkdir -p $RPM_BUILD_ROOT/%{perl_vendorlib}/MDK/Wizard/
cat %{SOURCE3} >  $RPM_BUILD_ROOT/%{perl_vendorlib}/MDK/Wizard/Trac.pm

%clean
rm -rf $RPM_BUILD_ROOT

%post cgi
%{_initrddir}/httpd reload

%postun cgi
%{_initrddir}/httpd reload

%post fcgi
%{_initrddir}/httpd reload

%postun fcgi
%{_initrddir}/httpd reload


%post standalone
%_post_service tracd

%preun standalone
%_preun_service tracd

%files
%defattr(-,root,root)
%doc AUTHORS  ChangeLog README COPYING 
%doc INSTALL   RELEASE UPGRADE doc THANKS contrib
%doc README.upgrade.urpmi

%{_datadir}/%{name}
%{_bindir}/%{name}-admin
%_mandir/man1/*
%{py_puresitedir}/%{name}/
%if %{mdkversion} > 200700
%{py_puresitedir}/*.egg-info
%endif
%exclude %{py_puresitedir}/%{name}/web/modpython_frontend.py*
%exclude %{py_puresitedir}/%{name}/web/fcgi_frontend.py*
%exclude %{py_puresitedir}/%{name}/web/_fcgi.py*
 
%files standalone
%defattr(-,root,root)
%doc README.tracd
%config(noreplace) %{_initrddir}/%{name}d
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}d
%{_bindir}/%{name}d

%files cgi
%defattr(-,root,root)
/var/www/cgi-bin/%{name}.cgi
%config(noreplace) %{_sysconfdir}/httpd/conf/webapps.d/%{name}.conf


%files fcgi
%defattr(-,root,root)
/var/www/cgi-bin/%{name}.fcgi
%config(noreplace) %{_sysconfdir}/httpd/conf/webapps.d/%{name}_fcgi.conf
%{py_puresitedir}/%{name}/web/fcgi_frontend.py*
%{py_puresitedir}/%{name}/web/_fcgi.py*


%files mod_python
%defattr(-,root,root)
%config(noreplace) %{_sysconfdir}/httpd/conf/webapps.d/%{name}_mod_python.conf
%{py_puresitedir}/%{name}/web/modpython_frontend.py*


# empty subpackages, to pull deps.
# trac already does autodetection, and the default list of component
# will try to load the default backend, and trigger a error if it cannot
%files sqlite
%defattr(-,root,root)
%doc COPYING

%files postgresql
%defattr(-,root,root)
%doc COPYING

%files mysql
%defattr(-,root,root)
%doc COPYING

%files svn
%defattr(-,root,root)
%doc COPYING

%files wsgi
%defattr(-,root,root)
%doc COPYING

%files -n drakwizard-%{name}
%defattr(-,root,root)
%doc README.wizard
%{perl_vendorlib}/MDK/Wizard/*
%config(noreplace) %{_sysconfdir}/wizard.d/%{name}.conf


%changelog
* Thu Mar 08 2007 Michael Scherer <misc@mandriva.org> 0.10.3.1-1mdv2007.1
+ Revision: 138428
- upgrade to 0.10.3.1, security upgrade

* Wed Feb 14 2007 Michael Scherer <misc@mandriva.org> 0.10.3-3mdv2007.1
+ Revision: 120770
- fix backporting on 2007.0

* Mon Feb 12 2007 Michael Scherer <misc@mandriva.org> 0.10.3-2mdv2007.1
+ Revision: 120020
- fix trac-admin default templates, as reported by saispo on irc

* Mon Dec 18 2006 Michael Scherer <misc@mandriva.org> 0.10.3-1mdv2007.1
+ Revision: 98367
- use the proper release
- upgrade to version 0.10.3

* Tue Dec 12 2006 Michael Scherer <misc@mandriva.org> 0.10.2-2mdv2007.1
+ Revision: 95704
- Rebuild for python 2.5

* Mon Nov 13 2006 Michael Scherer <misc@mandriva.org> 0.10.2-1mdv2007.1
+ Revision: 83945
- 0.10.2 release ( bugfixes )

* Thu Nov 09 2006 Michael Scherer <misc@mandriva.org> 0.10.1-1mdv2007.0
+ Revision: 79194
- upgrade to 0.10.1

* Mon Oct 02 2006 Michael Scherer <misc@mandriva.org> 0.10-1mdv2007.1
+ Revision: 62825
- fix wizard for the new wizard interface and the new trac-admin
- revert changes in packaging, trac ido not work if some parts of it are missing
- fix for bug #23317, wizard interface have changed
- remove mime-types, leftover of previous bzipped patchs
- bunzip additional source files
- clean the comment, and some typo
- split wsgi from the main codebase, to not pull apache as a requires of a
  frontend, or use tracd ( activated by default, by policy ) for someone
  wanting to use wsgi.
- place svn in a separate package, in order to support other vcs in the future
- version 0.10, with splitted database backend
- Import trac



* Sat Jul 08 2006 Michael Scherer <misc@mandriva.org> 0.9.6-1mdv2007.0
- New release 0.9.6

* Tue Apr 18 2006 Michael Scherer <misc@mandriva.org> 0.9.5-1mdk
- New release 0.9.5

* Tue Mar 07 2006 Michael Scherer <misc@mandriva.org> 0.9.4-5mdk
- cgi_frontend.py is needed by standalone, so i place it back in main package

* Fri Mar 03 2006 Michael Scherer <misc@mandriva.org> 0.9.4-4mdk
- do not ship empty package as the upload script reject them

* Fri Mar 03 2006 Michael Scherer <misc@mandriva.org> 0.9.4-3mdk
- add fcgi sub package 

* Wed Mar 01 2006 Michael Scherer <misc@mandriva.org> 0.9.4-2mdk
- add mod_python, pgsql and sqlite subpackage

* Thu Feb 16 2006 Michael Scherer <misc@mandriva.org> 0.9.4-1mdk
- New release 0.9.4

* Wed Jan 11 2006 Michael Scherer <misc@mandriva.org> 0.9.3-2mdk
- use new python macro

* Mon Jan 09 2006 Michael Scherer <misc@mandriva.org> 0.9.3-1mdk
- New release 0.9.3

* Mon Dec 05 2005 Michael Scherer <misc@mandriva.org> 0.9.2-1mdk
- New release 0.9.2

* Fri Nov 04 2005 Michael Scherer <misc@mandriva.org> 0.9-3mdk
- fix initscript

* Thu Nov 03 2005 Michael Scherer <misc@mandriva.org> 0.9-2mdk
- whoops, forget to change license 

* Wed Nov 02 2005 Michael Scherer <misc@mandriva.org> 0.9-1mdk
- New release 0.9
- remove patch1, integrated upstream
- fix 19386 by supporting multiple $AUTH entries in /etc/sysconfig/trac

* Sat Oct 08 2005 Michael Scherer <misc@mandriva.org> 0.8.4-6mdk
- install subversion-tools instead of libfsfs_1_0 in the wizard, fix #19073

* Sat Sep 24 2005 Michael Scherer <misc@mandriva.org> 0.8.4-5mdk
- fix again ( python-svn => python-subversion )

* Sat Sep 24 2005 Michael Scherer <misc@mandriva.org> 0.8.4-4mdk
- fix deps with new subversion package

* Fri Sep 02 2005 Michael Scherer <misc@mandriva.org> 0.8.4-3mdk
- Fix #16298

* Sat Aug 13 2005 Michael Scherer <misc@mandriva.org> 0.8.4-2mdk
- fix location of the apache config file

* Mon Jun 20 2005 Michael Scherer <misc@mandriva.org> 0.8.4-1mdk
- New release 0.8.4

* Fri Jun 17 2005 Michael Scherer <misc@mandriva.org> 0.8.3-2mdk
- fix #16298

* Thu Jun 16 2005 Lenny Cartier <lenny@mandriva.com> 0.8.3-1mdk
- 0.8.3

* Fri Jun 03 2005 Michael Scherer <misc@mandriva.org> 0.8.2-1mdk
- New release 0.8.2

* Fri Mar 11 2005 Michael Scherer <misc@mandrake.org> 0.8.1-2mdk 
- add wizard
- add %%mkrel

* Fri Mar 04 2005 Lenny Cartier <lenny@mandrakesoft.com> 0.8.1-1mdk
- 0.8.1

* Sun Dec 05 2004 Michael Scherer <misc@mandrake.org> 0.8-2mdk
- Rebuild for new python

* Sun Nov 21 2004 Michael Scherer <misc@mandrake.org> 0.8-1mdk 
- New release 0.8
- split tracd and cgi support
- patch for tracd daemonisation

* Fri Jun  4 2004 Michael Scherer <misc@mandrake.org> 0.7.1-1mdk
- New release 0.7.1

* Wed May 19 2004 Michael Scherer <misc@mandrake.org> 0.7-1mdk
- New release 0.7
- update config files

* Wed Apr 14 2004 Michael Scherer <misc@mandrake.org> 0.6.1-2mdk 
- remove compiled config file, with wrong path inside

* Mon Apr 12 2004 Michael Scherer <misc@mandrake.org> 0.6.1-1mdk
- New release 0.6.1
- add support for rpmbuildupdate

* Fri Apr 02 2004 Michael Scherer <misc@mandrake.org> 0.6-1mdk
- First Mandrakesoft Package