summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore8
-rw-r--r--cgit-0.9.1-highlightv3.patch13
-rw-r--r--cgit.spec299
-rw-r--r--cgitrc75
4 files changed, 395 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..fc9aa8c
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,8 @@
+clog
+package-*.xml
+*.tgz
+*.tar.gz
+*.tar.xz
+*.tar.xz.asc
+*.src.rpm
+*/*rpm
diff --git a/cgit-0.9.1-highlightv3.patch b/cgit-0.9.1-highlightv3.patch
new file mode 100644
index 0000000..df06a81
--- /dev/null
+++ b/cgit-0.9.1-highlightv3.patch
@@ -0,0 +1,13 @@
+diff -Nur cgit-0.9.1.orig/filters/syntax-highlighting.sh cgit-0.9.1/filters/syntax-highlighting.sh
+--- cgit-0.9.1.orig/filters/syntax-highlighting.sh 2012-11-14 17:28:59.000000000 -0700
++++ cgit-0.9.1/filters/syntax-highlighting.sh 2012-11-17 10:47:07.870778180 -0700
+@@ -53,7 +53,7 @@
+ # found (for example) on EPEL 6.
+ #
+ # This is for version 2
+-exec highlight --force -f -I -X -S "$EXTENSION" 2>/dev/null
++#exec highlight --force -f -I -X -S "$EXTENSION" 2>/dev/null
+
+ # This is for version 3
+-#exec highlight --force -f -I -O xhtml -S "$EXTENSION" 2>/dev/null
++exec highlight --force -f -I -O xhtml -S "$EXTENSION" 2>/dev/null
diff --git a/cgit.spec b/cgit.spec
new file mode 100644
index 0000000..9968486
--- /dev/null
+++ b/cgit.spec
@@ -0,0 +1,299 @@
+# Review bug: https://bugzilla.redhat.com/479723
+
+%global gitver 2.10.2
+%global cachedir %{_localstatedir}/cache/%{name}
+%global filterdir %{_libexecdir}/%{name}/filters
+%global scriptdir %{_localstatedir}/www/cgi-bin
+%global cgitdata %{_datadir}/%{name}
+
+%global syntax_highlight 1
+
+%if 0%{?rhel} && 0%{?rhel} <= 5
+# On el5, manual actions are needed to make syntax highlighting work
+%global syntax_highlight 0
+%endif
+
+# Temporarily -- in epel-7-ppc64 is not highlight package currently, #1117261
+%if 0%{?rhel} == 7
+%ifarch ppc64
+%global syntax_highlight 0
+%endif
+%endif
+
+%global make_cgit \
+export CFLAGS="%{optflags}" \
+export LDFLAGS="%{?__global_ldflags}" \
+make V=1 %{?_smp_mflags} \\\
+ DESTDIR=%{buildroot} \\\
+ INSTALL="install -p" \\\
+ CACHE_ROOT=%{cachedir} \\\
+ CGIT_SCRIPT_PATH=%{scriptdir} \\\
+ CGIT_SCRIPT_NAME=cgit \\\
+ CGIT_DATA_PATH=%{cgitdata} \\\
+ docdir=%{docdir} \\\
+ filterdir=%{filterdir} \\\
+ prefix=%{_prefix}
+
+Name: cgit
+Version: 1.1
+Release: 3%{?dist}
+Summary: A fast web interface for git
+
+Group: Development/Tools
+License: GPLv2
+URL: http://git.zx2c4.com/cgit/
+Source0: http://git.zx2c4.com/cgit/snapshot/%{name}-%{version}.tar.xz
+Source1: http://www.kernel.org/pub/software/scm/git//git-%{gitver}.tar.xz
+Source2: cgitrc
+Source3: README.SELinux
+
+# Security guys might try to repoquery for this.
+Provides: bundled(git) = %gitver
+
+%if %{syntax_highlight}
+# On all but RHEL5 highlight is version 3.
+Patch1: cgit-0.9.1-highlightv3.patch
+BuildRequires: highlight
+%endif
+BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
+
+BuildRequires: asciidoc
+%if 0%{?rhel} && 0%{?rhel} <= 5
+# These are missing asciidoc requirements
+BuildRequires: docbook-style-xsl libxslt
+%endif
+%if 0%{?fedora} || 0%{?rhel} >= 6
+BuildRequires: libcurl-devel
+%else
+BuildRequires: curl-devel
+%endif
+BuildRequires: openssl-devel
+BuildRequires: lua-devel
+
+%if 0%{?fedora}
+# just to be able to install httpd configuration correctly, FC21+
+Requires: httpd-filesystem
+Requires: webserver
+%else
+Requires: httpd
+%endif
+
+
+%description
+Cgit is a fast web interface for git. It uses caching to increase performance.
+
+%prep
+%setup -q -a 1
+%if %{syntax_highlight}
+%patch1 -p1
+%endif
+
+# setup the git dir
+rm -rf git
+mv git-%{gitver} git
+sed -i 's|^\(CFLAGS = \).*|\1%{optflags}|' git/Makefile
+
+# I tried to use matchpathcon, but we would need to require
+# selinux-policy-targeted probably.
+
+build_dist=%{?fedora:fedora}%{?rhel:rhel}
+build_ver=%{?fedora}%{?rhel}
+
+cgit_context=git_sys_content_t
+case "$build_dist-$build_ver" in
+ rhel-5)
+ cgit_context=httpd_sys_content_t
+ ;;
+esac
+
+sed -e "s|@CGIT_CONTEXT@|$cgit_context|g" \
+ %{SOURCE3} > README.SELinux
+
+cat > httpd.conf <<EOF
+Alias /cgit-data /usr/share/cgit
+ScriptAlias /cgit /var/www/cgi-bin/cgit
+%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7
+<Directory "/usr/share/cgit">
+ Require all granted
+</Directory>
+%endif
+EOF
+
+
+%build
+%{make_cgit}
+
+# Something in the a2x chain doesn't like running in parallel. :/
+%{make_cgit} -j1 doc-man doc-html
+
+%if %{syntax_highlight}
+# el5 highlight doesn't know --print-style
+highlight --print-style --style-outfile=stdout >> cgit.css
+%endif
+
+
+%install
+rm -rf %{buildroot}
+%{make_cgit} install install-man
+install -d -m0755 %{buildroot}%{_sysconfdir}/httpd/conf.d
+install -p -m0644 %{SOURCE2} %{buildroot}%{_sysconfdir}/cgitrc
+install -p -m0644 httpd.conf %{buildroot}%{_sysconfdir}/httpd/conf.d/cgit.conf
+install -d -m0755 %{buildroot}%{cachedir}
+
+
+%clean
+rm -rf %{buildroot}
+
+
+%files
+%defattr(-,root,root,-)
+%doc COPYING README* *.html
+%config(noreplace) %{_sysconfdir}/cgitrc
+%config(noreplace) %{_sysconfdir}/httpd/conf.d/cgit.conf
+%dir %attr(-,apache,root) %{cachedir}
+%{cgitdata}
+%{filterdir}
+%{scriptdir}/*
+%{_mandir}/man*/*
+
+
+%changelog
+* Tue Mar 07 2017 Pavel Raiskup <praiskup@redhat.com> - 1.1-3
+- suggest using correct selinux context (rhbz#1429790)
+
+* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Wed Nov 23 2016 Kevin Fenzi <kevin@scrye.com> - 1.1-1
+- Update to 1.1. Fixes bug #1397820
+
+* Mon Sep 19 2016 Pavel Raiskup <praiskup@redhat.com> - 1.0-2
+- ensure we inform about git bundling appropriately
+
+* Tue Jun 07 2016 Kevin Fenzi <kevin@scrye.com> - 1.0-1
+- Update to 1.0
+
+* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.12-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
+* Sat Jan 16 2016 Kevin Fenzi <kevin@scrye.com> - 0.12-1
+- Update to 0.12. Fixes bug #1298912
+- Fixes CVE-2016-1899 CVE-2016-1900 CVE-2016-1901
+
+* Sat Sep 05 2015 Kevin Fenzi <kevin@scrye.com> 0.11.2-3
+- Fix up logic around webserver and httpd.
+- On Fedora require webserver and httpd-filesystem
+- On EPEL require httpd.
+
+* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.11.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
+* Sat Mar 14 2015 Kevin Fenzi <kevin@scrye.com> 0.11.2-1
+- Update to 0.11.2
+
+* Tue Mar 10 2015 Kevin Fenzi <kevin@scrye.com> 0.11.1-1
+- Update to 0.11.1
+
+* Mon Feb 16 2015 Kevin Fenzi <kevin@scrye.com> 0.11.0-1
+- Update to 0.11.0
+
+* Mon Feb 09 2015 Pavel Raiskup <praiskup@redhat.com> - 0.10.2-5
+- require "any" 'webserver' instead of concrete 'httpd' (#1138599)
+
+* Fri Aug 15 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10.2-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Tue Jul 08 2014 Pavel Raiskup <praiskup@redhat.com> - 0.10.2-3
+- currently epel-7-ppc64 does not have highlight package (#1117261)
+
+* Tue Jul 08 2014 Pavel Raiskup <praiskup@redhat.com> - 0.10.2-2
+- install README.SELinux documentation again (#1036123)
+- generate cgit.conf for httpd >= 2.4 when needed
+
+* Tue Jul 01 2014 Kevin Fenzi <kevin@scrye.com> 0.10.2-1
+- Update to 0.10.2. Fixes bug #1114970
+
+* Wed Jun 11 2014 Kevin Fenzi <kevin@scrye.com> 0.10.1-4
+- Add patch to fix raw patch handling
+
+* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.10.1-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Thu Mar 20 2014 Ville Skyttä <ville.skytta@iki.fi> - 0.10.1-2
+- Include highlight styles in cgit.css
+
+* Thu Feb 27 2014 Kevin Fenzi <kevin@scrye.com> 0.10.1-1
+- Update to 0.10.1
+- Correctly enable lua filters.
+
+* Wed Feb 19 2014 Kevin Fenzi <kevin@scrye.com> 0.10-1
+- Update to 0.10
+
+* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
+
+* Mon May 27 2013 Todd Zullinger <tmz@pobox.com> - 0.9.2-1
+- Update to 0.9.2, fixes CVE-2013-2117
+
+* Wed Feb 13 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.1-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
+
+* Wed Nov 21 2012 Kevin Fenzi <kevin@scrye.com> 0.9.1-3
+- Fixed ldflags. Fixes bug 878611
+
+* Sat Nov 17 2012 Kevin Fenzi <kevin@scrye.com> 0.9.1-2
+- Add patch to use correct version of highlight for all branches except epel5
+
+* Thu Nov 15 2012 Kevin Fenzi <kevin@scrye.com> 0.9.1-1
+- Update to 0.9.1
+- Fixes bug #870714 - CVE-2012-4548
+- Fixes bug #820733 - CVE-2012-4465
+
+* Wed Jul 18 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.0.2-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Thu Jan 12 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.9.0.2-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
+
+* Fri Jul 22 2011 Todd Zullinger <tmz@pobox.com> - 0.9.0.2-2
+- Fix potential XSS vulnerability in rename hint
+
+* Thu Jul 21 2011 Todd Zullinger <tmz@pobox.com> - 0.9.0.2-1
+- Update to 0.9.0.2
+
+* Sun Mar 06 2011 Todd Zullinger <tmz@pobox.com> - 0.9-1
+- Update to 0.9
+- Fixes: CVE-2011-1027
+ http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-1027
+- Generate and install man page and html docs
+- Use libcurl-devel on RHEL >= 6
+- Include example filter scripts
+- Update example cgitrc
+
+* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.2.1-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Mon Sep 27 2010 Todd Zullinger <tmz@pobox.com> - 0.8.2.1-4
+- Appy upstream git patch for CVE-2010-2542 (#618108)
+
+* Fri Aug 21 2009 Tomas Mraz <tmraz@redhat.com> - 0.8.2.1-3
+- rebuilt with new openssl
+
+* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.2.1-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
+
+* Sun Mar 15 2009 Todd Zullinger <tmz@pobox.com> - 0.8.2.1-1
+- Update to 0.8.2.1
+
+* Mon Feb 23 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.8.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
+
+* Sun Feb 01 2009 Todd Zullinger <tmz@pobox.com> - 0.8.2-1
+- Update to 0.8.2
+- Drop upstreamed Makefile patch
+
+* Sun Jan 18 2009 Todd Zullinger <tmz@pobox.com> - 0.8.1-2
+- Rebuild with new openssl
+
+* Mon Jan 12 2009 Todd Zullinger <tmz@pobox.com> - 0.8.1-1
+- Initial package
diff --git a/cgitrc b/cgitrc
new file mode 100644
index 0000000..23b6b86
--- /dev/null
+++ b/cgitrc
@@ -0,0 +1,75 @@
+#
+# See cgitrc(5) or /usr/share/doc/cgit-*/cgitrc.5.html for details
+#
+
+# Enable caching of up to 1000 output entries
+cache-size=1000
+
+# Specify some default clone prefixes
+#clone-prefix=git://example.com ssh://example.com/pub/git http://example.com/git
+
+# Specify the css url
+css=/cgit-data/cgit.css
+
+# Show extra links for each repository on the index page
+enable-index-links=1
+
+# Enable ASCII art commit history graph on the log pages
+enable-commit-graph=1
+
+# Show number of affected files per commit on the log pages
+enable-log-filecount=1
+
+# Show number of added/removed lines per commit on the log pages
+enable-log-linecount=1
+
+# Add a cgit favicon
+#favicon=/favicon.ico
+
+# Use a custom logo
+logo=/cgit-data/cgit.png
+
+# Enable statistics per week, month and quarter
+max-stats=quarter
+
+# Set the title and heading of the repository index page
+#root-title=example.com git repositories
+
+# Set a subheading for the repository index page
+#root-desc=tracking the foobar development
+
+# Include some more info about this site on the index page
+#root-readme=/var/www/html/about.html
+
+# Allow download of tar.gz, tar.bz2 and zip-files
+#snapshots=tar.gz tar.bz2 zip
+
+##
+## List of common mimetypes
+##
+
+mimetype.gif=image/gif
+mimetype.html=text/html
+mimetype.jpg=image/jpeg
+mimetype.jpeg=image/jpeg
+mimetype.pdf=application/pdf
+mimetype.png=image/png
+mimetype.svg=image/svg+xml
+
+# Enable syntax highlighting (requires the highlight package)
+#source-filter=/usr/libexec/cgit/filters/syntax-highlighting.sh
+
+##
+## List of repositories.
+## PS: Any repositories listed when section is unset will not be
+## displayed under a section heading
+## PPS: This list could be kept in a different file (e.g. '/etc/cgitrepos')
+## and included like this:
+## include=/etc/cgitrepos
+##
+
+#repo.url=foo
+#repo.path=/var/lib/git/foo.git
+#repo.desc=the master foo repository
+#repo.owner=fooman@example.com
+#repo.readme=info/web/about.html