|
Andrea Veri |
cb295c5 |
%if 0%{?rhel}
|
|
Andrea Veri |
cb295c5 |
%global apxs /usr/sbin/apxs
|
|
Andrea Veri |
cb295c5 |
%endif
|
|
Andrea Veri |
cb295c5 |
%if 0%{?fedora}
|
|
Andrea Veri |
cb295c5 |
%global apxs /usr/bin/apxs
|
|
Andrea Veri |
cb295c5 |
%endif
|
|
Andrea Veri |
cb295c5 |
%global mirrorbrain_user mirrorbrain
|
|
Andrea Veri |
cb295c5 |
%global mirrorbrain_group mirrorbrain
|
|
Andrea Veri |
cb295c5 |
%global apache apache
|
|
Andrea Veri |
cb295c5 |
%global apache_libexecdir %(%{apxs} -q LIBEXECDIR)
|
|
Andrea Veri |
cb295c5 |
%global apache_sysconfdir %(%{apxs} -q SYSCONFDIR)
|
|
Andrea Veri |
cb295c5 |
%global apache_includedir %(%{apxs} -q INCLUDEDIR)
|
|
Andrea Veri |
cb295c5 |
%global apache_serverroot %(%{apxs} -q PREFIX)
|
|
Andrea Veri |
cb295c5 |
%global apache_localstatedir %(%{apxs} -q LOCALSTATEDIR)
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
Name: mirrorbrain
|
|
Andrea Veri |
cb295c5 |
Summary: A download redirector and metalink generator
|
|
Andrea Veri |
cb295c5 |
Url: http://mirrorbrain.org/
|
|
Andrea Veri |
f052ed8 |
Version: 2.18.1
|
|
|
dc10a4b |
Release: 2%{?dist}
|
|
Andrea Veri |
cb295c5 |
# ASL licensed files are: mod_autoindex_mb.c, mod_mirrorbrain.c, null-rsync
|
|
Andrea Veri |
cb295c5 |
# Other files are licensed under the GPLv2
|
|
Andrea Veri |
cb295c5 |
License: ASL 2.0 and GPLv2
|
|
Andrea Veri |
cb295c5 |
Group: Applications/Internet
|
|
Andrea Veri |
cb295c5 |
Source: http://mirrorbrain.org/files/releases/mirrorbrain-%{version}.tar.gz
|
|
Andrea Veri |
cb295c5 |
# Mirrorbrain ships a modified version of the zsync library.
|
|
Andrea Veri |
cb295c5 |
Patch0: zsync_modified_version.patch
|
|
Andrea Veri |
cb295c5 |
Requires(pre): shadow-utils
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
BuildRequires: httpd-devel
|
|
Andrea Veri |
cb295c5 |
BuildRequires: geoip
|
|
Andrea Veri |
cb295c5 |
BuildRequires: geoip-devel
|
|
Andrea Veri |
cb295c5 |
BuildRequires: mod_form
|
|
Andrea Veri |
cb295c5 |
BuildRequires: python2-devel
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%description
|
|
Andrea Veri |
cb295c5 |
This apache module redirects clients to mirror servers, using an SQL backend,
|
|
Andrea Veri |
cb295c5 |
and generates metalinks.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%package doc
|
|
Andrea Veri |
cb295c5 |
License: ASL 2.0 and GPLv2
|
|
Andrea Veri |
cb295c5 |
Summary: MirrorBrain redirector Apache module
|
|
Andrea Veri |
cb295c5 |
Group: Applications/Internet
|
|
Andrea Veri |
cb295c5 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%description doc
|
|
Andrea Veri |
cb295c5 |
MirrorBrain is a scalable download redirector.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
This package contains the documentation.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%package -n mod_mirrorbrain
|
|
Andrea Veri |
cb295c5 |
License: ASL 2.0 and GPLv2
|
|
Andrea Veri |
cb295c5 |
Summary: MirrorBrain redirector Apache module
|
|
Andrea Veri |
cb295c5 |
Group: Applications/Internet
|
|
Andrea Veri |
cb295c5 |
Requires: httpd
|
|
Andrea Veri |
cb295c5 |
Requires: apr-util-pgsql
|
|
Andrea Veri |
cb295c5 |
Requires: geoip
|
|
Andrea Veri |
cb295c5 |
Requires: mod_geoip
|
|
Andrea Veri |
cb295c5 |
Requires: mod_form
|
|
Andrea Veri |
cb295c5 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%description -n mod_mirrorbrain
|
|
Andrea Veri |
cb295c5 |
MirrorBrain is a scalable download redirector.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
This package contains mod_mirrorbrain, the Apache module which represents the
|
|
Andrea Veri |
cb295c5 |
core of MirrorBrain.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%package -n mod_autoindex_mb
|
|
Andrea Veri |
cb295c5 |
License: ASL 2.0 and GPLv2
|
|
Andrea Veri |
cb295c5 |
Summary: Apache module generating directory indexes for MirrorBrain
|
|
Andrea Veri |
cb295c5 |
Group: Applications/Internet
|
|
Andrea Veri |
cb295c5 |
Requires: mod_mirrorbrain
|
|
Andrea Veri |
cb295c5 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%description -n mod_autoindex_mb
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
This package contains mod_autoindex_mb, the Apache module which represents the
|
|
Andrea Veri |
cb295c5 |
core of MirrorBrain.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
This package contains mod_autoindex_mb, which is a patched mod_autoindex. It
|
|
Andrea Veri |
cb295c5 |
adds a little further capability as index option.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
It adds these two options:
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
<IfModule mod_autoindex_mb.c>
|
|
Andrea Veri |
cb295c5 |
IndexOptions Metalink
|
|
Andrea Veri |
cb295c5 |
IndexOptions Mirrorlist
|
|
Andrea Veri |
cb295c5 |
</IfModule>
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
The Metalink option adds a link named "Metalink" to the index, which links to
|
|
Andrea Veri |
cb295c5 |
the same file but with ".metalink" appended.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
The MirrorList option adds a link named "Mirrors" to the index, which links to
|
|
Andrea Veri |
cb295c5 |
the same resources but with "?mirrorlist" appended.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%package tools
|
|
Andrea Veri |
cb295c5 |
License: ASL 2.0 and GPLv2
|
|
Andrea Veri |
cb295c5 |
Summary: MirrorBrain commandline tools
|
|
Andrea Veri |
cb295c5 |
Group: Applications/Internet
|
|
Andrea Veri |
cb295c5 |
Requires: python-mb
|
|
Andrea Veri |
cb295c5 |
Requires: python-cmdln
|
|
Andrea Veri |
cb295c5 |
Requires: python-sqlobject
|
|
Andrea Veri |
cb295c5 |
Requires: python-psycopg2
|
|
Andrea Veri |
cb295c5 |
Requires: geoip
|
|
Andrea Veri |
cb295c5 |
Requires: logrotate
|
|
Andrea Veri |
cb295c5 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%description tools
|
|
Andrea Veri |
cb295c5 |
MirrorBrain is a scalable download redirector.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
This package contains utilities provided by the MirrorBrain framework to
|
|
Andrea Veri |
cb295c5 |
maintain the database and scan mirrors.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%package -n python-mb
|
|
Andrea Veri |
cb295c5 |
License: ASL 2.0 and GPLv2
|
|
Andrea Veri |
cb295c5 |
Summary: Python module used by the MirrorBrain commandline tools
|
|
Andrea Veri |
cb295c5 |
Group: Applications/Internet
|
|
Andrea Veri |
cb295c5 |
Requires: python-sqlobject
|
|
Andrea Veri |
cb295c5 |
Requires: python-psycopg2
|
|
Andrea Veri |
cb295c5 |
Requires: geoip
|
|
Andrea Veri |
cb295c5 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%description -n python-mb
|
|
Andrea Veri |
cb295c5 |
MirrorBrain is a scalable download redirector.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
This package contains a Python module (named "mb") for easily maintaining
|
|
Andrea Veri |
cb295c5 |
MirrorBrain.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%package scanner
|
|
Andrea Veri |
cb295c5 |
License: ASL 2.0 and GPLv2
|
|
Andrea Veri |
cb295c5 |
Summary: MirrorBrain scanner
|
|
Andrea Veri |
cb295c5 |
Group: Applications/Internet
|
|
Andrea Veri |
cb295c5 |
Requires: perl(Config::IniFiles)
|
|
Andrea Veri |
cb295c5 |
Requires: perl(Digest::MD4)
|
|
Andrea Veri |
cb295c5 |
Requires: perl(DBD::Pg)
|
|
Andrea Veri |
cb295c5 |
Requires: perl-TimeDate
|
|
Andrea Veri |
cb295c5 |
Requires: perl-libwww-perl
|
|
Andrea Veri |
cb295c5 |
Requires: perl(:MODULE_COMPAT_%(eval "`perl -V:version`"; echo $version))
|
|
Andrea Veri |
cb295c5 |
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%description scanner
|
|
Andrea Veri |
cb295c5 |
MirrorBrain is a scalable download redirector.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
This package contains the mirror scanner.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%prep
|
|
Andrea Veri |
cb295c5 |
%setup -q -n mirrorbrain-%{version}
|
|
Andrea Veri |
cb295c5 |
%patch0 -p1
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%build
|
|
Andrea Veri |
cb295c5 |
cd mod_mirrorbrain
|
|
Andrea Veri |
cb295c5 |
%{apxs} -c -Wc,"%{optflags}" -lm mod_mirrorbrain.c
|
|
Andrea Veri |
cb295c5 |
cd ../mod_autoindex_mb
|
|
Andrea Veri |
cb295c5 |
%{apxs} -c -Wc,"%{optflags}" mod_autoindex_mb.c
|
|
Andrea Veri |
cb295c5 |
cd ../tools
|
|
Andrea Veri |
cb295c5 |
gcc %{optflags} -Wall -o geoiplookup_continent geoiplookup_continent.c -lGeoIP
|
|
Andrea Veri |
cb295c5 |
gcc %{optflags} -Wall -o geoiplookup_city geoiplookup_city.c -lGeoIP
|
|
Andrea Veri |
cb295c5 |
cd ../mb
|
|
Andrea Veri |
cb295c5 |
CFLAGS="%{optflags}" \
|
|
Andrea Veri |
cb295c5 |
%{__python2} setup.py build
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%install
|
|
Andrea Veri |
cb295c5 |
mkdir -p %{buildroot}/%{apache_libexecdir}
|
|
Andrea Veri |
cb295c5 |
cp -p mod_mirrorbrain/.libs/mod_mirrorbrain.so %{buildroot}/%{apache_libexecdir}
|
|
Andrea Veri |
cb295c5 |
cp -p mod_autoindex_mb/.libs/mod_autoindex_mb.so %{buildroot}/%{apache_libexecdir}
|
|
Andrea Veri |
cb295c5 |
# tools
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 tools/geoiplookup_continent %{buildroot}/%{_bindir}/geoiplookup_continent
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 tools/geoiplookup_city %{buildroot}/%{_bindir}/geoiplookup_city
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 tools/bdecode %{buildroot}/%{_bindir}/bdecode
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 tools/rsyncinfo %{buildroot}/%{_bindir}/rsyncinfo
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 tools/rsyncusers %{buildroot}/%{_bindir}/rsyncusers
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 tools/geoip-lite-update %{buildroot}/%{_bindir}/geoip-lite-update
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 tools/create_timestamp %{buildroot}/%{_bindir}/create_timestamp
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 tools/null-rsync %{buildroot}/%{_bindir}/null-rsync
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 tools/scanner.pl %{buildroot}/%{_bindir}/scanner
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 755 mirrorprobe/mirrorprobe.py %{buildroot}/%{_bindir}/mirrorprobe
|
|
Andrea Veri |
cb295c5 |
install -D -p -m 644 tools/mirrorprobe-logrotate %{buildroot}/%{_sysconfdir}/logrotate.d/mirrorprobe
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
# Python mb module
|
|
Andrea Veri |
cb295c5 |
cd mb
|
|
Andrea Veri |
cb295c5 |
%{__python2} setup.py install --prefix=%{_prefix} --root %{buildroot}
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
# Icons
|
|
Andrea Veri |
cb295c5 |
mkdir -p %{buildroot}/%{_datadir}/mirrorbrain
|
|
Andrea Veri |
cb295c5 |
cp -a famfamfam_flag_icons %{buildroot}/%{_datadir}/mirrorbrain/
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
# log directory
|
|
Andrea Veri |
cb295c5 |
mkdir -p %{buildroot}/%{_localstatedir}/log/mirrorbrain
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
# Fix permissions on the python-mb file
|
|
Andrea Veri |
cb295c5 |
chmod a+x %{buildroot}%{python2_sitearch}/mb/*
|
|
Andrea Veri |
cb295c5 |
chmod 644 %{buildroot}%{python2_sitearch}/mb/zsync.so
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%pre
|
|
Andrea Veri |
cb295c5 |
getent group %{mirrorbrain_group} >/dev/null || groupadd -r %{mirrorbrain_group}
|
|
Andrea Veri |
cb295c5 |
getent passwd %{mirrorbrain_user} >/dev/null || useradd -r -g %{mirrorbrain_group} -M -s /sbin/nologin %{mirrorbrain_user}
|
|
Andrea Veri |
cb295c5 |
exit 0
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%files
|
|
Andrea Veri |
cb295c5 |
%doc COPYING FAQ TODO
|
|
Andrea Veri |
cb295c5 |
%doc mod_autoindex_mb/NOTICE
|
|
Andrea Veri |
cb295c5 |
%doc mod_mirrorbrain/*.conf
|
|
Andrea Veri |
cb295c5 |
%dir %attr(750,%{mirrorbrain_user},%{mirrorbrain_group}) %{_localstatedir}/log/mirrorbrain
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%files doc
|
|
Andrea Veri |
cb295c5 |
%doc docs
|
|
Andrea Veri |
cb295c5 |
%doc sql
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%files -n mod_mirrorbrain
|
|
Andrea Veri |
cb295c5 |
%{apache_libexecdir}/mod_mirrorbrain.so
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%files -n mod_autoindex_mb
|
|
Andrea Veri |
cb295c5 |
%{apache_libexecdir}/mod_autoindex_mb.so
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%files tools
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/bdecode
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/create_timestamp
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/geoip-lite-update
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/geoiplookup_city
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/geoiplookup_continent
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/mirrorprobe
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/null-rsync
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/rsyncinfo
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/rsyncusers
|
|
Andrea Veri |
cb295c5 |
%config(noreplace) %{_sysconfdir}/logrotate.d/mirrorprobe
|
|
Andrea Veri |
cb295c5 |
%{_datadir}/mirrorbrain
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%files -n python-mb
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/mb
|
|
Andrea Veri |
cb295c5 |
%{python2_sitearch}/mb*
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%files scanner
|
|
Andrea Veri |
cb295c5 |
%{_bindir}/scanner
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
%changelog
|
|
|
dc10a4b |
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.18.1-2
|
|
|
dc10a4b |
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
|
|
|
dc10a4b |
|
|
Andrea Veri |
f052ed8 |
* Tue Feb 04 2014 Andrea Veri <averi@fedoraproject.org> 2.18.1-1
|
|
Andrea Veri |
f052ed8 |
- New upstream release.
|
|
Andrea Veri |
f052ed8 |
|
|
Andrea Veri |
cb295c5 |
* Thu Dec 05 2013 Andrea Veri <averi@fedoraproject.org> 2.17.0-3
|
|
Andrea Veri |
cb295c5 |
- Added a note about what files are licensed under the ASL 2.0.
|
|
Andrea Veri |
cb295c5 |
- Moved shadow-utils as a Require(pre)
|
|
Andrea Veri |
cb295c5 |
- Add a zsync_modified_version patch, we're shipping zsync.so on
|
|
Andrea Veri |
cb295c5 |
python_sitearch/mb given this specific zsync release just contains
|
|
Andrea Veri |
cb295c5 |
the code needed for the checksums to happen.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
* Thu Dec 05 2013 Andrea Veri <averi@fedoraproject.org> 2.17.0-2
|
|
Andrea Veri |
cb295c5 |
- Make use of optflags.
|
|
Andrea Veri |
cb295c5 |
- Don't mix $-style and %-style.
|
|
Andrea Veri |
cb295c5 |
- Make sure each package depends on the base package.
|
|
Andrea Veri |
cb295c5 |
- Put the docs that exceed 1M on their own package.
|
|
Andrea Veri |
cb295c5 |
- Fix permissions on the python-mb's files.
|
|
Andrea Veri |
cb295c5 |
|
|
Andrea Veri |
cb295c5 |
* Thu Nov 28 2013 Andrea Veri <averi@fedoraproject.org> 2.17.0-1
|
|
Andrea Veri |
cb295c5 |
- First package release.
|