Merge branch 'master' of ssh://dev.dsteiner.ch:/srv/gitea/public/rpms

This commit is contained in:
Daniel Steiner
2020-12-09 11:45:24 +01:00
42 changed files with 3062 additions and 175 deletions

67
centos/SPECS/cjose.spec Normal file
View File

@@ -0,0 +1,67 @@
Name: cjose
Version: 0.6.1
Release: 3%{?dist}
Summary: C library implementing the Javascript Object Signing and Encryption (JOSE)
License: MIT
URL: https://github.com/cisco/cjose
Source0: https://github.com/cisco/%{name}/archive/%{version}/%{name}-%{version}.tar.gz
Patch1: concatkdf.patch
BuildRequires: gcc
BuildRequires: doxygen
BuildRequires: openssl-devel
BuildRequires: jansson-devel
BuildRequires: check-devel
%description
Implementation of JOSE for C/C++
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%prep
%autosetup -n %{name}-%{version} -p1
%build
%configure
%make_build
%install
%make_install
find %{buildroot} -name '*.a' -exec rm -f {} ';'
find %{buildroot} -name '*.la' -exec rm -f {} ';'
%ldconfig_scriptlets
%check
make check || (cat test/test-suite.log; exit 1)
%files
%license LICENSE
%doc CHANGELOG.md README.md
%doc /usr/share/doc/cjose
%{_libdir}/*.so.*
%files devel
%{_includedir}/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/cjose.pc
%changelog
* Sat Sep 5 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First initial build.

View File

@@ -82,6 +82,6 @@ EOF
%changelog
* Sun Sep 29 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Sep 29 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build for CentOS 8.

View File

@@ -82,46 +82,46 @@ getent passwd gitea > /dev/null || \
%changelog
* Fri Dec 6 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Dec 6 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.10.1.
* Fri Nov 22 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Nov 22 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.10.0.
* Fri Oct 18 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Oct 18 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.9.4.
* Sat Sep 21 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sat Sep 21 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.9.3.
* Fri Aug 16 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Aug 16 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.9.1.
* Fri Aug 2 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Aug 2 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.9.0.
* Mon Jun 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Mon Jun 3 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.8.2.
* Sat May 11 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sat May 11 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.8.1.
* Sun Apr 28 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Apr 28 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.8.0.
* Sun Apr 7 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Apr 7 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.7.5.
* Fri Mar 15 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Mar 15 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.7.4.
* Wed Feb 27 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Wed Feb 27 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.7.3.
* Sat Feb 16 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sat Feb 16 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.7.2.
* Wed Jan 30 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Wed Jan 30 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to version 1.7.0.
* Fri Jan 18 2019 Daniel Steiner <daniel.steiner@greenmail.ch>

View File

@@ -0,0 +1,111 @@
%{!?_httpd_mmn: %{expand: %%global _httpd_mmn %%(cat %{_includedir}/httpd/.mmn || echo 0-0)}}
%{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}}
%{!?_httpd_confdir: %{expand: %%global _httpd_confdir %{_sysconfdir}/httpd/conf.d}}
# Optionally build with hiredis if --with hiredis is passed
%{!?_with_hiredis: %{!?_without_hiredis: %global _without_hiredis --without-hiredis}}
# It is an error if both or neither required options exist.
%{?_with_hiredis: %{?_without_hiredis: %{error: both _with_hiredis and _without_hiredis}}}
%{!?_with_hiredis: %{!?_without_hiredis: %{error: neither _with_hiredis nor _without_hiredis}}}
# /etc/httpd/conf.d with httpd < 2.4 and defined as /etc/httpd/conf.modules.d with httpd >= 2.4
%{!?_httpd_modconfdir: %{expand: %%global _httpd_modconfdir %%{_sysconfdir}/httpd/conf.d}}
%global httpd_pkg_cache_dir /var/cache/httpd/mod_auth_openidc
Name: mod_auth_openidc
Version: 2.4.5
Release: 1%{?dist}
Summary: OpenID Connect auth module for Apache HTTP Server
License: ASL 2.0
URL: https://github.com/zmartzone/mod_auth_openidc
Source0: https://github.com/zmartzone/mod_auth_openidc/releases/download/v%{version}/mod_auth_openidc-%{version}.tar.gz
BuildRequires: gcc
BuildRequires: httpd-devel
BuildRequires: openssl-devel
BuildRequires: curl-devel
BuildRequires: jansson-devel
BuildRequires: pcre-devel
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: cjose-devel
#BuildRequires: jq-devel
BuildRequires: jq
%{?_with_hiredis:BuildRequires: hiredis-devel}
Requires: httpd-mmn = %{_httpd_mmn}
%description
This module enables an Apache 2.x web server to operate as
an OpenID Connect Relying Party and/or OAuth 2.0 Resource Server.
%prep
%setup -q
%build
# workaround rpm-buildroot-usage
export MODULES_DIR=%{_httpd_moddir}
export APXS2_OPTS='-S LIBEXECDIR=${MODULES_DIR}'
autoreconf
%configure \
--with-jq=/usr/lib64/ \
%{?_with_hiredis} \
%{?_without_hiredis}
make %{?_smp_mflags}
%check
export MODULES_DIR=%{_httpd_moddir}
export APXS2_OPTS='-S LIBEXECDIR=${MODULES_DIR}'
make test
%install
mkdir -p $RPM_BUILD_ROOT%{_httpd_moddir}
make install MODULES_DIR=$RPM_BUILD_ROOT%{_httpd_moddir}
install -m 755 -d $RPM_BUILD_ROOT%{_httpd_modconfdir}
echo 'LoadModule auth_openidc_module modules/mod_auth_openidc.so' > \
$RPM_BUILD_ROOT%{_httpd_modconfdir}/10-auth_openidc.conf
install -m 755 -d $RPM_BUILD_ROOT%{_httpd_confdir}
install -m 644 auth_openidc.conf $RPM_BUILD_ROOT%{_httpd_confdir}
# Adjust httpd cache location in install config file
sed -i 's!/var/cache/apache2/!/var/cache/httpd/!' $RPM_BUILD_ROOT%{_httpd_confdir}/auth_openidc.conf
install -m 700 -d $RPM_BUILD_ROOT%{httpd_pkg_cache_dir}
install -m 700 -d $RPM_BUILD_ROOT%{httpd_pkg_cache_dir}/metadata
install -m 700 -d $RPM_BUILD_ROOT%{httpd_pkg_cache_dir}/cache
%files
%if 0%{?rhel} && 0%{?rhel} < 7
%doc LICENSE.txt
%else
%license LICENSE.txt
%endif
%doc ChangeLog
%doc AUTHORS
%doc README.md
%{_httpd_moddir}/mod_auth_openidc.so
%config(noreplace) %{_httpd_modconfdir}/10-auth_openidc.conf
%config(noreplace) %{_httpd_confdir}/auth_openidc.conf
%dir %attr(0700, apache, apache) %{httpd_pkg_cache_dir}
%dir %attr(0700, apache, apache) %{httpd_pkg_cache_dir}/metadata
%dir %attr(0700, apache, apache) %{httpd_pkg_cache_dir}/cache
%changelog
* Sun Nov 29 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to 2.4.5.
* Sat Sep 5 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to 2.4.4.1.
* Mon Jul 6 2020 Daniel Steiner <daniel.steiner@threema.ch>
- Update to 2.4.3.
* Thu Feb 13 2020 Daniel Steiner <daniel.steiner@threema.ch>
- Update to 2.4.1.
* Thu Dec 19 2019 Daniel Steiner <daniel.steiner@threema.ch>
- First initial build.

View File

@@ -0,0 +1,74 @@
Name: mod_tile
Version: 0.5
Release: 2%{?dist}
Summary: A program to efficiently render and serve map tiles for www.openstreetmap.org map using Apache and Mapnik.
License: GPLv2
URL: https://github.com/openstreetmap/mod_tile
Source0: %{name}-%{version}.tgz
Source1: 10-tile.conf
BuildRequires: httpd-devel, apr
BuildRequires: mapnik-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
%configure \
--with-apxs \
--with-libmapnik
%{__make}
%install
%{__make} install DESTDIR=%{buildroot}
%{__make} install-%{name} DESTDIR=%{buildroot}
%{__install} -D %{S:1} %{buildroot}%{_sysconfdir}/httpd/conf.modules.d/10-tile.conf
%post
if [ $1 -eq 1 ]; then
/usr/bin/systemctl reload httpd.service >/dev/null 2>&1 || :
fi
%postun
if [ $1 -eq 1 ]; then
/usr/bin/systemctl reload httpd.service >/dev/null 2>&1 || :
fi
%clean
[ "%{buildroot}" != "/" ] && [ -d "%{buildroot}" ] && rm -rf %{buildroot}
[ "%{_builddir}" != "/" ] && [ -d "%{_builddir}" ] && rm -rf %{_builddir}/*
%files
%doc COPYING mod_tile.conf
%config(noreplace) %{_sysconfdir}/renderd.conf
%config %{_sysconfdir}/httpd/conf.modules.d/10-tile.conf
%{_bindir}/render*
%{_libdir}/httpd/modules/%{name}.so
%{_libdir}/libiniparser*
%{_mandir}/man1/*
%{_mandir}/man8/*
%changelog
* Sat Jul 11 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build on CentOS 8.

View File

@@ -4,7 +4,7 @@ Release: 3%{?dist}
Summary: A beautiful and useful prompt generator for Bash, ZSH, Fish, and tcsh
License: MIT
URL: https://dev.daniel-steiner.org/dani/powerline-shell-enhanced#segment-configuration
URL: https://dev.dsteiner.ch/dani/powerline-shell-enhanced#segment-configuration
Source0: powerline_shell.tar.gz
%define debug_package %{nil}
@@ -72,12 +72,12 @@ popd
%changelog
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Dependency added for python-setuptools rpm.
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Dependency added for pythonX-argparse rpm.
* Sat Feb 2 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sat Feb 2 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build.

View File

@@ -54,6 +54,6 @@ PYTHONPATH=../ %{__python} test_%{oname}.py
%{python_sitelib}/*
%changelog
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build, it's required by powerline_shell package.

View File

@@ -55,6 +55,6 @@ rm -rf %{buildroot}%{python3_sitelib}/__pycache__
%{python3_sitelib}/*
%changelog
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build, it's required by powerline_shell package.

View File

@@ -0,0 +1,39 @@
Name: sockstat
Version: 0.4.1
Release: 1%{?dist}
Summary: View detailed information about open connections
License: BSD-3
URL: https://github.com/alteholz/sockstat/
Source0: %{name}-%{version}.tar.gz
# disable debug:
%global debug_package %{nil}
%description
View detailed information about open connections
%prep
%setup -q
%build
make %{?_smp_mflags}
%install
%{__install} -D %{name} %{buildroot}%{_bindir}/%{name}
%{__install} -D %{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1
%files
%doc LICENSE
%{_bindir}/%{name}
%{_mandir}/man1/%{name}.1.gz
%changelog
* Thu Apr 9 2020 Daniel Steiner <daniel.steiner@dsteiner.org>
- Initial version for CentOS 8 (0.4.1).

View File

@@ -69,9 +69,9 @@ fi
%config(noreplace) %{_sysconfdir}/tmux.conf
%changelog
* Sun Sep 29 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Sep 29 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Default tmux config added.
* Fri Aug 16 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Aug 16 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Initial to version 3.0 for CentOS.

View File

@@ -114,9 +114,9 @@ make install DESTDIR=%{buildroot}
[ "%{_builddir}" != "/" ] && [ -d "%{_builddir}" ] && rm -rf %{_builddir}/*
%changelog
* Thu Mar 7 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Thu Mar 7 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- lmdb disabled
* Tue Jan 22 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Tue Jan 22 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- New 3.x build for Fedora 29.

View File

@@ -114,6 +114,6 @@ rm -rf %{buildroot}
%endif
%changelog
* Thu Jan 22 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Thu Jan 22 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- New 3.x build for Fedora 29.

View File

@@ -63,6 +63,6 @@ sed -i -e "s|/sbin/lvcreate|/usr/sbin/lvcreate|g" \
%dir %attr(0770, qemu, qemu) %{_localstatedir}/lib/libvirt/backup
%changelog
* Sun Apr 14 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Apr 14 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Initial build.

67
fedora/SPECS/cjose.spec Normal file
View File

@@ -0,0 +1,67 @@
Name: cjose
Version: 0.6.1
Release: 3%{?dist}
Summary: C library implementing the Javascript Object Signing and Encryption (JOSE)
License: MIT
URL: https://github.com/cisco/cjose
Source0: https://github.com/cisco/%{name}/archive/%{version}/%{name}-%{version}.tar.gz
Patch1: concatkdf.patch
BuildRequires: gcc
BuildRequires: doxygen
BuildRequires: openssl-devel
BuildRequires: jansson-devel
BuildRequires: check-devel
%description
Implementation of JOSE for C/C++
%package devel
Summary: Development files for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%prep
%autosetup -n %{name}-%{version} -p1
%build
%configure
%make_build
%install
%make_install
find %{buildroot} -name '*.a' -exec rm -f {} ';'
find %{buildroot} -name '*.la' -exec rm -f {} ';'
%ldconfig_scriptlets
%check
make check || (cat test/test-suite.log; exit 1)
%files
%license LICENSE
%doc CHANGELOG.md README.md
%doc /usr/share/doc/cjose
%{_libdir}/*.so.*
%files devel
%{_includedir}/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/cjose.pc
%changelog
* Sat Sep 5 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First initial build.

View File

@@ -0,0 +1,78 @@
%define myname danweb2
%global selinuxtype targeted
%global moduletype services
%global modulenames %{myname}
# Relabel files
%global relabel_files() \ # ADD files in *.fc file
# Version of distribution SELinux policy package
# rpm -q selinux-policy
%global selinux_policyver 3.14.0
# Package information
Name: %{myname}-selinux
Version: 1.0
Release: 1%{?dist}
License: GPLv2
Group: System Environment/Base
Summary: SELinux Policies for %{myname}
BuildArch: noarch
URL: https://www.dsteiner.ch
Requires(post): selinux-policy-base >= %{selinux_policyver},
Requires(post): selinux-policy-targeted >= %{selinux_policyver}
Requires(post): policycoreutils
Requires(post): policycoreutils-python-utils
Requires(post): libselinux-utils
BuildRequires: selinux-policy selinux-policy-devel
Source: selinux-%{myname}.tar
%description
SELinux policy modules for use on %{myname}
%prep
%setup -q -n selinux
%build
# link Makefile to source dir:
ln -s /usr/share/selinux/devel/Makefile
make
%install
# Install SELinux interfaces
export INTERFACES="$(ls *.if)"
install -d %{buildroot}%{_datadir}/selinux/devel/include/%{moduletype}
install -p -m 644 $INTERFACES \
%{buildroot}%{_datadir}/selinux/devel/include/%{moduletype}
# Install policy modules
export MODULES="$(ls *.pp)"
install -d %{buildroot}%{_datadir}/selinux/packages
install -m 0644 $MODULES \
%{buildroot}%{_datadir}/selinux/packages
%post
#
# Install all modules in a single transaction
#
export MODULES="$(ls %{_datadir}/selinux/packages/*.pp)"
%selinux_modules_install -s %{selinuxtype} $MODULES
%postun
export MODULES="$(rpm -ql %{name} | grep '.pp$')"
if [ $1 -eq 0 ]; then
%selinux_modules_uninstall -s %{selinuxtype} $MODULES
fi
%files
%defattr(-,root,root,0755)
%attr(0644,root,root) %{_datadir}/selinux/packages/*.pp
%attr(0644,root,root) %{_datadir}/selinux/devel/include/%{moduletype}/*.if
%changelog
* Sat Sep 12 2020 <daniel.steiner@dsteiner.ch>
- Additional selinux modules for danweb2 server

View File

@@ -4,7 +4,7 @@
%define gitv 58fd8a6
%define webd %{_var}/www
%define gopath $(pwd)/go
%define domain echoip.daniel-steiner.org
%define domain echoip.dsteiner.ch
%define protocol https
%define port 443
@@ -30,7 +30,7 @@ Requires: geoipupdate-cron
Requires: GeoIP
%description
A simple service for looking up your IP address. This is the code that powers https://echoip.daniel-steiner.org.
A simple service for looking up your IP address. This is the code that powers https://echoip.dsteiner.ch.
%prep
%setup -q -n %{name}-%{version}.%{gitv}

View File

@@ -0,0 +1,231 @@
Summary: Digital VCR and streaming server
Name: ffmpeg-nvidia
Version: 4.2.2
Release: 3%{?dist}
License: GPLv2+
URL: http://ffmpeg.org/
Source0: http://ffmpeg.org/releases/ffmpeg-%{version}.tar.xz
%define ffname ffmpeg
%define debug_package %{nil}
%define _with_libnpp 1
%if 0%{?_with_libnpp}
BuildRequires: cuda
BuildRequires: cuda-devel
%endif
BuildRequires: fdk-aac-devel
BuildRequires: gsm-devel
BuildRequires: jack-audio-connection-kit-devel
BuildRequires: libaom-devel
BuildRequires: libdav1d-devel
BuildRequires: librsvg2-devel
BuildRequires: libtheora-devel
BuildRequires: libv4l-devel
BuildRequires: libvmaf-devel
BuildRequires: libvpx-devel
BuildRequires: ocl-icd-devel
BuildRequires: openal-soft-devel
BuildRequires: opencl-headers
BuildRequires: opencore-amr-devel
BuildRequires: opus-devel
BuildRequires: soxr-devel
BuildRequires: speex-devel
BuildRequires: vo-amrwbenc-devel
BuildRequires: zimg-devel
BuildRequires: zvbi-devel
BuildRequires: intel-mediasdk-devel
BuildRequires: alsa-lib-devel
BuildRequires: bzip2-devel
BuildRequires: fontconfig-devel
BuildRequires: freetype-devel
BuildRequires: fribidi-devel
BuildRequires: gnutls-devel
BuildRequires: gsm-devel
BuildRequires: lame-devel
BuildRequires: libavc1394-devel
BuildRequires: libdc1394-devel
BuildRequires: libiec61883-devel
BuildRequires: libdrm-devel
BuildRequires: libgcrypt-devel
BuildRequires: libGL-devel
BuildRequires: libmodplug-devel
BuildRequires: librsvg2-devel
BuildRequires: libssh-devel
BuildRequires: libtheora-devel
BuildRequires: libv4l-devel
BuildRequires: libvdpau-devel
BuildRequires: libvorbis-devel
BuildRequires: nasm
BuildRequires: libxcb-devel
BuildRequires: opencl-headers ocl-icd-devel
BuildRequires: openjpeg2-devel
BuildRequires: perl(Pod::Man)
BuildRequires: soxr-devel
BuildRequires: speex-devel
BuildRequires: texinfo
BuildRequires: zimg-devel >= 2.7.0
BuildRequires: zlib-devel
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
Provides: %{ffname}
%description
%{ffname} is a complete and free Internet live audio and video
broadcasting solution for Linux/Unix. It also includes a digital
VCR. It can encode in real time in many formats including MPEG1 audio
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.
%package libs
Summary: Libraries for %{name}
Provides: %{ffname}-libs
Provides: %{ffname}-libs(%{arch}) = %{version}-%{release}%{?dist}
%description libs
%{ffname} is a complete and free Internet live audio and video
broadcasting solution for Linux/Unix. It also includes a digital
VCR. It can encode in real time in many formats including MPEG1 audio
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.
This package contains the libraries for %{name}
%package -n libavdevice
Summary: Special devices muxing/demuxing library
Requires: %{name}-libs%{_isa} = %{version}-%{release}
%description -n libavdevice%{?flavor}
Libavdevice is a complementary library to libavf "libavformat". It provides
various "special" platform-specific muxers and demuxers, e.g. for grabbing
devices, audio capture and playback etc.
%package devel
Summary: Development package for %{name}
Requires: %{name}-libs%{_isa} = %{version}-%{release}
Requires: libavdevice%{?flavor}%{_isa} = %{version}-%{release}
Requires: pkgconfig
Provides: %{ffname}-devel
%description devel
%{ffname} is a complete and free Internet live audio and video
broadcasting solution for Linux/Unix. It also includes a digital
VCR. It can encode in real time in many formats including MPEG1 audio
and video, MPEG4, h263, ac3, asf, avi, real, mjpeg, and flash.
This package contains development files for %{ffname}
%prep
%setup -q -n %{ffname}-%{version}
%build
# Don't use the %%configure macro as this is not an autotool script
./configure \
--prefix=%{_prefix} \
--bindir=%{_bindir} \
--datadir=%{_datadir}/%{ffname} \
--docdir=%{_docdir}/%{ffname} \
--incdir=%{_includedir}/%{ffname} \
--libdir=%{_libdir} \
--mandir=%{_mandir} \
--arch=x86_64 \
--enable-cuda \
--enable-cuda-sdk \
--enable-cuvid \
--enable-nvenc \
--enable-libx264 \
--enable-libx265 \
--enable-nonfree \
--enable-gpl \
--enable-libfdk_aac \
--extra-cflags=-I/usr/local/cuda-%{cudav}/include \
--extra-ldflags=-L/usr/local/cuda-%{cudav}/lib64 \
--disable-manpages \
--enable-libbluray \
--enable-libdrm \
--enable-libmp3lame \
--enable-openal \
--enable-opencl \
--enable-opengl \
--enable-libopenjpeg \
--enable-libopus \
--enable-libpulse \
--enable-librsvg \
--enable-libsoxr \
--enable-libspeex \
--enable-libssh \
--enable-libtheora \
--enable-libvorbis \
--enable-libv4l2 \
--enable-libvmaf \
--enable-libvpx \
--enable-libzimg \
--enable-libzvbi \
--enable-shared \
--enable-postproc \
--enable-libvo-amrwbenc \
--enable-bzlib \
--disable-crystalhd \
--enable-fontconfig \
--enable-gcrypt \
--enable-gnutls \
--enable-ladspa \
--enable-libaom \
--enable-libdav1d \
--enable-libass \
--enable-libfdk-aac \
--enable-libjack \
--enable-libfreetype \
--enable-libfribidi \
--enable-libgsm \
%if 0%{?_with_libnpp}
--enable-libnpp \
%endif
--enable-version3
# interesting:
# https://patchwork.ffmpeg.org/project/ffmpeg/patch/0jvAo3VLhFQ4_4u5oIjRgKWsvUsMNzbFI7uRxyeg3q5DRtwQTeyeAKjnI6vW56j-ckb7etJOBCdiWpXRwMivvzlb9rvRTrZ9UY4ORW1vWww=@protonmail.com/#16559
%install
make install DESTDIR=%{?buildroot}
rm -f %{ffname}-%{version}/debugsourcefiles.list
rm -rf %{buildroot}/.build-id
%clean
[ "%{buildroot}" != "/" ] && [ -d "%{buildroot}" ] && rm -rf %{buildroot}
[ "%{_builddir}" != "/" ] && [ -d "%{_builddir}" ] && rm -rf %{_builddir}/*
%files
%{_bindir}/%{ffname}
%{_bindir}/ffplay
%{_bindir}/ffprobe
%{_datadir}/%{ffname}
%files libs
%doc CREDITS README.md
%license COPYING.*
%{_libdir}/lib*.so.*
%exclude %{_libdir}/libavdevice.so.*
%files -n libavdevice
%{_libdir}/libavdevice.so.*
%files devel
%doc MAINTAINERS doc/APIchanges doc/*.txt
%doc %{_docdir}/%{ffname}/*.html
%{_includedir}/%{ffname}
%{_libdir}/pkgconfig/lib*.pc
%{_libdir}/lib*.so
%{_libdir}/lib*.a
%changelog
* Mon Mar 9 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- More modules added.
* Sun Mar 8 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Initial build.
- Build with Nvidia Cuda support.

216
fedora/SPECS/gdal3.spec Normal file
View File

@@ -0,0 +1,216 @@
%define bashcompletiondir %{_sysconfdir}/bash_completion.d
%define realname gdal
%define sysprefix /usr
# Prefix is /usr/local!
%define _prefix /usr/local
%define _includedir %{_prefix}/include
%define _datadir %{_prefix}/share
%define _bindir %{_prefix}/bin
%define _libdir %{_prefix}/lib
%define _mandir %{_prefix}/man
Name: gdal3
Version: 3.0.2
Release: 2%{?dist}
#define debug_package #{nil}
License: MIT
Group: Applications/System
Summary: GIS file format library
URL: http://www.gdal.org
Source0: %realname-%{version}.tar.gz
BuildRequires: freexl-devel
BuildRequires: bash-completion
BuildRequires: libzstd-devel
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: libtiff-devel
BuildRequires: pcre-devel
BuildRequires: perl-devel
BuildRequires: perl-generators
BuildRequires: openjpeg2-devel
BuildRequires: openjpeg-devel
BuildRequires: perl(ExtUtils::MakeMaker)
BuildRequires: %{sysprefix}/bin/pkg-config
BuildRequires: libpq-devel
BuildRequires: proj6-devel >= 6.0.2
%if %{with python2}
BuildRequires: python2-devel
BuildRequires: python2-numpy
%endif
%if %{with python3}
BuildRequires: python3-devel
BuildRequires: python3-numpy
%endif
BuildRequires: sqlite-devel
BuildRequires: swig
BuildRequires: /usr/bin/pathfix.py
%global DONT_REMOVE_RPATH 1
# don't check for rpath:
%global __arch_install_post /usr/lib/rpm/check-buildroot
%description
Geospatial Data Abstraction Library (GDAL/OGR) is a cross platform
C++ translator library for raster and vector geospatial data formats.
As a library, it presents a single abstract data model to the calling
application for all supported formats. It also comes with a variety of
useful commandline utilities for data translation and processing.
It provides the primary data access engine for many applications.
GDAL/OGR is the most widely used geospatial data access library.
%package devel
Summary: Development files for the GDAL file format library
Requires: %{name}-libs = %{version}-%{release}
%description devel
This package contains development files for GDAL.
%package libs
Summary: GDAL file format library
%description libs
This package contains the GDAL file format library.
%package python-tools
Summary: GDAL python files
%description python-tools
This package contains the GDAL python files
%prep
%setup -q -n %{realname}-%{version}
%if 0%{?fedora} > 31
pathfix.py -pni "%{__python3} %{py3_shbang_opts}" \
%else
pathfix.py -pni "%{__python2} %{py2_shbang_opts}" \
%endif
swig/python/scripts/epsg_tr.py \
swig/python/scripts/gdal2tiles.py \
swig/python/scripts/gdalchksum.py \
swig/python/scripts/gdalident.py \
swig/python/scripts/gdal_pansharpen.py \
swig/python/scripts/gdal_sieve.py \
swig/python/scripts/rgb2pct.py \
swig/python/scripts/esri2wkt.py \
swig/python/scripts/gdal2xyz.py \
swig/python/scripts/gdalcompare.py \
swig/python/scripts/gdalimport.py \
swig/python/scripts/gdal_polygonize.py \
swig/python/scripts/mkgraticule.py \
swig/python/scripts/gcps2vec.py \
swig/python/scripts/gdal_auth.py \
swig/python/scripts/gdal_edit.py \
swig/python/scripts/gdal_merge.py \
swig/python/scripts/gdal_proximity.py \
swig/python/scripts/ogrmerge.py \
swig/python/scripts/gcps2wld.py \
swig/python/scripts/gdal_calc.py \
swig/python/scripts/gdal_fillnodata.py \
swig/python/scripts/gdalmove.py \
swig/python/scripts/gdal_retile.py \
swig/python/scripts/pct2rgb.py
%build
./configure --with-python
#./configure \
#--datadir=%{_datadir}/%{realname} \
#--includedir=%{_includedir}/%{realname} \
#--prefix=%{_prefix} \
#--libdir=%{_libdir} \
#--sysconfdir=%{_sysconfdir} \
#--localstatedir=%{_var} \
#--with-curl \
#--with-freexl \
#--with-geos \
#--with-png=%{sysprefix} \
#--with-gif \
#--with-gta \
#--with-jpeg \
#--without-jpeg12 \
#--with-liblzma \
#--with-libtiff=%{sysprefix} \
#--with-libz \
#--without-mdb \
#--without-msg \
#--with-proj=%{_prefix} \
#--with-python \
#--with-threads \
#--enable-shared
make
%install
export DONT_REMOVE_RPATH=1
make install DESTDIR=%{buildroot}
# move bashcompletion file to proper directory:
mv %{buildroot}%{_prefix}/etc %{buildroot}/
%clean
[ "%{buildroot}" != "/" ] && [ -d "%{buildroot}" ] && rm -rf %{buildroot}
[ "%{_builddir}" != "/" ] && [ -d "%{_builddir}" ] && rm -rf %{_builddir}/*
%files
%defattr(-,root,root,-)
%doc MIGRATION_GUIDE.TXT PROVENANCE.TXT
%config %{bashcompletiondir}/*
%{_bindir}/gdallocationinfo
%{_bindir}/gdal_contour
%{_bindir}/gdal_rasterize
%{_bindir}/gdal_translate
%{_bindir}/gdaladdo
%{_bindir}/gdalinfo
%{_bindir}/gdaldem
%{_bindir}/gdalbuildvrt
%{_bindir}/gdaltindex
%{_bindir}/gdalwarp
%{_bindir}/gdal_grid
%{_bindir}/gdalenhance
%{_bindir}/gdalmanage
%{_bindir}/gdalserver
%{_bindir}/gdalsrsinfo
%{_bindir}/gdaltransform
%{_bindir}/nearblack
%{_bindir}/ogr*
%{_bindir}/testepsg
%{_bindir}/gnmanalyse
%{_bindir}/gnmmanage
%files libs
%doc LICENSE.TXT NEWS PROVENANCE.TXT COMMITTERS
%{_libdir}/libgdal.so.26
%{_libdir}/libgdal.so.26.*
%{_datadir}/%{realname}/*
#TODO: Possibly remove files like .dxf, .dgn, ...
%dir %{_libdir}/%{realname}plugins
%files devel
%{_bindir}/%{realname}-config
%{_includedir}/*.h
%{_libdir}/*.a
%{_libdir}/*.la
%{_libdir}/*.so
%{_libdir}/pkgconfig/%{realname}.pc
%files python-tools
%{_bindir}/*.py
%{_libdir}64/python*/site-packages/*
%changelog
* Sat Jan 11 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Python scripts added
* Wed Jan 8 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Library path fixed.
* Mon Jan 6 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Initial build

View File

@@ -1,5 +1,5 @@
Name: gitea
Version: 1.10.0
Version: 1.12.6
Release: 1%{?dist}
Summary: Gitea is a painless self-hosted Git service.
%define MyVersion %version
@@ -7,7 +7,6 @@ Summary: Gitea is a painless self-hosted Git service.
License: MIT
URL: https://gitea.io
#Source0: https://github.com/go-gitea/gitea/archive/%{version}.tar.gz
Source0: %name-%MyVersion.tar.gz
Source1: gitea.service
@@ -17,6 +16,7 @@ BuildRequires: golang >= 1.8
BuildRequires: go-bindata
%endif
BuildRequires: make
BuildRequires: npm
Requires: git
@@ -43,12 +43,12 @@ done
%endif
%build
cd ../
mkdir src/code.gitea.io -p
cp -av %name-%{MyVersion} src/code.gitea.io/gitea
export GOPATH=$(pwd)
cd src/code.gitea.io/gitea/
TAGS="bindata sqlite" make generate build
#cd ../
#mkdir src/code.gitea.io -p
#cp -av %name-%{MyVersion} src/code.gitea.io/gitea
#export GOPATH=$(pwd)
#cd src/code.gitea.io/gitea/
TAGS="bindata" make build
%install
rm -rf $RPM_BUILD_ROOT
@@ -56,7 +56,7 @@ mkdir -p $RPM_BUILD_ROOT/%{_sharedstatedir}/gitea
mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/gitea
mkdir -p $RPM_BUILD_ROOT/%{_unitdir}
install custom/conf/app.ini.sample $RPM_BUILD_ROOT/%{_sysconfdir}/gitea/gitea.ini
install -m 755 ../src/code.gitea.io/gitea/gitea $RPM_BUILD_ROOT/%{_sharedstatedir}/gitea/gitea
install -m 755 gitea $RPM_BUILD_ROOT/%{_sharedstatedir}/gitea/gitea
install -m 644 %{SOURCE1} $RPM_BUILD_ROOT/%{_unitdir}/gitea.service
%files
@@ -82,57 +82,28 @@ getent passwd gitea > /dev/null || \
%changelog
* Fri Nov 22 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.10.0.
* Sun Nov 29 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.12.6.
* Fri Oct 18 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.9.4.
* Sat Oct 31 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- First build for Fedora 33.
* Sat Sep 21 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.9.3.
* Thu Oct 22 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.12.5.
* Fri Aug 16 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.9.1.
* Sat Sep 19 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.12.4.
* Fri Aug 2 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.9.0.
* Fri Aug 14 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.12.3.
* Mon Jun 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.8.2.
* Fri Jul 17 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.12.2.
* Sat May 11 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.8.1.
* Fri Jul 3 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.12.1.
* Sun Apr 28 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.8.0.
* Sun Apr 7 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.7.5.
* Fri Mar 15 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.7.4.
* Wed Feb 27 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.7.3.
* Sat Feb 16 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.7.2.
* Wed Jan 30 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.7.0.
* Fri Jan 18 2019 Daniel Steiner <daniel.steiner@greenmail.ch>
- Update to version 1.6.4.
* Mon Dec 10 2018 Daniel Steiner <daniel.steiner@greenmail.ch>
- Update to version 1.6.1.
* Mon Dec 3 2018 Daniel Steiner <daniel.steiner@greenmail.ch>
- Update to version 1.6.0.
* Tue Nov 13 2018 Daniel Steiner <daniel.steiner@greenmail.ch>
- Update to RC1.
* Sun Oct 28 2018 Daniel Steiner <daniel.steiner@greenmail.ch>
- initial setup for CentOS 7.
* Sun Jun 14 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to version 1.11.6.
- Fix for frontend JS location.

View File

@@ -1,14 +1,10 @@
Name: goaccess
Version: 1.2
Release: 3%{?dist}
Version: 1.4.1
Release: 2%{?dist}
Summary: Real-time web log analyzer and interactive viewer
License: GPLv2+
URL: https://goaccess.io/
Source0: http://tar.goaccess.io/%{name}-%{version}.tar.gz
Source1: %{name}.service
Source2: %{name}-get-logs.pl
Source3: %{name}-sysconfig
Source4: %{name}-systemd.conf
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gcc
@@ -17,11 +13,10 @@ BuildRequires: ncurses-devel
BuildRequires: tokyocabinet-devel
BuildRequires: zlib-devel
BuildRequires: bzip2-devel
%if 0%{?using_systemd}
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
BuildRequires: gettext-devel
BuildRequires: libmaxminddb-devel
%if %{with openssl}
BuildRequires: openssl-devel
%endif
%description
@@ -72,59 +67,28 @@ sed -i '/-pthread/d' configure.ac
%build
autoreconf -fiv
%configure \
--enable-debug \
--enable-geoip=legacy \
--enable-utf8 \
--enable-tcb=btree \
--with-getline \
--with-openssl=%{_prefix} \
--enable-bzip \
--enable-zlib
--enable-debug \
--enable-geoip=legacy \
--enable-geoip=mmdb \
--enable-utf8 \
--with-getline \
--with-openssl
%make_build
%install
%make_install
# install additional systemd service
install -D %{S:2} %{buildroot}%{_libexecdir}/%{name}-get-logs.pl
install -D %{S:1} %{buildroot}%{_unitdir}/%{name}.service
install -D %{S:3} %{buildroot}%{_sysconfdir}/sysconfig/%{name}
install -D %{S:4} %{buildroot}%{_sysconfdir}/%{name}-systemd.conf
install -d %{buildroot}%{_var}/www/html/%{name}
%find_lang %{name}
%post
%if 0%{?using_systemd}
%if 0%{?systemd_macro_scriptlet}
%systemd_post %{name}.service
%endif
%endif
%postun
%if 0%{?using_systemd}
%if 0%{?systemd_macro_scriptlet}
%systemd_preun %{name}.service
%endif
%endif
%files
%files -f %{name}.lang
%license COPYING
%config(noreplace) %{_sysconfdir}/%{name}.conf
%config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf
%config(noreplace) %{_sysconfdir}/%{name}/browsers.list
%config(noreplace) %{_sysconfdir}/%{name}/podcast.list
%{_bindir}/%{name}
%{_mandir}/man1/%{name}.1*
%{_pkgdocdir}
%{_unitdir}/%{name}.service
%dir %{_var}/www/html/%{name}
%attr(755,-,-) %{_libexecdir}/%{name}-get-logs.pl
%config() %{_sysconfdir}/sysconfig/%{name}
%config(noreplace) %{_sysconfdir}/%{name}-systemd.conf
%changelog
* Sun Jul 16 2017 Daniel Steiner <dsteiner@redhat.com> - 1.2-3
- Live status enable with systemd
* Sun Jul 16 2017 Daniel Steiner <dsteiner@redhat.com> - 1.2-2
- Legacy GeoIP enabled.
* Sun Jul 16 2017 Daniel Steiner <dsteiner@redhat.com> - 1.2-1
- Initial release for Fedora 25.
* Fri Aug 28 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- mmdb enabled for new GeoLite2 dBs.
- First, initial version for Fedora 32 (1.4.1)

918
fedora/SPECS/icinga2.spec Normal file
View File

@@ -0,0 +1,918 @@
# Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+
%define revision 1
# make sure that _rundir is working on older systems
%if ! %{defined _rundir}
%define _rundir %{_localstatedir}/run
%endif
%if ! %{defined _fillupdir}
%define _fillupdir %{_localstatedir}/adm/fillup-templates
%endif
%define _libexecdir %{_prefix}/lib/
%define plugindir %{_libdir}/nagios/plugins
%if "%{_vendor}" == "redhat"
%define apachename httpd
%define apacheconfdir %{_sysconfdir}/httpd/conf.d
%define apacheuser apache
%define apachegroup apache
%if 0%{?el6}%{?amzn}
%define use_systemd 0
%define use_selinux 0
%if %(uname -m) != "x86_64"
%define march_flag -march=i686
%endif
%else
# fedora and el>=7
%define use_systemd 1
%define use_selinux 1
%if 0%{?fedora} >= 24
# for installing limits.conf on systemd >= 228
%define configure_systemd_limits 1
%else
%define configure_systemd_limits 0
%endif
%endif
%endif
%if "%{_vendor}" == "suse"
%define plugindir %{_libexecdir}/nagios/plugins
%define apachename apache2
%define apacheconfdir %{_sysconfdir}/apache2/conf.d
%define apacheuser wwwrun
%define apachegroup www
%if 0%{?suse_version} >= 1310
%define use_systemd 1
%if 0%{?sle_version} >= 120200 || 0%{?suse_version} > 1320
# for installing limits.conf on systemd >= 228
%define configure_systemd_limits 1
%else
%define configure_systemd_limits 0
%endif
%else
%define use_systemd 0
%endif
%endif
%define icinga_user icinga
%define icinga_group icinga
%define icingacmd_group icingacmd
# enable unity builds by default for all architectures except arm32
%ifarch %{arm}
%bcond_with unity_build
%else
%bcond_without unity_build
%endif
# Disable lto_build for older SUSE versions
# see https://github.com/Icinga/icinga2/issues/7149
%if "%{_vendor}" == "suse" && 0%{?suse_version} <= 1315
%bcond_with lto_build
%else # suse_version 1315
%bcond_without lto_build
%endif # suse_version 1315
%bcond_with systemd_and_init
%bcond_without compat
%bcond_without livestatus
%bcond_without notification
%bcond_without perfdata
%bcond_without tests
%bcond_without mysql
%bcond_without pgsql
%define logmsg logger -t %{name}/rpm
%define boost_min_version 1.66
Summary: Network monitoring application
%if "%{_vendor}" == "suse"
License: GPL-2.0-or-later
%else
License: GPLv2+
%endif # suse
Group: System/Monitoring
Name: icinga2
Version: 2.12.1
Release: %{revision}%{?dist}
Url: https://www.icinga.com/
Source: https://github.com/Icinga/%{name}/archive/v%{version}%{?src_version_suffix}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires: %{name}-bin = %{version}-%{release}
Requires: %{name}-common = %{version}-%{release}
Conflicts: %{name}-common < %{version}-%{release}
%description
Meta package for Icinga 2 Core, DB IDO and Web.
%package bin
Summary: Icinga 2 binaries and libraries
Group: System/Monitoring
Requires: %{name}-bin = %{version}-%{release}
%if "%{_vendor}" == "suse"
Provides: monitoring_daemon
Recommends: monitoring-plugins
%if 0%{?suse_version} >= 1310
BuildRequires: libyajl-devel
%endif
%endif
BuildRequires: libedit-devel
BuildRequires: ncurses-devel
%if "%{_vendor}" == "suse" && 0%{?suse_version} < 1210
BuildRequires: gcc48-c++
BuildRequires: libopenssl1-devel
BuildRequires: libstdc++48-devel
%else
%if "%{_vendor}" == "redhat" && (0%{?el6} || 0%{?rhel} == 6 || "%{?dist}" == ".el6")
# Requires devtoolset-7 scl
%define scl_name devtoolset-7
%define scl_enable scl enable %{scl_name} --
BuildRequires: %{scl_name}-binutils
BuildRequires: %{scl_name}-gcc-c++
BuildRequires: %{scl_name}-libstdc++-devel
%else
BuildRequires: gcc-c++
BuildRequires: libstdc++-devel
%endif
BuildRequires: openssl-devel
%endif
BuildRequires: bison
BuildRequires: cmake
BuildRequires: flex >= 2.5.35
BuildRequires: make
%if "%{_vendor}" == "suse"
%if 0%{?suse_version} >= 1315
# SLES 12 and OpenSUSE 42 or later
%define boost_devel_pkg %nil
%if 0%{?suse_version} < 1320
# before SLES 15 and OpenSUSE 15
# Provided by packages.icinga.com
%define boost_library icinga-boost
%define boost_version 1.69
%define boost_rpath %{_libdir}/%{boost_library}
# Note: the -impl suffix comes from current packages on OBS
%define boost_devel_suffix -impl
%endif # suse_version < 1320
BuildRequires: libboost_context-devel%{?boost_devel_suffix} >= %{boost_min_version}
BuildRequires: libboost_coroutine-devel%{?boost_devel_suffix} >= %{boost_min_version}
BuildRequires: libboost_filesystem-devel%{?boost_devel_suffix} >= %{boost_min_version}
BuildRequires: libboost_program_options-devel%{?boost_devel_suffix} >= %{boost_min_version}
BuildRequires: libboost_regex-devel%{?boost_devel_suffix} >= %{boost_min_version}
BuildRequires: libboost_system-devel%{?boost_devel_suffix} >= %{boost_min_version}
BuildRequires: libboost_thread-devel%{?boost_devel_suffix} >= %{boost_min_version}
BuildRequires: libboost_test-devel%{?boost_devel_suffix} >= %{boost_min_version}
%else # suse_version >= 1315
# old boost devel name
%define boost_devel_pkg boost-devel
%endif # suse_version >= 1315
%else # vendor == suse - assuming redhat or compatible
# default boost devel package
%define boost_devel_pkg boost-devel
%if (0%{?el6} || 0%{?rhel} == 6)
# Provided by packages.icinga.com
%define boost_library icinga-boost169
%define boost_version 1.69
%define boost_devel_pkg icinga-boost169-devel
%define boost_rpath %{_libdir}/%{boost_library}
%endif # el6
%if (0%{?el7} || 0%{?rhel} == 7)
# Provided by EPEL
%define boost_library boost169
%define boost_version 1.69
%define boost_devel_pkg boost169-devel
%endif # el7
%endif # vendor == suse
%if "%{?boost_devel_pkg}" != ""
BuildRequires: %{boost_devel_pkg} >= %{boost_min_version}
%endif # boost_devel_pkg
%if 0%{?use_systemd}
BuildRequires: systemd-devel
Requires: systemd
%endif
Obsoletes: %{name}-libs <= 2.10.0
Conflicts: %{name}-libs <= 2.10.0
%description bin
Icinga 2 is a general-purpose network monitoring application.
This subpackage provides the binaries for Icinga 2 Core.
%package common
Summary: Common Icinga 2 configuration
Group: System/Monitoring
%if (0%{?amzn} || 0%{?fedora} || 0%{?rhel})
Requires(pre): shadow-utils
Requires(post): shadow-utils
%endif
BuildRequires: logrotate
%if "%{_vendor}" == "suse"
PreReq: permissions
Provides: group(%{icinga_group})
Provides: group(%{icingacmd_group})
Provides: user(%{icinga_user})
Requires(pre): shadow
Requires(post): shadow
# Coreutils is added because of autoyast problems reported
Requires(pre): coreutils
Requires(post): coreutils
%if 0%{?suse_version} >= 1200
BuildRequires: monitoring-plugins-common
Requires: monitoring-plugins-common
%else
Recommends: monitoring-plugins-common
%endif
Recommends: logrotate
%endif
%description common
This subpackage provides common directories, and the UID and GUID definitions
among Icinga 2 related packages.
%package doc
Summary: Documentation for Icinga 2
Group: Documentation/Other
%description doc
This subpackage provides documentation for Icinga 2.
%if %{with mysql}
%package ido-mysql
Summary: IDO MySQL database backend for Icinga 2
Group: System/Monitoring
%if "%{_vendor}" == "suse"
BuildRequires: libmysqlclient-devel
%if 0%{?suse_version} >= 1310
BuildRequires: mysql-devel
%endif
%else
BuildRequires: mysql-devel
%endif #suse
Requires: %{name}-bin = %{version}-%{release}
%description ido-mysql
Icinga 2 IDO mysql database backend. Compatible with Icinga 1.x
IDOUtils schema >= 1.12
%endif
%if %{with pgsql}
%package ido-pgsql
Summary: IDO PostgreSQL database backend for Icinga 2
Group: System/Monitoring
%if "%{_vendor}" == "suse" && 0%{?suse_version} < 1210
BuildRequires: postgresql-devel >= 8.4
%else
BuildRequires: postgresql-devel
%endif
Requires: %{name}-bin = %{version}-%{release}
%description ido-pgsql
Icinga 2 IDO PostgreSQL database backend. Compatible with Icinga 1.x
IDOUtils schema >= 1.12
%endif
%if 0%{?use_selinux}
%global selinux_variants mls targeted
%global selinux_modulename %{name}
%package selinux
Summary: SELinux policy module supporting icinga2
Group: System/Base
BuildRequires: checkpolicy
BuildRequires: hardlink
BuildRequires: selinux-policy-devel
Requires: %{name}-bin = %{version}-%{release}
%if 0%{?fedora} >= 27 || 0%{?rhel} >= 8
Requires(post): policycoreutils-python-utils
Requires(postun): policycoreutils-python-utils
%else
Requires(post): policycoreutils-python
Requires(postun): policycoreutils-python
%endif
%description selinux
SELinux policy module supporting icinga2.
%endif
%package -n vim-icinga2
Summary: Vim syntax highlighting for icinga2
Group: Productivity/Text/Editors
%if "%{_vendor}" == "suse"
BuildRequires: vim
Requires: vim
%else
Requires: vim-filesystem
%endif
%description -n vim-icinga2
Provides Vim syntax highlighting for icinga2.
%package -n nano-icinga2
Summary: Nano syntax highlighting for icinga2
Group: Productivity/Text/Editors
Requires: nano
%description -n nano-icinga2
Provides Nano syntax highlighting for icinga2.
%prep
%setup -q -n %{name}-%{version}%{?src_version_suffix}
# use absolute shebang instead of env on SUSE distributions
%if "%{_vendor}" == "suse"
find . -type f -name '*.sh' -exec sed -i -e 's|\/usr\/bin\/env bash|\/bin\/bash|g' {} \;
%endif
# quick & dirty hack for SLES11 & Kernel < 2.9 w/o SO_REUSEPORT
%if "%{_vendor}" == "suse" && 0%{?suse_version} < 1210
find . -type f -name tcpsocket.cpp -exec sed -i -e 's|.*SO_REUSEPORT.*||g' {} \;
%endif
%build
# set basedir to allow cache to hit between different builds
# this will make all paths below BUILD/icinga2-x.x.x relative for cache
export CCACHE_BASEDIR="${CCACHE_BASEDIR:-$(pwd)}"
CMAKE_OPTS="-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_SYSCONFDIR=/etc \
-DCMAKE_INSTALL_LOCALSTATEDIR=/var \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DBoost_NO_BOOST_CMAKE=ON \
-DICINGA2_PLUGINDIR=%{plugindir} \
-DICINGA2_RUNDIR=%{_rundir} \
-DICINGA2_SYSCONFIGFILE=/etc/sysconfig/icinga2 \
-DICINGA2_USER=%{icinga_user} \
-DICINGA2_GROUP=%{icinga_group} \
-DICINGA2_COMMAND_GROUP=%{icingacmd_group}"
%if 0%{?fedora}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_STUDIO=true"
%endif
%if %{with unity_build}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_UNITY_BUILD=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_UNITY_BUILD=OFF"
%endif
%if %{with lto_build}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_LTO_BUILD=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_LTO_BUILD=OFF"
%endif
%if %{with systemd_and_init}
CMAKE_OPTS="$CMAKE_OPTS -DINSTALL_SYSTEMD_SERVICE_AND_INITSCRIPT=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DINSTALL_SYSTEMD_SERVICE_AND_INITSCRIPT=OFF"
%endif
%if %{with compat}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_COMPAT=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_COMPAT=OFF"
%endif
%if %{with livestatus}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_LIVESTATUS=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_LIVESTATUS=OFF"
%endif
%if %{with notification}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_NOTIFICATION=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_NOTIFICATION=OFF"
%endif
%if %{with perfdata}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_PERFDATA=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_PERFDATA=OFF"
%endif
%if %{with tests}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_TESTS=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_TESTS=OFF"
%endif
%if %{with mysql}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_MYSQL=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_MYSQL=OFF"
%endif
%if %{with pgsql}
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_PGSQL=ON"
%else
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_WITH_PGSQL=OFF"
%endif
%if (0%{?el6} || 0%{?rhel} == 6)
# Explicitly link against rt, because ld doesn't detect it automatically
CMAKE_OPTS="$CMAKE_OPTS -DCMAKE_EXE_LINKER_FLAGS=-lrt"
%endif # el6
%if "%{?boost_rpath}" != ""
CMAKE_OPTS="$CMAKE_OPTS -DCMAKE_INSTALL_RPATH=%{boost_rpath}"
%endif # boost_rpath
%if "%{?boost_library}" != ""
# Boost_NO_BOOST_CMAKE=ON - disable search for cmake
# Boost_NO_SYSTEM_PATHS=ON - only search in specified locations
CMAKE_OPTS="$CMAKE_OPTS
-DBoost_NO_BOOST_CMAKE=TRUE \
-DBoost_NO_SYSTEM_PATHS=TRUE \
-DBOOST_LIBRARYDIR=%{_libdir}/%{boost_library} \
-DBOOST_INCLUDEDIR=/usr/include/%{boost_library} \
-DBoost_ADDITIONAL_VERSIONS='%{boost_version};%{boost_version}.0'"
%endif # boost_library
%if 0%{?use_systemd}
CMAKE_OPTS="$CMAKE_OPTS -DUSE_SYSTEMD=ON"
%endif
%if "%{_vendor}" == "suse" && 0%{?suse_version} < 1210
# from package gcc48-c++
export CC=gcc-4.8
export CXX=g++-4.8
%endif
%if "%{?_buildhost}" != ""
CMAKE_OPTS="$CMAKE_OPTS -DICINGA2_BUILD_HOST_NAME:STRING=%_buildhost"
%endif
%{?scl_enable} cmake $CMAKE_OPTS -DCMAKE_C_FLAGS:STRING="%{optflags} %{?march_flag}" -DCMAKE_CXX_FLAGS:STRING="%{optflags} %{?march_flag}" .
%{?scl_enable} make %{?_smp_mflags}
%if 0%{?use_selinux}
cd tools/selinux
for selinuxvariant in %{selinux_variants}
do
make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile
mv %{selinux_modulename}.pp %{selinux_modulename}.pp.${selinuxvariant}
make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile clean
done
cd -
%endif
%install
%{?scl_enable} make install \
DESTDIR="%{buildroot}"
# install custom limits.conf for systemd
%if 0%{?configure_systemd_limits}
# for > 2.8 or > 2.7.2
install -D -m 0644 etc/initsystem/icinga2.service.limits.conf %{buildroot}/etc/systemd/system/%{name}.service.d/limits.conf
%endif
# remove features-enabled symlinks
rm -f %{buildroot}/%{_sysconfdir}/%{name}/features-enabled/*.conf
# enable suse rc links
%if "%{_vendor}" == "suse"
%if 0%{?use_systemd}
ln -sf /usr/sbin/service %{buildroot}%{_sbindir}/rc%{name}
%else
ln -sf ../../%{_initrddir}/%{name} "%{buildroot}%{_sbindir}/rc%{name}"
%endif
mkdir -p "%{buildroot}%{_fillupdir}/"
mv "%{buildroot}%{_sysconfdir}/sysconfig/%{name}" "%{buildroot}%{_fillupdir}/sysconfig.%{name}"
%endif
%if 0%{?use_selinux}
cd tools/selinux
for selinuxvariant in %{selinux_variants}
do
install -d %{buildroot}%{_datadir}/selinux/${selinuxvariant}
install -p -m 644 %{selinux_modulename}.pp.${selinuxvariant} \
%{buildroot}%{_datadir}/selinux/${selinuxvariant}/%{selinux_modulename}.pp
done
cd -
# TODO: Fix build problems on Icinga, see https://github.com/Icinga/puppet-icinga_build/issues/11
#/usr/sbin/hardlink -cv %%{buildroot}%%{_datadir}/selinux
%endif
%if "%{_vendor}" == "suse"
install -D -m 0644 tools/syntax/vim/syntax/%{name}.vim %{buildroot}%{_datadir}/vim/site/syntax/%{name}.vim
install -D -m 0644 tools/syntax/vim/ftdetect/%{name}.vim %{buildroot}%{_datadir}/vim/site/ftdetect/%{name}.vim
%else
install -D -m 0644 tools/syntax/vim/syntax/%{name}.vim %{buildroot}%{_datadir}/vim/vimfiles/syntax/%{name}.vim
install -D -m 0644 tools/syntax/vim/ftdetect/%{name}.vim %{buildroot}%{_datadir}/vim/vimfiles/ftdetect/%{name}.vim
%endif
install -D -m 0644 tools/syntax/nano/%{name}.nanorc %{buildroot}%{_datadir}/nano/%{name}.nanorc
%check
export CTEST_OUTPUT_ON_FAILURE=1
make test
%pre
%if "%{_vendor}" == "suse"
%if 0%{?use_systemd}
%service_add_pre %{name}.service
%endif
%verifyscript
%verify_permissions -e %{_rundir}/%{name}/cmd
%endif
%post
# suse
%if "%{_vendor}" == "suse"
%if 0%{?suse_version} >= 1310
%set_permissions %{_rundir}/%{name}/cmd
%endif
%if 0%{?use_systemd}
%fillup_only %{name}
%service_add_post %{name}.service
%else
%fillup_and_insserv %{name}
%endif
if [ ${1:-0} -eq 1 ]
then
# initial installation, enable default features
for feature in checker notification mainlog; do
ln -sf ../features-available/${feature}.conf %{_sysconfdir}/%{name}/features-enabled/${feature}.conf
done
fi
exit 0
%else
# rhel
%if 0%{?use_systemd}
%systemd_post %{name}.service
%else
/sbin/chkconfig --add %{name}
%endif
if [ ${1:-0} -eq 1 ]
then
# initial installation, enable default features
for feature in checker notification mainlog; do
ln -sf ../features-available/${feature}.conf %{_sysconfdir}/%{name}/features-enabled/${feature}.conf
done
fi
exit 0
%endif
# suse/rhel
%preun
# suse
%if "%{_vendor}" == "suse"
%if 0%{?use_systemd}
%service_del_preun %{name}.service
%else
%stop_on_removal %{name}
%endif
exit 0
%else
# rhel
%if 0%{?use_systemd}
%systemd_preun %{name}.service
%else
if [ "$1" = "0" ]; then
/sbin/service %{name} stop > /dev/null 2>&1 || :
/sbin/chkconfig --del %{name} || :
fi
%endif
exit 0
%endif
# suse / rhel
%postun
# suse
%if "%{_vendor}" == "suse"
%if 0%{?use_systemd}
%service_del_postun %{name}.service
%else
%restart_on_update %{name}
%insserv_cleanup
%endif
%else
# rhel
%if 0%{?use_systemd}
%systemd_postun_with_restart %{name}.service
%else
if [ "$1" -ge "1" ]; then
/sbin/service %{name} condrestart >/dev/null 2>&1 || :
fi
%endif
%endif
# suse / rhel
if [ "$1" = "0" ]; then
# deinstallation of the package - remove enabled features
rm -rf %{_sysconfdir}/%{name}/features-enabled
fi
exit 0
%pre common
getent group %{icinga_group} >/dev/null || %{_sbindir}/groupadd -r %{icinga_group}
getent group %{icingacmd_group} >/dev/null || %{_sbindir}/groupadd -r %{icingacmd_group}
getent passwd %{icinga_user} >/dev/null || %{_sbindir}/useradd -c "icinga" -s /sbin/nologin -r -d %{_localstatedir}/spool/%{name} -G %{icingacmd_group} -g %{icinga_group} %{icinga_user}
%if "%{_vendor}" == "suse"
%verifyscript common
%verify_permissions -e %{_rundir}/%{name}/cmd
%endif
%post common
%if "%{_vendor}" == "suse"
%if 0%{?suse_version} >= 1310
%set_permissions %{_rundir}/%{name}/cmd
%endif
%endif
%post ido-mysql
if [ ${1:-0} -eq 1 ] && [ -e %{_sysconfdir}/%{name}/features-enabled/ido-mysql.conf ]
then
# initial installation, enable ido-mysql feature
ln -sf ../features-available/ido-mysql.conf %{_sysconfdir}/%{name}/features-enabled/ido-mysql.conf
fi
exit 0
%postun ido-mysql
if [ "$1" = "0" ]; then
# deinstallation of the package - remove feature
rm -f %{_sysconfdir}/%{name}/features-enabled/ido-mysql.conf
fi
exit 0
%post ido-pgsql
if [ ${1:-0} -eq 1 ] && [ -e %{_sysconfdir}/%{name}/features-enabled/ido-pgsql.conf ]
then
# initial installation, enable ido-pgsql feature
ln -sf ../features-available/ido-pgsql.conf %{_sysconfdir}/%{name}/features-enabled/ido-pgsql.conf
fi
exit 0
%postun ido-pgsql
if [ "$1" = "0" ]; then
# deinstallation of the package - remove feature
rm -f %{_sysconfdir}/%{name}/features-enabled/ido-pgsql.conf
fi
exit 0
%if 0%{?use_selinux}
%post selinux
for selinuxvariant in %{selinux_variants}
do
/usr/sbin/semodule -s ${selinuxvariant} -i \
%{_datadir}/selinux/${selinuxvariant}/%{selinux_modulename}.pp &> /dev/null || :
done
/sbin/fixfiles -R icinga2 restore &> /dev/null || :
/sbin/fixfiles -R icinga2-bin restore &> /dev/null || :
/sbin/fixfiles -R icinga2-common restore &> /dev/null || :
/sbin/semanage port -a -t icinga2_port_t -p tcp 5665 &> /dev/null || :
%postun selinux
if [ $1 -eq 0 ] ; then
/sbin/semanage port -d -t icinga2_port_t -p tcp 5665 &> /dev/null || :
for selinuxvariant in %{selinux_variants}
do
/usr/sbin/semodule -s ${selinuxvariant} -r %{selinux_modulename} &> /dev/null || :
done
/sbin/fixfiles -R icinga2 restore &> /dev/null || :
/sbin/fixfiles -R icinga2-bin restore &> /dev/null || :
/sbin/fixfiles -R icinga2-common restore &> /dev/null || :
fi
%endif
%files
%defattr(-,root,root,-)
%doc COPYING
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%if 0%{?use_systemd}
%attr(644,root,root) %{_unitdir}/%{name}.service
%if 0%{?configure_systemd_limits}
%dir /etc/systemd/system/%{name}.service.d
%attr(644,root,root) %config(noreplace) /etc/systemd/system/%{name}.service.d/limits.conf
%endif
%else
%attr(755,root,root) %config(noreplace) %{_sysconfdir}/init.d/%{name}
%endif
%if "%{_vendor}" == "suse"
%{_sbindir}/rc%{name}
%{_fillupdir}/sysconfig.%{name}
%else
%config(noreplace) %{_sysconfdir}/sysconfig/%{name}
%endif
%{_sbindir}/%{name}
%dir %{_libexecdir}/%{name}
%{_libexecdir}/%{name}/prepare-dirs
%{_libexecdir}/%{name}/safe-reload
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_sysconfdir}/%{name}
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_sysconfdir}/%{name}/conf.d
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_sysconfdir}/%{name}/features-available
%exclude %{_sysconfdir}/%{name}/features-available/ido-*.conf
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_sysconfdir}/%{name}/features-enabled
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_sysconfdir}/%{name}/scripts
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_sysconfdir}/%{name}/zones.d
%config(noreplace) %attr(0640,%{icinga_user},%{icinga_group}) %{_sysconfdir}/%{name}/%{name}.conf
%config(noreplace) %attr(0640,%{icinga_user},%{icinga_group}) %{_sysconfdir}/%{name}/constants.conf
%config(noreplace) %attr(0640,%{icinga_user},%{icinga_group}) %{_sysconfdir}/%{name}/zones.conf
%config(noreplace) %attr(0640,%{icinga_user},%{icinga_group}) %{_sysconfdir}/%{name}/conf.d/*.conf
%config(noreplace) %attr(0640,%{icinga_user},%{icinga_group}) %{_sysconfdir}/%{name}/features-available/*.conf
%config(noreplace) %attr(0640,%{icinga_user},%{icinga_group}) %{_sysconfdir}/%{name}/zones.d/*
%config(noreplace) %{_sysconfdir}/%{name}/scripts/*
%attr(0750,%{icinga_user},%{icingacmd_group}) %{_localstatedir}/cache/%{name}
%attr(0750,%{icinga_user},%{icingacmd_group}) %dir %{_localstatedir}/log/%{name}
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_localstatedir}/log/%{name}/crash
%attr(0750,%{icinga_user},%{icingacmd_group}) %dir %{_localstatedir}/log/%{name}/compat
%attr(0750,%{icinga_user},%{icingacmd_group}) %dir %{_localstatedir}/log/%{name}/compat/archives
%attr(0750,%{icinga_user},%{icinga_group}) %{_localstatedir}/lib/%{name}
%attr(0750,%{icinga_user},%{icingacmd_group}) %ghost %dir %{_rundir}/%{name}
%attr(2750,%{icinga_user},%{icingacmd_group}) %ghost %{_rundir}/%{name}/cmd
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_localstatedir}/spool/%{name}
%attr(0770,%{icinga_user},%{icinga_group}) %dir %{_localstatedir}/spool/%{name}/perfdata
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_localstatedir}/spool/%{name}/tmp
%files bin
%defattr(-,root,root,-)
%doc COPYING README.md NEWS AUTHORS CHANGELOG.md
%dir %{_libdir}/%{name}
%dir %{_libdir}/%{name}/sbin
%{_libdir}/%{name}/sbin/%{name}
%{plugindir}/check_nscp_api
%{_datadir}/%{name}
%exclude %{_datadir}/%{name}/include
%{_mandir}/man8/%{name}.8.gz
%files common
%defattr(-,root,root,-)
%doc COPYING README.md NEWS AUTHORS CHANGELOG.md tools/syntax
%{_sysconfdir}/bash_completion.d/%{name}
%attr(0750,%{icinga_user},%{icinga_group}) %dir %{_datadir}/%{name}/include
%{_datadir}/%{name}/include/*
%files doc
%defattr(-,root,root,-)
%{_datadir}/doc/%{name}
%docdir %{_datadir}/doc/%{name}
%if %{with mysql}
%files ido-mysql
%defattr(-,root,root,-)
%doc COPYING README.md NEWS AUTHORS CHANGELOG.md
%config(noreplace) %attr(0640,%{icinga_user},%{icinga_group}) %{_sysconfdir}/%{name}/features-available/ido-mysql.conf
%{_libdir}/%{name}/libmysql_shim*
%{_datadir}/icinga2-ido-mysql
%endif
%if %{with pgsql}
%files ido-pgsql
%defattr(-,root,root,-)
%doc COPYING README.md NEWS AUTHORS CHANGELOG.md
%config(noreplace) %attr(0640,%{icinga_user},%{icinga_group}) %{_sysconfdir}/%{name}/features-available/ido-pgsql.conf
%{_libdir}/%{name}/libpgsql_shim*
%{_datadir}/icinga2-ido-pgsql
%endif
%if 0%{?use_selinux}
%files selinux
%defattr(-,root,root,0755)
%doc tools/selinux/*
%{_datadir}/selinux/*/%{selinux_modulename}.pp
%endif
%files -n vim-icinga2
%defattr(-,root,root,-)
%if "%{_vendor}" == "suse"
%{_datadir}/vim/site/syntax/%{name}.vim
%{_datadir}/vim/site/ftdetect/%{name}.vim
%else
%{_datadir}/vim/vimfiles/syntax/%{name}.vim
%{_datadir}/vim/vimfiles/ftdetect/%{name}.vim
%endif
%files -n nano-icinga2
%defattr(-,root,root,-)
%if "%{_vendor}" == "suse"
%dir %{_datadir}/nano
%endif
%{_datadir}/nano/%{name}.nanorc
%changelog
* Tue Oct 13 2020 Alexander A. Klimov <alexander.klimov@icinga.com> 2.12.1-1
- Update to 2.12.1
* Wed Aug 05 2020 Henrik Triem <henrik.triem@icinga.com> 2.12.0-1
- Update to 2.12.0
* Fri Mar 13 2020 Noah Hilverling <noah.hilverling@icinga.com> 2.12.0-0.rc1.1
- Update to 2.12.0-rc1
* Thu Oct 24 2019 Michael Friedrich <michael.friedrich@icinga.com> 2.11.2-1
- Update to 2.11.2
* Thu Oct 17 2019 Michael Friedrich <michael.friedrich@icinga.com> 2.11.1-1
- Update to 2.11.1
* Thu Sep 19 2019 Michael Friedrich <michael.friedrich@icinga.com> 2.11.0-1
- Update to 2.11.0
* Thu Jul 25 2019 Markus Frosch <markus.frosch@icinga.com> 2.11.0-0.rc1.1
- Prepare pre-release 2.11.0-rc1
* Tue Mar 19 2019 Michael Friedrich <michael.friedrich@icinga.com> 2.10.4-1
- Update to 2.10.4
* Tue Feb 26 2019 Michael Friedrich <michael.friedrich@icinga.com> 2.10.3-2
- Apply quickfix for SLES11
* Tue Feb 26 2019 Michael Friedrich <michael.friedrich@icinga.com> 2.10.3-1
- Update to 2.10.3
* Wed Nov 14 2018 Michael Friedrich <michael.friedrich@icinga.com> 2.10.2-1
- Update to 2.10.2
* Thu Oct 18 2018 Michael Friedrich <michael.friedrich@icinga.com> 2.10.1-1
- Update to 2.10.1
* Thu Oct 11 2018 Michael Friedrich <michael.friedrich@icinga.com> 2.10.0-1
- Update to 2.10.0
* Wed Sep 26 2018 Michael Friedrich <michael.friedrich@icinga.com> 2.9.2-1
- Update to 2.9.2
* Wed Jul 25 2018 Markus Frosch <markus.frosch@icinga.com> 2.10.0-0
- Remove obsoleted icinga2-libs package
* Tue Jul 24 2018 Michael Friedrich <michael.friedrich@icinga.com> 2.9.1-1
- Update to 2.9.1
* Tue Jul 17 2018 Michael Friedrich <michael.friedrich@icinga.com> 2.9.0-1
- Update to 2.9.0
* Wed Apr 25 2018 Jean Flach <jean.flach@icinga.com> 2.8.4-1
- Update to 2.8.4
* Tue Apr 24 2018 Jean Flach <jean.flach@icinga.com> 2.8.3-1
- Update to 2.8.3
* Thu Mar 22 2018 Jean Flach <jean-marcel.flach@icinga.com> 2.8.2-1
- Update to 2.8.2
* Wed Jan 17 2018 Gunnar Beutner <gunnar.beutner@icinga.com> 2.8.1-1
- Update to 2.8.1
* Fri Nov 24 2017 Markus Frosch <markus.frosch@icinga.com> 2.8.0-2
- [SLES] Add systemd limits file
- Add config(noreplace) for the systemd limits file
(no need to release every OS immediately)
- Update SELinux handling to be compatible to Fedora 27
(only affecting f27 builds)
* Thu Nov 16 2017 Jean Flach <jean-marcel.flach@icinga.com> 2.8.0-1
- Update to 2.8.0
* Thu Nov 09 2017 Gunnar Beutner <gunnar.beutner@icinga.com> 2.7.2-1
- Update to 2.7.2
* Mon Oct 02 2017 Markus Frosch <markus.frosch@icinga.com> 2.7.1-2
- Fixing systemd limit issues on openSUSE > 42.1
* Thu Sep 21 2017 Michael Friedrich <michael.friedrich@icinga.com> 2.7.1-1
- Update to 2.7.1
* Tue Jun 20 2017 Markus Frosch <markus.frosch@icinga.com> 2.7.0-1
- Update to 2.7.0

View File

@@ -0,0 +1,481 @@
# Icinga Web 2 | (c) 2013-2017 Icinga Development Team | GPLv2+
%define revision 1
Name: icingaweb2
Version: 2.8.2
Release: %{revision}%{?dist}
Summary: Icinga Web 2
Group: Applications/System
License: GPLv2+ and MIT and BSD
URL: https://icinga.com
Source0: icingaweb2-2.8.2.orig.tar.gz
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}
Packager: Icinga Team <info@icinga.com>
%if 0%{?fedora} || 0%{?rhel} || 0%{?amzn}
%if 0%{?rhel} == 7
%define php_scl rh-php73
%endif
%if 0%{?rhel} == 6
%define php_scl rh-php70
%endif
%if 0%{?el5}%{?el6}%{?amzn}
%define use_selinux 0
%else
%define use_selinux 1
%endif
%if 0%{?php_scl:1}
%define php_scl_prefix %{php_scl}-
%define php_runtime %{php_scl_prefix}php-fpm
%define php_bin /opt/rh/%{php_scl}/root/usr/bin/php
%define php_fpm 1
%else
%define php_runtime %{php}
%endif
%define php %{?php_scl_prefix}php
%define php_cli %{php}-cli
%define php_common %{php}-common
%define wwwconfigdir %{_sysconfdir}/httpd/conf.d
%define wwwuser apache
# extra requirements on RHEL
Requires: %{php}-mysqlnd
Requires: %{php}-pgsql
Requires: %{php}-ldap
%endif
# minimum required PHP version
%define php_version 5.6.0
%if 0%{?suse_version}
%define wwwconfigdir %{_sysconfdir}/apache2/conf.d
%define wwwuser wwwrun
%define php php
%define php_runtime mod_php_any
%define php_common %{php}
%define php_cli %{php}
# conflict with older PHP on SLES and openSUSE
Conflicts: php < %{php_version}
Conflicts: php5 < %{php_version}
Conflicts: php53
%endif
%{?amzn:Requires(pre): shadow-utils}
%{?fedora:Requires(pre): shadow-utils}
%{?rhel:Requires(pre): shadow-utils}
%{?suse_version:Requires(pre): pwdutils}
Requires: %{php_runtime} >= %{php_version}
Requires: %{php_common} >= %{php_version}
%if 0%{?suse_version}
Requires: apache2
%endif
Requires: icinga-l10n
Requires: icingacli = %{version}-%{release}
Requires: %{name}-common = %{version}-%{release}
Requires: php-Icinga = %{version}-%{release}
Requires: %{name}-vendor-dompdf = %{version}-%{release}
Requires: %{name}-vendor-HTMLPurifier = 1:%{version}-%{release}
Requires: %{name}-vendor-JShrink = %{version}-%{release}
Requires: %{name}-vendor-lessphp = %{version}-%{release}
Requires: %{name}-vendor-Parsedown = %{version}-%{release}
%define basedir %{_datadir}/%{name}
%define bindir %{_bindir}
%define configdir %{_sysconfdir}/%{name}
%define logdir %{_localstatedir}/log/%{name}
%define phpdir %{_datadir}/php
%define icingawebgroup icingaweb2
%define docsdir %{_datadir}/doc/%{name}
%description
Icinga Web 2
%package common
Summary: Common files for Icinga Web 2 and the Icinga CLI
Group: Applications/System
%{?amzn:Requires(pre): shadow-utils}
%{?fedora:Requires(pre): shadow-utils}
%{?rhel:Requires(pre): shadow-utils}
%{?suse_version:Requires(pre): pwdutils}
%if 0%{?suse_version} > 1320
Requires(pre): system-user-wwwrun
%endif
%description common
Common files for Icinga Web 2 and the Icinga CLI
%package -n php-Icinga
Summary: Icinga Web 2 PHP library
Group: Development/Libraries
Requires: %{php_common} >= %{php_version}
Requires: %{php}-gd %{php}-intl %{php}-mbstring
%{?rhel:Requires: %{php}-pdo %{php}-xml}
%if 0%{?rhel} >= 8 || 0%{?fedora} >= 30
Requires: %{php}-json
%endif rhel >= 8 || fedora >= 30
Requires: %{name}-vendor-zf1 = %{version}-%{release}
%{?amzn:Requires: %{php}-pecl-imagick}
%{?fedora:Requires: php-pecl-imagick}
%{?suse_version:Requires: %{php}-gettext %{php}-json %{php}-openssl %{php}-posix}
%description -n php-Icinga
Icinga Web 2 PHP library
%package -n icingacli
Summary: Icinga CLI
Group: Applications/System
Requires: icinga-l10n
Requires: %{name}-common = %{version}-%{release}
Requires: php-Icinga = %{version}-%{release}
Requires: bash-completion
Requires: %{php_cli} >= %{php_version}
%if 0%{?suse_version}
# conflict with older PHP on SLES and openSUSE
Conflicts: php < %{php_version}
Conflicts: php5 < %{php_version}
Conflicts: php53
%endif
%description -n icingacli
Icinga CLI
%if 0%{?use_selinux}
%define selinux_variants mls targeted
%package selinux
Summary: SELinux policy for Icinga Web 2
BuildRequires: checkpolicy, selinux-policy-devel, hardlink
Requires: %{name} = %{version}-%{release}
Requires(post): policycoreutils
Requires(postun): policycoreutils
%description selinux
SELinux policy for Icinga Web 2
%endif
%package vendor-dompdf
Summary: Icinga Web 2 vendor library dompdf
Group: Development/Libraries
License: LGPLv2.1
Requires: %{php_common} >= %{php_version}
Requires: %{name}-common = %{version}-%{release}
%description vendor-dompdf
Icinga Web 2 vendor library dompdf
%package vendor-HTMLPurifier
Epoch: 1
Summary: Icinga Web 2 vendor library HTMLPurifier
Group: Development/Libraries
License: LGPLv2.1
Requires: %{php_common} >= %{php_version}
Requires: %{name}-common = %{version}-%{release}
%description vendor-HTMLPurifier
Icinga Web 2 vendor library HTMLPurifier
%package vendor-JShrink
Summary: Icinga Web 2 vendor library JShrink
Group: Development/Libraries
License: BSD
Requires: %{php_common} >= %{php_version}
Requires: %{name}-common = %{version}-%{release}
%description vendor-JShrink
Icinga Web 2 vendor library JShrink
%package vendor-lessphp
Summary: Icinga Web 2 vendor library lessphp
Group: Development/Libraries
License: MIT
Requires: %{php_common} >= %{php_version}
Requires: %{name}-common = %{version}-%{release}
%description vendor-lessphp
Icinga Web 2 vendor library lessphp
%package vendor-Parsedown
Summary: Icinga Web 2 vendor library Parsedown
Group: Development/Libraries
License: MIT
Requires: %{php_common} >= %{php_version}
Requires: %{name}-common = %{version}-%{release}
%description vendor-Parsedown
Icinga Web 2 vendor library Parsedown
%package vendor-zf1
Summary: Icinga Web 2's fork of Zend Framework 1
Group: Development/Libraries
License: BSD
Requires: %{php_common} >= %{php_version}
Obsoletes: %{name}-vendor-Zend < 1.12.20
Requires: %{name}-common = %{version}-%{release}
%description vendor-zf1
Icinga Web 2's fork of Zend Framework 1
%prep
%setup -q
%if 0%{?use_selinux}
mkdir selinux
cp -p packages/selinux/icingaweb2.{fc,if,te} selinux
%endif
%build
%if 0%{?use_selinux}
cd selinux
for selinuxvariant in %{selinux_variants}
do
make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile
mv icingaweb2.pp icingaweb2.pp.${selinuxvariant}
make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile clean
done
cd -
%endif
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}/{%{basedir}/{modules,library/vendor,public},%{bindir},%{configdir}/modules,%{logdir},%{phpdir},%{wwwconfigdir},%{_sysconfdir}/bash_completion.d,%{docsdir}}
cp -prv application doc %{buildroot}/%{basedir}
cp -pv etc/bash_completion.d/icingacli %{buildroot}/%{_sysconfdir}/bash_completion.d/icingacli
cp -prv modules/{monitoring,setup,doc,translation} %{buildroot}/%{basedir}/modules
cp -prv library/Icinga %{buildroot}/%{phpdir}
cp -prv library/vendor/{dompdf,HTMLPurifier*,JShrink,lessphp,Parsedown,Zend} %{buildroot}/%{basedir}/library/vendor
cp -prv public/{css,font,img,js,error_norewrite.html,error_unavailable.html} %{buildroot}/%{basedir}/public
%if 0%{?php_fpm:1}
cp -pv packages/files/apache/icingaweb2.fpm.conf %{buildroot}/%{wwwconfigdir}/icingaweb2.conf
%else
cp -pv packages/files/apache/icingaweb2.conf %{buildroot}/%{wwwconfigdir}/icingaweb2.conf
%endif
cp -pv packages/files/bin/icingacli %{buildroot}/%{bindir}
%if 0%{?php_bin:1}
sed -i '1 s~#!.*~#!%{php_bin}~' %{buildroot}/%{bindir}/icingacli
%endif
cp -pv packages/files/public/index.php %{buildroot}/%{basedir}/public
cp -prv etc/schema %{buildroot}/%{docsdir}
cp -prv packages/files/config/modules/{setup,translation} %{buildroot}/%{configdir}/modules
%if 0%{?use_selinux}
cd selinux
for selinuxvariant in %{selinux_variants}
do
install -d %{buildroot}%{_datadir}/selinux/${selinuxvariant}
install -p -m 644 icingaweb2.pp.${selinuxvariant} %{buildroot}%{_datadir}/selinux/${selinuxvariant}/icingaweb2.pp
done
cd -
# TODO: Fix build problems on Icinga, see https://github.com/Icinga/puppet-icinga_build/issues/11
#/usr/sbin/hardlink -cv %{buildroot}%{_datadir}/selinux
%endif
%pre
getent group icingacmd >/dev/null || groupadd -r icingacmd
%if 0%{?suse_version} && 0%{?suse_version} < 01200
usermod -A icingacmd,%{icingawebgroup} %{wwwuser}
%else
usermod -a -G icingacmd,%{icingawebgroup} %{wwwuser}
%endif
exit 0
%clean
rm -rf %{buildroot}
%files
%defattr(-,root,root)
%{basedir}/application/controllers
%{basedir}/application/fonts
%{basedir}/application/forms
%{basedir}/application/layouts
%{basedir}/application/views
%{basedir}/application/VERSION
%{basedir}/doc
%{basedir}/modules
%{basedir}/public
%if 0%{?suse_version}
# for lint on OBS
%dir %{dirname:%{wwwconfigdir}}
%dir %{wwwconfigdir}
%endif
%config(noreplace) %{wwwconfigdir}/icingaweb2.conf
%attr(2775,root,%{icingawebgroup}) %dir %{logdir}
%attr(2770,root,%{icingawebgroup}) %config(noreplace) %dir %{configdir}/modules/setup
%attr(0660,root,%{icingawebgroup}) %config(noreplace) %{configdir}/modules/setup/config.ini
%attr(2770,root,%{icingawebgroup}) %config(noreplace) %dir %{configdir}/modules/translation
%attr(0660,root,%{icingawebgroup}) %config(noreplace) %{configdir}/modules/translation/config.ini
%{docsdir}
%docdir %{docsdir}
%pre common
getent group %{icingawebgroup} >/dev/null || groupadd -r %{icingawebgroup}
exit 0
%files common
%defattr(-,root,root)
%dir %{basedir}
%dir %{basedir}/application
%dir %{basedir}/library
%dir %{basedir}/library/vendor
%dir %{basedir}/modules
%{basedir}/application/locale
%attr(2770,root,%{icingawebgroup}) %config(noreplace) %dir %{configdir}
%attr(2770,root,%{icingawebgroup}) %config(noreplace) %dir %{configdir}/modules
%files -n php-Icinga
%defattr(-,root,root)
%if 0%{?suse_version}
# for lint on OBS
%dir %{phpdir}
%endif
%{phpdir}/Icinga
%files -n icingacli
%defattr(-,root,root)
%{basedir}/application/clicommands
%{_sysconfdir}/bash_completion.d/icingacli
%attr(0755,root,root) %{bindir}/icingacli
%if 0%{?use_selinux}
%post selinux
for selinuxvariant in %{selinux_variants}
do
%{_sbindir}/semodule -s ${selinuxvariant} -i %{_datadir}/selinux/${selinuxvariant}/icingaweb2.pp &> /dev/null || :
done
%{_sbindir}/restorecon -R %{basedir} &> /dev/null || :
%{_sbindir}/restorecon -R %{configdir} &> /dev/null || :
%{_sbindir}/restorecon -R %{logdir} &> /dev/null || :
%postun selinux
if [ $1 -eq 0 ] ; then
for selinuxvariant in %{selinux_variants}
do
%{_sbindir}/semodule -s ${selinuxvariant} -r icingaweb2 &> /dev/null || :
done
[ -d %{basedir} ] && %{_sbindir}/restorecon -R %{basedir} &> /dev/null || :
[ -d %{configdir} ] && %{_sbindir}/restorecon -R %{configdir} &> /dev/null || :
[ -d %{logdir} ] && %{_sbindir}/restorecon -R %{logdir} &> /dev/null || :
fi
%files selinux
%defattr(-,root,root,0755)
%doc selinux/*
%{_datadir}/selinux/*/icingaweb2.pp
%endif
%files vendor-dompdf
%defattr(-,root,root)
%{basedir}/library/vendor/dompdf
%files vendor-HTMLPurifier
%defattr(-,root,root)
%{basedir}/library/vendor/HTMLPurifier
%{basedir}/library/vendor/HTMLPurifier.autoload.php
%{basedir}/library/vendor/HTMLPurifier.php
%files vendor-JShrink
%defattr(-,root,root)
%{basedir}/library/vendor/JShrink
%files vendor-lessphp
%defattr(-,root,root)
%{basedir}/library/vendor/lessphp
%files vendor-Parsedown
%defattr(-,root,root)
%{basedir}/library/vendor/Parsedown
%files vendor-zf1
%defattr(-,root,root)
%{basedir}/library/vendor/Zend
%changelog
* Tue Aug 18 2020 Johannes Meyer <johannes.meyer@icinga.com> 2.8.2-1
- Update to 2.8.2
* Mon Jun 29 2020 Johannes Meyer <johannes.meyer@icinga.com> 2.8.1-1
- Update to 2.8.1
* Mon Jun 8 2020 Johannes Meyer <johannes.meyer@icinga.com> 2.8.0-1
- Update to 2.8.0
- Add new requirement for package icinga-l10n
- [EPEL 7] We now require PHP 7.3 instead of PHP 7.1
- Please check uprading docs at /usr/share/icingaweb2/doc/80-Upgrading.md
* Fri Oct 18 2019 Johannes Meyer <johannes.meyer@icinga.com> 2.7.3-1
- Update to 2.7.3
* Wed Oct 16 2019 Johannes Meyer <johannes.meyer@icinga.com> 2.7.2-1
- Update to 2.7.2
* Wed Aug 14 2019 Johannes Meyer <johannes.meyer@icinga.com> 2.7.1-1
- Update to 2.7.1
* Tue Jul 30 2019 Johannes Meyer <johannes.meyer@icinga.com> 2.7.0-1
- Update to 2.7.0
* Wed Apr 24 2019 Johannes Meyer <johannes.meyer@icinga.com> 2.6.3-1
- Update to 2.6.3
* Wed Nov 21 2018 Eric Lippmann <eric.lippmann@icinga.com> 2.6.2-1
- Update to 2.6.2
* Thu Aug 02 2018 Eric Lippmann <eric.lippmann@icinga.com> 2.6.1-1
- Update to 2.6.1
* Thu Jul 19 2018 Blerim Sheqa <blerim.sheqa@icinga.com> 2.6.0-1
- Update to 2.6.0
* Fri Apr 27 2018 Eric Lippmann <eric.lippmann@icinga.com> 2.5.3-1
- Update to 2.5.3
* Thu Apr 26 2018 Eric Lippmann <eric.lippmann@icinga.com> 2.5.2-1
- Update to 2.5.2
* Mon Jan 22 2018 Markus Frosch <markus.frosch@icinga.com> 2.5.1-1
- Update to 2.5.1
- Remove FPM patches
* Wed Nov 29 2017 Eric Lippmann <eric.lippmann@icinga.com> 2.5.0-2
- FPM: Add patch to support both Apache >= 2.4 and Apache < 2.4
* Tue Nov 28 2017 Eric Lippmann <eric.lippmann@icinga.com> 2.5.0-1
- Install error_unavailable.html
- Add patch to fix Apache FPM config
* Mon Nov 27 2017 Markus Frosch <markus.frosch@icinga.com> 2.5.0-1
- Update to 2.5.0
- All packages now require PHP >= 5.6
- [EPEL 6 + 7] We now require PHP 7 from SCL packages, php-fpm as runtime engine
- [SUSE / openSUSE] Requirements will force the installation of php7
- Please check upgrading docs at /usr/share/icingaweb2/doc/80-Upgrading.md
* Thu Sep 28 2017 Markus Frosch <markus.frosch@icinga.com> 2.4.2-1
- Update to 2.4.2

View File

@@ -1,8 +1,8 @@
%global PRERELEASE r
%global myRELEASE 1
%global DIRVERSION %{version}
#global GITCOMMIT Gotham_r2-ge988513
# use the line below for pre-releases
%global DIRVERSION %{version}
%global _hardened_build 1
# We support hte following options:
@@ -16,7 +16,11 @@
%if 0%{?fedora}
# (libbluray in EPEL 6 is too old.)
%global _with_libbluray 1
%if 0%{?fedora} < 31
%global _with_cwiid 1
%else
%global _with_cwiid 0
%endif
%global _with_libssh 1
%global _with_libcec 1
%global _with_external_ffmpeg 1
@@ -29,8 +33,8 @@
%endif
Name: kodi
Version: 18.5
Release: 99.%{myRELEASE}.%{PRERELEASE}%{?dist}
Version: 18.8
Release: 100.%{myRELEASE}.%{PRERELEASE}%{?dist}
Summary: Media center
License: GPLv2+ and GPLv3+ and LGPLv2+ and BSD and MIT
@@ -76,6 +80,12 @@ Patch3: kodi-18-annobin-workaround.patch
Patch4: kodi-18-python3-0001.patch
Patch5: kodi-18-python3-0002.patch
# Fix missing include (gcc requirement)
Patch6: kodi-18-assert.patch
# Workaround for brp-mangle-shebangs behavior (RHBZ#1787088)
Patch7: kodi-18-brp-mangle-shebangs.patch
%ifarch x86_64 i686
%global _with_crystalhd 1
%endif
@@ -83,8 +93,6 @@ Patch5: kodi-18-python3-0002.patch
# Upstream does not support ppc64
ExcludeArch: %{power64}
BuildRequires: SDL2-devel
BuildRequires: SDL_image-devel
BuildRequires: a52dec-devel
BuildRequires: afpfs-ng-devel
BuildRequires: alsa-lib-devel
@@ -155,6 +163,7 @@ BuildRequires: libcrystalhd-devel
%endif
BuildRequires: libcurl-devel
BuildRequires: libdca-devel
BuildRequires: libdrm-devel
BuildRequires: libidn2-devel
BuildRequires: libinput-devel
%if 0%{?el6}
@@ -365,6 +374,9 @@ This package contains the Kodi binary for X11 servers.
%patch5 -p1 -b.python3-0002
%endif
%patch6 -p1 -b.assert
%patch7 -p1 -b.brp-mangle-shebangs
# Fix up Python shebangs
%if 0%{?fedora} > 31
pathfix.py -pni "%{__python3} %{py3_shbang_opts}" \
@@ -401,6 +413,7 @@ do
-DFFMPEG_URL=%{SOURCE5} \
%endif
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DENABLE_DEBUGFISSION=OFF \
-GNinja \
-DENABLE_EVENTCLIENTS=ON \
-DENABLE_INTERNAL_CROSSGUID=OFF \
@@ -437,9 +450,6 @@ done
# remove the doc files from unversioned /usr/share/doc/xbmc, they should be in versioned docdir
rm -r $RPM_BUILD_ROOT/%{_datadir}/doc/
#rm -f ${RPM_BUILD_ROOT}%{_libdir}/debug/usr/bin/*.debug
#/usr/lib/debug/usr/bin/kodi-wiiremote-18.4-99.1.r.fc31.x86_64.debug
desktop-file-install \
--dir=${RPM_BUILD_ROOT}%{_datadir}/applications \
$RPM_BUILD_ROOT%{_datadir}/applications/kodi.desktop
@@ -455,6 +465,8 @@ ln -s %{python3_sitearch}/PIL $RPM_BUILD_ROOT%{_libdir}/kodi/addons/script.modul
%else
ln -s %{python2_sitearch}/PIL $RPM_BUILD_ROOT%{_libdir}/kodi/addons/script.module.pil/lib/PIL
%endif
#install -d $RPM_BUILD_ROOT%{_libdir}/xbmc/addons/script.module.pysqlite/lib
#ln -s %{python2_sitearch}/pysqlite2 $RPM_BUILD_ROOT%{_libdir}/xbmc/addons/script.module.pysqlite/lib/pysqlite2
# Use external font files instead of bundled ones
ln -sf %{_fontbasedir}/dejavu/DejaVuSans-Bold.ttf ${RPM_BUILD_ROOT}%{_datadir}/kodi/addons/skin.estouchy/fonts/
@@ -468,6 +480,8 @@ mv docs/manpages ${RPM_BUILD_ROOT}%{_mandir}/man1/
rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/kodi-wiiremote.1
%endif
# remove not needed dvdnav output:
rm -rf ${RPM_BUILD_ROOT}/root
%post firewalld
%firewalld_reload
@@ -544,6 +558,21 @@ rm -f ${RPM_BUILD_ROOT}%{_mandir}/man1/kodi-wiiremote.1
%changelog
* Sun Aug 2 2020 Daniel Steiner <daniel.steiner@greenmail.ch>
- Update to 18.8
* Wed May 20 2020 Daniel Steiner <daniel.steiner@greenmail.ch>
- Update to 18.7
* Sat Apr 11 2020 Daniel Steiner <daniel.steiner@greenmail.ch>
- Nvidia dependencies removed.
* Sun Mar 8 2020 Daniel Steiner <daniel.steiner@greenmail.ch>
- Nvidia depend build with ffmpeg-nvidia library.
* Fri Mar 6 2020 Daniel Steiner <daniel.steiner@greenmail.ch>
- Update to 18.6
* Sat Nov 16 2019 Daniel Steiner <daniel.steiner@greenmail.ch>
- Update to 18.5

114
fedora/SPECS/l10n.spec Normal file
View File

@@ -0,0 +1,114 @@
# Icinga L10n | (c) 2020 Icinga GmbH
%define revision 1
%define basedir %{_datadir}/icinga-L10n
%if 0%{?el5}%{?el6}%{?amzn}%{?suse_version}
%define use_selinux 0
%else
%define use_selinux 1
%define selinux_variants mls targeted
%endif
Name: icinga-l10n
Version: 1.0.0
Release: %{revision}%{?dist}
Summary: Icinga L10n
License: GPLv2+
URL: https://icinga.com
Source0: https://github.com/Icinga/L10n/archive/v%{version}.tar.gz
Source1: selinux.tgz
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}
Packager: Icinga GmbH <info@icinga.com>
%prep
%setup -q -n L10n-1.0.0
tar xzf %{S:1}
%build
%if 0%{?use_selinux}
cd selinux
for selinuxvariant in %{selinux_variants}
do
make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile
mv icinga-l10n.pp icinga-l10n.pp.${selinuxvariant}
make NAME=${selinuxvariant} -f /usr/share/selinux/devel/Makefile clean
done
cd -
%endif
%install
mkdir -p %{buildroot}/%{basedir}
cp *.md %{buildroot}/%{basedir}
cp COPYING %{buildroot}/%{basedir}
cp -prv locale %{buildroot}/%{basedir}
find %{buildroot}/%{basedir}/locale -name *.po -delete
%if 0%{?use_selinux}
cd selinux
for selinuxvariant in %{selinux_variants}
do
install -d %{buildroot}%{_datadir}/selinux/${selinuxvariant}
install -p -m 644 icinga-l10n.pp.${selinuxvariant} %{buildroot}%{_datadir}/selinux/${selinuxvariant}/icinga-l10n.pp
done
cd -
%endif
%clean
rm -rf %{buildroot}
# Main package
%description
L10n (short for Localization) provides all translations available for Icinga.
%files
%defattr(-,root,root)
%{basedir}
%doc README.md
%doc CONTRIBUTING.md
# Selinux package
%if 0%{?use_selinux}
%package selinux
Summary: SELinux policy for Icinga L10n
BuildRequires: checkpolicy, selinux-policy-devel
Requires: %{name} = %{version}-%{release}
Requires(post): policycoreutils
Requires(postun): policycoreutils
%description selinux
SELinux policy for Icinga L10n
%post selinux
for selinuxvariant in %{selinux_variants}
do
%{_sbindir}/semodule -s ${selinuxvariant} -i %{_datadir}/selinux/${selinuxvariant}/icinga-l10n.pp &> /dev/null || :
done
%{_sbindir}/restorecon -R %{basedir} &> /dev/null || :
%postun selinux
if [ $1 -eq 0 ] ; then
for selinuxvariant in %{selinux_variants}
do
%{_sbindir}/semodule -s ${selinuxvariant} -r icinga-l10n &> /dev/null || :
done
[ -d %{basedir} ] && %{_sbindir}/restorecon -R %{basedir} &> /dev/null || :
fi
%files selinux
%defattr(-,root,root,0755)
%doc selinux/*
%{_datadir}/selinux/*/icinga-l10n.pp
%endif
%changelog
* Mon Jun 8 2020 Johannes Meyer <johannes.meyer@icinga.com> 1.0.0-1
- Initial release

View File

@@ -6,7 +6,7 @@
# wget http://www.makemkv.com/download/makemkv-oss-$v.tar.gz -O makemkv-oss-$v.tar.gz
Name: makemkv
Version: 1.14.5
Version: 1.15.0
Release: 0%{?dist}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Summary: One click DVD and Blu-ray converter
@@ -86,13 +86,19 @@ popd
%{_datarootdir}/MakeMKV/*
%changelog
* Sat Sep 14 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Mar 6 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to 1.15.0.
* Mon Dec 30 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to 1.14.7.
* Sat Sep 14 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to 1.14.5.
* Sat Jul 27 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sat Jul 27 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to 1.14.4.
* Thu Apr 4 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Thu Apr 4 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to 1.14.3.
* Fri Nov 16 2018 Daniel Steiner <daniel.steiner@greenmail.ch>

View File

@@ -0,0 +1,114 @@
%{!?_httpd_mmn: %{expand: %%global _httpd_mmn %%(cat %{_includedir}/httpd/.mmn || echo 0-0)}}
%{!?_httpd_moddir: %{expand: %%global _httpd_moddir %%{_libdir}/httpd/modules}}
%{!?_httpd_confdir: %{expand: %%global _httpd_confdir %{_sysconfdir}/httpd/conf.d}}
# Optionally build with hiredis if --with hiredis is passed
%{!?_with_hiredis: %{!?_without_hiredis: %global _without_hiredis --without-hiredis}}
# It is an error if both or neither required options exist.
%{?_with_hiredis: %{?_without_hiredis: %{error: both _with_hiredis and _without_hiredis}}}
%{!?_with_hiredis: %{!?_without_hiredis: %{error: neither _with_hiredis nor _without_hiredis}}}
# /etc/httpd/conf.d with httpd < 2.4 and defined as /etc/httpd/conf.modules.d with httpd >= 2.4
%{!?_httpd_modconfdir: %{expand: %%global _httpd_modconfdir %%{_sysconfdir}/httpd/conf.d}}
%global httpd_pkg_cache_dir /var/cache/httpd/mod_auth_openidc
Name: mod_auth_openidc
Version: 2.4.5
Release: 1%{?dist}
Summary: OpenID Connect auth module for Apache HTTP Server
License: ASL 2.0
URL: https://github.com/zmartzone/mod_auth_openidc
Source0: https://github.com/zmartzone/mod_auth_openidc/releases/download/v%{version}/mod_auth_openidc-%{version}.tar.gz
BuildRequires: gcc
BuildRequires: httpd-devel
BuildRequires: openssl-devel
BuildRequires: curl-devel
BuildRequires: jansson-devel
BuildRequires: pcre-devel
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: cjose-devel
#BuildRequires: jq-devel
BuildRequires: jq
%{?_with_hiredis:BuildRequires: hiredis-devel}
Requires: httpd-mmn = %{_httpd_mmn}
%description
This module enables an Apache 2.x web server to operate as
an OpenID Connect Relying Party and/or OAuth 2.0 Resource Server.
%prep
%setup -q
%build
# workaround rpm-buildroot-usage
export MODULES_DIR=%{_httpd_moddir}
export APXS2_OPTS='-S LIBEXECDIR=${MODULES_DIR}'
autoreconf
%configure \
--with-jq=/usr/lib64/ \
%{?_with_hiredis} \
%{?_without_hiredis}
make %{?_smp_mflags}
%check
export MODULES_DIR=%{_httpd_moddir}
export APXS2_OPTS='-S LIBEXECDIR=${MODULES_DIR}'
make test
%install
mkdir -p $RPM_BUILD_ROOT%{_httpd_moddir}
make install MODULES_DIR=$RPM_BUILD_ROOT%{_httpd_moddir}
install -m 755 -d $RPM_BUILD_ROOT%{_httpd_modconfdir}
echo 'LoadModule auth_openidc_module modules/mod_auth_openidc.so' > \
$RPM_BUILD_ROOT%{_httpd_modconfdir}/10-auth_openidc.conf
install -m 755 -d $RPM_BUILD_ROOT%{_httpd_confdir}
install -m 644 auth_openidc.conf $RPM_BUILD_ROOT%{_httpd_confdir}
# Adjust httpd cache location in install config file
sed -i 's!/var/cache/apache2/!/var/cache/httpd/!' $RPM_BUILD_ROOT%{_httpd_confdir}/auth_openidc.conf
install -m 700 -d $RPM_BUILD_ROOT%{httpd_pkg_cache_dir}
install -m 700 -d $RPM_BUILD_ROOT%{httpd_pkg_cache_dir}/metadata
install -m 700 -d $RPM_BUILD_ROOT%{httpd_pkg_cache_dir}/cache
%files
%if 0%{?rhel} && 0%{?rhel} < 7
%doc LICENSE.txt
%else
%license LICENSE.txt
%endif
%doc ChangeLog
%doc AUTHORS
%doc README.md
%{_httpd_moddir}/mod_auth_openidc.so
%config(noreplace) %{_httpd_modconfdir}/10-auth_openidc.conf
%config(noreplace) %{_httpd_confdir}/auth_openidc.conf
%dir %attr(0700, apache, apache) %{httpd_pkg_cache_dir}
%dir %attr(0700, apache, apache) %{httpd_pkg_cache_dir}/metadata
%dir %attr(0700, apache, apache) %{httpd_pkg_cache_dir}/cache
%changelog
* Sun Nov 29 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to 2.4.5.
* Sat Oct 31 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build on Fedora 33.
* Sat Sep 5 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Update to 2.4.4.1.
* Mon Jul 6 2020 Daniel Steiner <daniel.steiner@threema.ch>
- Update to 2.4.3.
* Thu Feb 13 2020 Daniel Steiner <daniel.steiner@threema.ch>
- Update to 2.4.1.
* Thu Dec 19 2019 Daniel Steiner <daniel.steiner@threema.ch>
- First initial build.

View File

@@ -1,12 +1,13 @@
Name: mod_tile
Version: 0.5
Release: 2%{?dist}
Release: 3%{?dist}
Summary: A program to efficiently render and serve map tiles for www.openstreetmap.org map using Apache and Mapnik.
License: GPLv2
URL: https://github.com/openstreetmap/mod_tile
Source0: %{name}-%{version}.tgz
Source1: 10-tile.conf
Patch0: mod_tile-move-variables-to-prevent-duplicates.patch
BuildRequires: httpd-devel, apr
BuildRequires: mapnik-devel
@@ -32,6 +33,7 @@ at compile time, see: render_config.h
%prep
%setup -q -n %{name}-%{version}
%patch0 -p1 -b duplicated-variables
%build
%configure \
@@ -69,9 +71,12 @@ fi
%{_mandir}/man8/*
%changelog
* Sat Nov 9 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Jul 23 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Patch for duplicated variables definition added, this compiles now on Fedora 32 and gcc 10.
* Sat Nov 9 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Fix for modules config path.
* Fri Nov 8 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Fri Nov 8 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build on Fedora 31 httpd-2.4.41.

View File

@@ -11,7 +11,7 @@ Release: %{svnrel}%{?dist}
Summary: Nagios/Icinga own plugins
License: GPL
URL: http://www.daniel-steiner.org/
URL: http://www.dsteiner.ch/
# cd ~/svn; svn co --username sda https://intranet.trivadis.com/svn/TrivadisIT/Scripting/trunk/nagios/
# cd ~/svn; svn up
# tar --exclude=templates --exclude=.svn -czf ../rpmbuild/SOURCES/nagios-952.tgz nagios

View File

@@ -19,7 +19,7 @@
Name: nginx
Epoch: 1
Version: 1.17.6
Version: 1.19.5
Release: 1%{?dist}
Summary: A high performance web server and reverse proxy server
@@ -150,7 +150,7 @@ BuildRequires: perl-devel
%if 0%{?fedora} >= 24
BuildRequires: perl-generators
%endif
BuildRequires: perl(ExtUtils::Embed)
BuildRequires: perl-ExtUtils-Embed
Requires: nginx
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
@@ -569,6 +569,27 @@ fi
[ "%{_builddir}" != "/" ] && [ -d "%{_builddir}" ] && rm -rf %{_builddir}/*
%changelog
* Sun Nov 29 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Updated to mainline version 1.19.5.
* Sat Oct 31 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Updated to mainline version 1.19.4, first build for Fedora 33.
* Fri Sep 4 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Updated to mainline version 1.19.2.
* Fri Jul 17 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Updated to mainline version 1.19.1.
* Sat May 2 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Updated to mainline version 1.18.0.
* Fri Mar 27 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Updated to mainline version 1.17.9.
* Sat Feb 22 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Updated to mainline version 1.17.8.
* Thu Nov 21 2019 Daniel Steiner <daniel.steiner@greenmail.ch> 1.17.6-1
- Updated to mainline version 1.17.6.

View File

@@ -44,6 +44,6 @@ specify your log and format, even parse remote Apache common access log with eas
%python3_sitelib/%{name}*.egg-info
%changelog
* Sat Jan 26 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sat Jan 26 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First release for Fedora 29

View File

@@ -0,0 +1,44 @@
Name: phyghtmap
Version: 2.21
Release: 1%{?dist}
Summary: Generate OSM contour lines from NASA SRTM data
License: GPLv2+
URL: http://katze.tfiu.de/projects/phyghtmap/
Source0: http://katze.tfiu.de/projects/%{name}/%{name}_%{version}.orig.tar.gz
BuildArch: noarch
BuildRequires: python3-devel
BuildRequires: python3-setuptools
Requires: python3-numpy
Requires: python3-beautifulsoup4
Requires: python3-matplotlib
%description
%{name} is a little program which lets you easily generate OSM contour
lines from NASA SRTM data.
%prep
%setup -q -n %{name}-%{version}
%build
%py3_build
%install
%py3_install
install -Dpm 644 docs/%{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1
%files
%doc README LICENSE_GPL-2 COPYRIGHT Changelog
%{_bindir}/%{name}
%{_mandir}/man1/%{name}.1*
%{python3_sitelib}/%{name}/
%{python3_sitelib}/%{name}-%{version}-py*.egg-info/
%changelog
* Sat Jan 11 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Initial build

View File

@@ -1,7 +1,7 @@
%define gitversion git.ff7cd69
Name: pnp4nagios
Version: 0.6.27
Release: 1.%{gitversion}%{?dist}
Release: 2.%{gitversion}%{?dist}
Summary: Nagios performance data analysis tool
Group: Applications/System
@@ -14,6 +14,7 @@ Source3: pnp4nagios-README.fedora
Patch1: pnp4nagios-httpd24.patch
Patch2: pnp4nagios-pnp-helper.patch
Patch3: pnp4nagios-fpdi.patch
Patch4: pnp4nagios_kohana_magic_quotes.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# this package requires icinga2 instead of nagios!
@@ -43,6 +44,7 @@ and stores them automatically into RRD-databases.
#%patch1 -p1
#%patch2 -p0
#%patch3 -p0
%patch4 -p0
autoreconf
cp -p %{SOURCE3} README.fedora
@@ -157,6 +159,9 @@ fi
%{_datadir}/nagios/html/%{name}
%changelog
* Fri Aug 7 2018 Daniel Steiner <dsteiner@redhat.com> - 0.6.27-2-gitff7cd69
- Patch for Kohana magic_quotes problem.
* Thu Dec 20 2018 Daniel Steiner <dsteiner@redhat.com> - 0.6.27-1-gitff7cd69
- Upgrade to git master version ff7cd69.

View File

@@ -10,12 +10,13 @@
%global __arch_install_post /usr/lib/rpm/check-buildroot
# Macros
%define pyversion 3.9
%define name polemarch
%define shortname polemarch
%define namebase polemarch
%define user polemarch
%define datad poledata
%define version 1.5.1
%define version 1.8.1
%define release 1
%define __prelink_undo_cmd %{nil}
%define _binaries_in_noarch_packages_terminate_build 0
@@ -34,6 +35,8 @@ Source0: %name-%version.tar.gz
Source1: %name-settings
Source2: %name-redis-patch.sh
Source3: %name-mysql-patch.sh
# compiled binary tree:
Source10: %name-bin-%{version}.tgz
Patch0: %name-python3.patch
Patch1: %name-venvctrl.patch
@@ -41,6 +44,10 @@ Patch1: %name-venvctrl.patch
# Build fails, if these two packages are installed!
BuildRequires: python3, openssl-devel, libyaml-devel, python3-mysql
BuildRequires: python3-sphinxcontrib-blockdiag, python3-virtualenv, openldap-devel
BuildRequires: python3-amqp, python3-vine, python3-billiard, python3-celery, python3-kombu
BuildRequires: python3-redis, python3-Cython, python3-django-timezone-field, python3-markdown2
BuildRequires: python3-netaddr, python3-ldap, python3-smmap
BuildRequires: nodejs-has-yarn, yarnpkg, nodejs >= 10.0
Requires: python3, openssl-devel, libxcrypt-compat
Requires: python3-virtualenv, python3-mysql, python3-PyMySQL
Requires: git
@@ -48,6 +55,10 @@ Requires: libyaml-devel
Requires: krb5-devel, krb5-libs, openldap-devel
Requires: mailcap
Requires: python3-redis >= 3.2.0, python3-django-redis >= 4.0.0, redis >= 5.0.0
Requires: python3-gitdb, python3-GitPython
Requires: python3-amqp, python3-vine, python3-billiard, python3-celery, python3-kombu
Requires: python3-redis, python3-Cython, python3-django-timezone-field, python3-markdown2
Requires: python3-netaddr, python3-ldap, python3-smmap
%description
Polemarch is service for orchestration infrastructure by ansible.
@@ -56,10 +67,19 @@ Simply WEB gui for orchestration infrastructure by ansible playbooks.
%prep
%setup -q -n %name-%version
#patch0 -b python3-patch
%patch1 -b venvctrl-patch
%install
make BUILD_DIR=%{buildroot}
install %{S:1} %{buildroot}%{_sysconfdir}/%{namebase}/settings.ini
#/usr/bin/make BUILD_DIR=%{buildroot}
# Install binary package (compiling does not work here! You need to compile it first!)
# cd BUILD/polemarch-1.7.3
# /usr/bin/patch --no-backup-if-mismatch -p0 -b --suffix ~/rpmbuild/SOURCES/venvctrl-patch --fuzz=0
# /usr/bin/make BUILD_DIR=/root/rpmbuild/BUILDROOT/polemarch
# cd /root/rpmbuild/BUILDROOT/polemarch
# tar czf ~/rpmbuild/SOURCES/polemarch-bin-1.7.3.tgz .
# don't forget to replace version and release number!
tar xzf %{S:10} -C %{buildroot}
/usr/bin/install %{S:1} %{buildroot}%{_sysconfdir}/%{namebase}/settings.ini
# fix for python3 redis access:
bash %{S:2}
# fix or workaround for mysqlclient version check:
@@ -69,10 +89,17 @@ mv %{buildroot}/var/run %{buildroot}/
# create additional directories:
install -d %{buildroot}/%{_var}/log/%{name}
install -d %{buildroot}/opt/%{datad}
ln -s %{python3_sitearch}/MySQLdb %{buildroot}/opt/polemarch/lib/python3.7/site-packages/MySQLdb
ln -s %{python3_sitelib}/pymysql %{buildroot}/opt/polemarch/lib/python3.7/site-packages/pymysql
ln -s %{python3_sitearch}/MySQLdb %{buildroot}/opt/polemarch/lib/python%{pyversion}/site-packages/MySQLdb
ln -s %{python3_sitelib}/pymysql %{buildroot}/opt/polemarch/lib/python%{pyversion}/site-packages/pymysql
# remove compiled git python package, which are not working on Fedora 32 and pyton3.8
rm -rf %{buildroot}/opt/polemarch/lib/python%{pyversion}/site-packages/git
ln -s %{python3_sitelib}/git %{buildroot}/opt/polemarch/lib/python%{pyversion}/site-packages/git
rm -rf %{buildroot}/opt/polemarch/lib/python%{pyversion}/site-packages/gitdb
ln -s %{python3_sitelib}/gitdb %{buildroot}/opt/polemarch/lib/python%{pyversion}/site-packages/gitdb
# remove buildroot path in opt/polemarch/bin/activate.xsh:
sed -i -e 's|/root/rpmbuild/BUILDROOT/polemarch.*x86_64||' %{buildroot}/opt/polemarch/bin/activate.xsh
# remove .gitignore file:
rm -f %{buildroot}/opt/polemarch/.gitignore
%pre
getent group %{user} >/dev/null || \
@@ -98,9 +125,9 @@ sudo -u %{user} /opt/%{name}/bin/%{shortname}ctl migrate
%dir %attr(-,%{user},%{user}) /opt/%{datad}
%dir %attr(-,%{user},%{user}) %{_var}/log/%{namebase}
%attr(-,%{user},%{user}) /opt/%{namebase}/bin/*
%attr(-,%{user},%{user}) /opt/%{namebase}/include/*
%attr(-,%{user},%{user}) /opt/%{namebase}/lib/*
/opt/%{namebase}/lib64
/opt/%{namebase}/*.cfg
%dir %{_sysconfdir}/%{namebase}
%{_rundir}/%{namebase}
%{_var}/lock/%{namebase}
@@ -114,6 +141,30 @@ sudo -u %{user} /opt/%{name}/bin/%{shortname}ctl migrate
[ "%{_builddir}" != "/" ] && [ -d "%{_builddir}" ] && rm -rf %{_builddir}/*
%changelog
* Sat Oct 31 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to 1.8.1 version, first build on Fedora 33 and python 3.9.
* Fri Aug 14 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to 1.8.0 version.
* Mon May 18 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Build dependencies added (nodejs and yarn).
* Fri May 15 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to 1.7.6 version.
* Sun May 3 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Fixes for Fedora 32 installation. Git and gitdb packages are now symlinked.
* Fri Jan 17 2020 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to 1.6.2 version.
* Mon Dec 30 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to 1.6.1 version.
* Sun Dec 15 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to 1.6.0 version.
* Fri Dec 6 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
- Update to 1.5.1 version.

View File

@@ -4,7 +4,7 @@ Release: 3%{?dist}
Summary: A beautiful and useful prompt generator for Bash, ZSH, Fish, and tcsh
License: MIT
URL: https://dev.daniel-steiner.org/dani/powerline-shell-enhanced#segment-configuration
URL: https://dev.dsteiner.ch/dani/powerline-shell-enhanced#segment-configuration
Source0: powerline_shell.tar.gz
%define debug_package %{nil}
@@ -57,12 +57,12 @@ The generated prompts are designed to resemble powerline, but otherwise this pro
%changelog
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Dependency added for pythonX-setuptools rpm.
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Dependency added for pythonX-argparse rpm.
* Sat Feb 2 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sat Feb 2 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build.

130
fedora/SPECS/proj6.spec Normal file
View File

@@ -0,0 +1,130 @@
%global proj_version 6.3.0
%global datumgrid_version 1.8
%define realname proj
# Prefix is /usr/local!
%define _prefix /usr/local
%define _includedir %{_prefix}/include
%define _datadir %{_prefix}/share
%define _bindir %{_prefix}/bin
%define _libdir %{_prefix}/lib64
%define _mandir %{_datadir}/man
Name: proj6
Version: %{proj_version}
Release: 1%{?dist}
Summary: Cartographic projection software (PROJ.4)
License: MIT
URL: https://proj4.org
Source0: https://download.osgeo.org/%{realname}/%{realname}-%{version}.tar.gz
BuildRequires: libtool gcc-c++
%description
Proj and invproj perform respective forward and inverse transformation of
cartographic data to or from cartesian data with a wide range of selectable
projection functions.
%package devel
Summary: Development files for PROJ.4
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
This package contains libproj and the appropriate header files and man pages.
%package static
Summary: Development files for PROJ.4
Requires: %{name}-devel%{?_isa} = %{version}-%{release}
%description static
This package contains libproj static library.
%prep
%setup -q -n %{realname}-%{version}
%build
# rebuild due to patch
autoreconf -i
./configure \
--prefix=%{_prefix} \
--libdir=%{_libdir} \
--includedir=%{_includedir} \
--datarootdir=%{_datadir}
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
%make_build
%install
make install DESTDIR=%{buildroot}
chmod -x %{buildroot}%{_libdir}/libproj.la
# Install cmake config manually because we use autotools for building
mkdir -p %{buildroot}%{_datadir}/cmake/Modules/
cat << EOF > %{buildroot}%{_datadir}/cmake/Modules/FindPROJ4.cmake
set(PROJ4_FOUND 1)
set(PROJ4_INCLUDE_DIRS %{_includedir})
set(PROJ4_LIBRARIES proj)
if(\${LIB_SUFFIX} MATCHES 64)
set(PROJ4_LIBRARY_DIRS %{_libdir})
else()
set(PROJ4_LIBRARY_DIRS %{_prefix}/lib)
endif()
set(PROJ4_BINARY_DIRS %{_bindir})
set(PROJ4_VERSION %{proj_version})
message(STATUS "Found PROJ4: version \${PROJ4_VERSION}")
EOF
%check
LD_LIBRARY_PATH=%{buildroot}%{_libdir} \
make PROJ_LIB=%{buildroot}%{_datadir}/%{realname} check || ( cat src/test-suite.log; exit 1 )
%files
%doc NEWS AUTHORS COPYING README ChangeLog
%{_bindir}/*
%{_mandir}/man1/*.1*
%{_libdir}/libproj.so.15*
%dir %{_datadir}/%{realname}
%{_datadir}/%{realname}/CH
%{_datadir}/%{realname}/GL27
%{_datadir}/%{realname}/ITRF2000
%{_datadir}/%{realname}/ITRF2008
%{_datadir}/%{realname}/ITRF2014
%{_datadir}/%{realname}/nad.lst
%{_datadir}/%{realname}/nad27
%{_datadir}/%{realname}/nad83
%{_datadir}/%{realname}/null
%{_datadir}/%{realname}/other.extra
%{_datadir}/%{realname}/world
%{_datadir}/%{realname}/projjson.schema.json
%{_datadir}/%{realname}/%{realname}.db
%files devel
%{_mandir}/man3/*.3*
%{_includedir}/*.h
%{_includedir}/%{realname}/*.hpp
%{_libdir}/libproj.so
%{_libdir}/pkgconfig/%{realname}.pc
%{_datadir}/cmake/Modules/FindPROJ4.cmake
%exclude %{_libdir}/libproj.a
%exclude %{_libdir}/libproj.la
%files static
%{_libdir}/libproj.a
%{_libdir}/libproj.la
%changelog
* Sat Jan 11 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- New name proj6 and relocation to /usr/local.
* Mon Jan 6 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Initial build

View File

@@ -91,6 +91,6 @@ rm -rf tests
%{python3_sitelib}/pymysql/
%changelog
* Sun Apr 28 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Apr 28 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Initial relase for fedora 29 (0.9.3).

View File

@@ -171,6 +171,6 @@ CFLAGS="$RPM_OPT_FLAGS" %{__python3}-debug setup.py build
%endif # with debug
%changelog
* Sun Apr 28 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Apr 28 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Initial relase for fedora 29 (1.4.2).

View File

@@ -97,6 +97,6 @@ kill %1
%endif
%changelog
* Sun May 12 2019 Javier Peña <daniel.steiner@daniel-steiner.org>
* Sun May 12 2019 Javier Peña <daniel.steiner@dsteiner.ch>
- First build.

View File

@@ -54,6 +54,6 @@ PYTHONPATH=../ %{__python} test_%{oname}.py
%{python2_sitelib}/*
%changelog
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build, it's required by powerline_shell package.

View File

@@ -55,6 +55,9 @@ rm -rf %{buildroot}%{python3_sitelib}/__pycache__
%{python3_sitelib}/*
%changelog
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@daniel-steiner.org>
* Sat May 2 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build on Fedora 32.
* Sun Feb 3 2019 Daniel Steiner <daniel.steiner@dsteiner.ch>
- First build, it's required by powerline_shell package.

View File

@@ -0,0 +1,40 @@
Name: sockstat
Version: 0.4.1
Release: 1%{?dist}
Summary: View detailed information about open connections
License: BSD-3
URL: https://github.com/alteholz/sockstat/
Source0: %{name}-%{version}.tar.gz
# disable debug:
%global debug_package %{nil}
%description
View detailed information about open connections
%prep
%setup -q
%build
make %{?_smp_mflags}
%install
%{__install} -D %{name} %{buildroot}%{_bindir}/%{name}
%{__install} -D %{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1
%files
%doc LICENSE
%{_bindir}/%{name}
%{_mandir}/man1/%{name}.1.gz
%changelog
* Thu Apr 9 2020 Daniel Steiner <daniel.steiner@dsteiner.org>
- Initial version for CentOS 8 (0.4.1).

108
fedora/SPECS/tilesweep.spec Normal file
View File

@@ -0,0 +1,108 @@
#
# spec file for package tilesweep
#
%define geouser geo
Name: tilesweep
Summary: An OpenStreetMap tile server
Url: https://github.com/seemk/TileSweep
Version: 0.1.0
Release: 1%{?dist}
License: BSD
Group: System Environment/Daemons
Source0: %{name}.tgz
Source1: %{name}-conf.ini
Source2: %{name}-tmpfiles.conf
Source3: %{name}-systemd.service
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: mapnik-devel >= 3.0.12
%description
An OpenStreetMap tile server.
Features:
- Prerendering based on polygon and zoom levels selection.
- Offline tile cache (tiles can be prerendered and served without Mapnik)
- Efficient disk usage
%prep
%setup -qn %{name}
%build
pushd %{name}
mkdir build
cd build
cmake ..
make
popd
%install
pushd %{name}/build/bundle
install -d %{buildroot}/opt/%{name}
install -d %{buildroot}/opt/%{name}/ui
install -d %{buildroot}%{_sysconfdir}/systemd
install -d %{buildroot}%{_sysconfdir}/tmpfiles.d
install %{name} %{buildroot}/opt/%{name}/%{name}
install ui/app.js %{buildroot}/opt/%{name}/ui/app.js
install ui/app.css %{buildroot}/opt/%{name}/ui/app.css
install ui/index.html %{buildroot}/opt/%{name}/ui/index.html
install %{S:1} %{buildroot}/opt/%{name}/conf.ini
install %{S:2} %{buildroot}%{_sysconfdir}/tmpfiles.d/%{name}
install %{S:3} %{buildroot}%{_sysconfdir}/systemd/%{name}.service
popd
%clean
[ "%{buildroot}" != "/" ] && [ -d "%{buildroot}" ] && rm -rf %{buildroot}
[ "%{_builddir}" != "/" ] && [ -d "%{_builddir}" ] && rm -rf %{_builddir}/*
%pre
getent group %{geouser} > /dev/null || groupadd -r %{geouser}
getent passwd %{geouser} > /dev/null || \
useradd -m -g %{geouser} -s /bin/bash \
-c "Geo Mapnik user" %{geouser}
%post
%if 0%{?using_systemd}
%if 0%{?systemd_macro_scriptlet}
if [ $1 -eq 1 ]; then
%systemd_post %{name}.service
fi
%firewalld_reload
%endif
%endif
%preun
%if 0%{?using_systemd}
if [ $1 -eq 0 ]; then
systectl stop %{name}.service
fi
%endif
%postun
%if 0%{?using_systemd}
%if 0%{?systemd_macro_scriptlet}
if [ $1 -eq 1 ]; then
%systemd_postun_with_restart %{name}.service
%firewalld_reload
fi
%endif
%endif
%files
%defattr(-,root,root,-)
%doc COPYING README.md
/opt/%{name}/%{name}
%dir /opt/%{name}/ui
/opt/%{name}/ui/*
%dir %{_rundir}/%{name}
%config(noreplace) /opt/%{name}/conf.ini
%config %{_sysconfdir}/tmpfiles.d/%{name}
%changelog
* Thu May 21 2020 Daniel Steiner <daniel.steiner@dsteiner.ch>
- Initial setup.