Name: mod_tile Version: 0.6.1 Release: 2%{?dist} Summary: A program to efficiently render and serve map tiles for www.openstreetmap.org map using Apache and Mapnik. %define geo_user geo %define daemon_name renderd License: GPLv2 URL: https://github.com/openstreetmap/mod_tile Source0: %{name}-%{version}.tar.gz Source1: 10-tile.conf Source2: mod_tile.conf Source3: mod_tile_renderd.service Source4: mod_tile_tmp_d.conf BuildRequires: httpd-devel, apr BuildRequires: mapnik-devel BuildRequires: libcurl-devel BuildRequires: iniparser-devel BuildRequires: sqlite-devel %description The rendering is implemented in a multithreaded process called renderd which opens either a unix or tcp socket and listens for requests to render tiles. It uses Mapnik to render tiles using the rendering rules defined in the configuration file /etc/renderd.conf. Its configuration also allows to specify the number of rendering threads. The render daemon implements a queuing mechanism with multiple priority levels to provide an as up-to-date viewing experience given the available rendering resources. The highest priority is for on the fly rendering of tiles not yet in the tile cache, two priority levels for re-rendering out of date tiles on the fly and two background batch rendering queues. The on the fly rendering queues are limited to a short 32 metatile size to minimize latency. The size of the main background queue is determined at compile time, see: render_config.h %prep %setup -q -n %{name}-%{version} %build ./autogen.sh %configure \ --with-apxs \ --with-libmapnik \ --with-libcurl %{__make} %install %{__make} install DESTDIR=%{buildroot} %{__make} install-%{name} DESTDIR=%{buildroot} %{__install} -D %{S:1} %{buildroot}%{_sysconfdir}/httpd/conf.modules.d/10-tile.conf %{__install} -D %{S:2} %{buildroot}%{_sysconfdir}/httpd/conf.d/mod_tile.conf %{__install} -D %{S:3} %{buildroot}%{_systemd_util_dir}/system/%{daemon_name}.service %{__install} -D %{S:4} %{buildroot}%{_sysconfdir}/tmpfiles.d/%{daemon_name}.conf %{__install} -d %{S:4} %{buildroot}%{_rundir}%{daemon_name} %{__install} -d %{S:4} %{buildroot}/geodata/mod_tile %pre if [ $1 -eq 1 ]; then getent group %{geo_user} > /dev/null || groupadd -r %{geo_user} getent passwd %{geo_user} > /dev/null || \ useradd -r -d %{_localstatedir}/lib/nginx -g %{geo_user} \ -s /sbin/nologin -c "Nginx web server" %{geo_user} exit 0 fi %post if [ $1 -eq 1 ]; then /usr/bin/systemctl reload httpd.service >/dev/null 2>&1 || : %systemd_post %{daemon_name}.service fi %postun if [ $1 -eq 1 ]; then /usr/bin/systemctl reload httpd.service >/dev/null 2>&1 || : fi %preun if [ $1 -eq 0 ]; then %systemd_preun %{daemon_name}.service fi %clean [ "%{buildroot}" != "/" ] && [ -d "%{buildroot}" ] && rm -rf %{buildroot} [ "%{_builddir}" != "/" ] && [ -d "%{_builddir}" ] && rm -rf %{_builddir}/* %files %doc COPYING %config(noreplace) %{_sysconfdir}/%{daemon_name}.conf %config %{_sysconfdir}/httpd/conf.modules.d/10-tile.conf %config(noreplace) %{_sysconfdir}/httpd/conf.d/mod_tile.conf %config %{_sysconfdir}/tmpfiles.d/%{daemon_name}.conf %config(noreplace) %{buildroot}%{_sysconfdir}/tmpfiles.d/%{daemon_name}.conf %{_bindir}/render* %{_libdir}/httpd/modules/%{name}.so %{_mandir}/man1/* %attr(0755, %{geo_user}, %{geo_user}) %dir /geodata/mod_tile %attr(0775, %{geo_user}, %{geo_user}) %dir %{_rundir}%{daemon_name} %changelog * Thu Jan 6 2022 Daniel Steiner - Add systemd startup config. Add socket dir. Add tmpfiles.d config. - Create cache directory, which is not default. * Tue Jan 4 2022 Daniel Steiner - Update to latest (0.6.1). * Fri May 21 2020 Daniel Steiner - First build on Fedora 34. * Sat Oct 31 2020 Daniel Steiner - First build on Fedora 33. * Thu Jul 23 2020 Daniel Steiner - Patch for duplicated variables definition added, this compiles now on Fedora 32 and gcc 10. * Sat Nov 9 2019 Daniel Steiner - Fix for modules config path. * Fri Nov 8 2019 Daniel Steiner - First build on Fedora 31 httpd-2.4.41.