From 3194e5f5f806c9afe3586ca66599567a1219e976 Mon Sep 17 00:00:00 2001 From: Daniel Steiner Date: Fri, 19 May 2023 09:41:21 +0200 Subject: [PATCH] Alma 9 packages added and updated --- alma/SPECS/GeoIP-GeoLite-data.spec | 151 +++ alma/SPECS/GeoIP.spec | 91 ++ alma/SPECS/cjose.spec | 117 ++ alma/SPECS/goaccess.spec | 113 ++ alma/SPECS/mod_auth_openidc.spec | 150 +++ alma/SPECS/mydumper.spec | 83 ++ alma/SPECS/nginx.spec | 935 +++++++++++++ alma/SPECS/powerline-go.spec | 60 + alma/SPECS/sockstat.spec | 42 + alma/SPECS/zabbix.spec | 1952 ++++++++++++++++++++++++++++ 10 files changed, 3694 insertions(+) create mode 100644 alma/SPECS/GeoIP-GeoLite-data.spec create mode 100644 alma/SPECS/GeoIP.spec create mode 100644 alma/SPECS/cjose.spec create mode 100644 alma/SPECS/goaccess.spec create mode 100644 alma/SPECS/mod_auth_openidc.spec create mode 100644 alma/SPECS/mydumper.spec create mode 100644 alma/SPECS/nginx.spec create mode 100644 alma/SPECS/powerline-go.spec create mode 100644 alma/SPECS/sockstat.spec create mode 100644 alma/SPECS/zabbix.spec diff --git a/alma/SPECS/GeoIP-GeoLite-data.spec b/alma/SPECS/GeoIP-GeoLite-data.spec new file mode 100644 index 0000000..aa3b470 --- /dev/null +++ b/alma/SPECS/GeoIP-GeoLite-data.spec @@ -0,0 +1,151 @@ +Name: GeoIP-GeoLite-data +# The geolite databases were traditionally updated on the first Tuesday of each month, +# hence we use a versioning scheme of YYYY.MM for the Fedora package. +# +# No further releases of IPv4 GeoLite Legacy databases will be made from April 2018. +Version: 2018.06 +Release: 8%{?dist} +Summary: Free GeoLite IP geolocation country database +# License specified at http://dev.maxmind.com/geoip/legacy/geolite/#License +License: CC-BY-SA +URL: http://dev.maxmind.com/geoip/legacy/geolite/ +Source0: http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz +Source1: http://geolite.maxmind.com/download/geoip/database/GeoIPv6.dat.gz +Source2: http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz +Source3: http://geolite.maxmind.com/download/geoip/database/GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz +Source4: http://download.maxmind.com/download/geoip/database/asnum/GeoIPASNum.dat.gz +Source5: http://download.maxmind.com/download/geoip/database/asnum/GeoIPASNumv6.dat.gz +BuildArch: noarch +# For compatibility with monolithic GeoIP packages in Fedora 21 and older +# releases, we ensure that all databases are installed together; going +# forward, only the IPv4 country database is installed by default and the user +# can choose whether or not to install the databases from the extra package +%if 0%{?fedora} < 22 && 0%{?rhel} < 8 +Requires: GeoIP-GeoLite-data-extra = %{version}-%{release} +%endif +# This data has previously been available in differently-named packages +Obsoletes: GeoIP-data < 1.6.4-10 +Provides: GeoIP-data = %{version} +Obsoletes: geoip-geolite < %{version} +Provides: geoip-geolite = %{version} +# The data was unbundled from GeoIP at 1.6.4-3 +Conflicts: GeoIP < 1.6.4-3 + +%description +The GeoLite databases are free IP geolocation databases. This package contains +a database that maps IPv4 addresses to countries. + +This product includes GeoLite data created by MaxMind, available from +http://www.maxmind.com/ + +%package extra +Summary: Free GeoLite IP geolocation databases +License: CC-BY-SA +Requires: %{name} = %{version}-%{release} + +%description extra +The GeoLite databases are free IP geolocation databases. This package contains +databases that map IPv6 addresses to countries, plus IPv4 and IPv6 addresses +to cities and autonomous system numbers. + +This product includes GeoLite data created by MaxMind, available from +http://www.maxmind.com/ + +%prep +%setup -q -T -c + +install -p -m 644 %{SOURCE0} GeoLiteCountry.dat.gz; gunzip GeoLiteCountry.dat +install -p -m 644 %{SOURCE1} GeoIPv6.dat.gz; gunzip GeoIPv6.dat +install -p -m 644 %{SOURCE2} GeoLiteCity.dat.gz; gunzip GeoLiteCity.dat +install -p -m 644 %{SOURCE3} GeoLiteCityv6.dat.gz; gunzip GeoLiteCityv6.dat +install -p -m 644 %{SOURCE4} GeoLiteASNum.dat.gz; gunzip GeoLiteASNum.dat +install -p -m 644 %{SOURCE5} GeoIPASNumv6.dat.gz; gunzip GeoIPASNumv6.dat + +%build +# This section intentionally left empty + +%install +mkdir -p %{buildroot}%{_datadir}/GeoIP/ +for db in \ + GeoLiteCountry.dat \ + GeoIPv6.dat \ + GeoLiteCity.dat \ + GeoLiteCityv6.dat \ + GeoLiteASNum.dat \ + GeoIPASNumv6.dat +do + install -p -m 644 $db %{buildroot}%{_datadir}/GeoIP/ +done + +# Add compat symlinks for GeoIPASNum.dat and GeoLiteASNumv6.dat +# ([upstream] database names used in the old geoip-geolite package) +ln -sf GeoLiteASNum.dat %{buildroot}%{_datadir}/GeoIP/GeoIPASNum.dat +ln -sf GeoIPASNumv6.dat %{buildroot}%{_datadir}/GeoIP/GeoLiteASNumv6.dat + +# Symlinks for City databases to be where upstream expects them +# (geoiplookup -v ...) +ln -sf GeoLiteCity.dat %{buildroot}%{_datadir}/GeoIP/GeoIPCity.dat +ln -sf GeoLiteCityv6.dat %{buildroot}%{_datadir}/GeoIP/GeoIPCityv6.dat + +%preun +# If the package is being uninstalled (rather than upgraded), we remove +# the GeoIP.dat symlink, provided that it points to GeoLiteCountry.dat; +# rpm will then be able to remove the %%{_datadir}/GeoIP directory +if [ $1 = 0 ]; then + if [ -h %{_datadir}/GeoIP/GeoIP.dat ]; then + geoipdat=`readlink %{_datadir}/GeoIP/GeoIP.dat` + if [ "$geoipdat" = "GeoLiteCountry.dat" ]; then + rm -f %{_datadir}/GeoIP/GeoIP.dat + fi + fi +fi +exit 0 + +%posttrans +# Create the default GeoIP.dat as a symlink to GeoLiteCountry.dat +# +# This has to be done in %%posttrans rather than %%post because an old +# package's GeoIP.dat may still be present during %%post in an upgrade +# +# Don't do this if there is any existing GeoIP.dat, as we don't want to +# override what the user has put there +# +# Also, if there's an existing GeoIP.dat.rpmsave, we're probably doing +# an upgrade from an old version of GeoIP that packaged GeoIP.dat as +# %%config(noreplace), so rename GeoIP.dat.rpmsave back to GeoIP.dat +# instead of creating a new symlink +if [ ! -e %{_datadir}/GeoIP/GeoIP.dat ]; then + if [ -e %{_datadir}/GeoIP/GeoIP.dat.rpmsave ]; then + mv %{_datadir}/GeoIP/GeoIP.dat.rpmsave \ + %{_datadir}/GeoIP/GeoIP.dat + else + ln -sf GeoLiteCountry.dat %{_datadir}/GeoIP/GeoIP.dat + fi +fi +exit 0 + +%files +%dir %{_datadir}/GeoIP/ +# The databases are %%verify(not md5 size mtime) so that they can be updated +# via cron scripts and rpm will not moan about the files having changed +%verify(not md5 size mtime) %{_datadir}/GeoIP/GeoLiteCountry.dat + +%files extra +# The databases are %%verify(not md5 size mtime) so that they can be updated +# via cron scripts and rpm will not moan about the files having changed +%verify(not md5 size mtime) %{_datadir}/GeoIP/GeoIPv6.dat +%verify(not md5 size mtime) %{_datadir}/GeoIP/GeoLiteCity.dat +%verify(not md5 size mtime) %{_datadir}/GeoIP/GeoLiteCityv6.dat +%verify(not md5 size mtime) %{_datadir}/GeoIP/GeoLiteASNum.dat +%verify(not md5 size mtime) %{_datadir}/GeoIP/GeoIPASNumv6.dat +# The compat symlinks are just regular files as they should never need to be +# changed +%{_datadir}/GeoIP/GeoIPASNum.dat +%{_datadir}/GeoIP/GeoIPCity.dat +%{_datadir}/GeoIP/GeoIPCityv6.dat +%{_datadir}/GeoIP/GeoLiteASNumv6.dat + +%changelog +* Sat Jan 21 2023 Daniel Steiner +- First build for Almalinux 9. + diff --git a/alma/SPECS/GeoIP.spec b/alma/SPECS/GeoIP.spec new file mode 100644 index 0000000..f55d781 --- /dev/null +++ b/alma/SPECS/GeoIP.spec @@ -0,0 +1,91 @@ +# Tests require network access so fail in koji; build using --with tests to run them yourself +%bcond_with tests + +Name: GeoIP +Version: 1.6.12 +Release: 9%{?dist} +Summary: Library for country/city/organization to IP address or hostname mapping +License: LGPLv2+ +URL: http://www.maxmind.com/app/c +Source0: https://github.com/maxmind/geoip-api-c/releases/download/v%{version}/GeoIP-%{version}.tar.gz +BuildRequires: coreutils +BuildRequires: gcc +BuildRequires: make +BuildRequires: sed +BuildRequires: zlib-devel +Requires: GeoIP-data + +# For compatibility with original release of GeoIP in old distributions +%if 0%{?fedora} < 22 && 0%{?rhel} < 8 +Requires: geoipupdate +%endif + +# Old name of GeoIP library package +Obsoletes: geoip < %{version}-%{release} +Provides: geoip = %{version}-%{release} + +%description +GeoIP is a C library that enables the user to find the country that any IP +address or hostname originates from. + +It uses file based databases that can optionally be updated on a weekly basis +by installing the geoipupdate-cron (IPv4) and/or geoipupdate-cron6 (IPv6) +packages. + +%package devel +Summary: Development headers and libraries for GeoIP +Requires: %{name} = %{version}-%{release} +Provides: geoip-devel = %{version}-%{release} +Obsoletes: geoip-devel < %{version}-%{release} + +%description devel +Development headers and static libraries for building GeoIP-based applications. + +%prep +%setup -q + +%build +%configure --disable-static --disable-dependency-tracking + +# Kill bogus rpaths +sed -i -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \ + -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool + +make %{?_smp_mflags} + +%install +make DESTDIR=%{buildroot} INSTALL="install -p" install + +# nix the stuff we don't need like .la files. +rm -f %{buildroot}%{_libdir}/*.la + +%check +# Tests require network access so fail in koji; build using --with tests to run them yourself +%{?with_tests:LD_LIBRARY_PATH=%{buildroot}%{_libdir} make check} + +%ldconfig_scriptlets + +%files +%if 0%{?_licensedir:1} +%license COPYING +%else +%doc COPYING +%endif +%doc AUTHORS ChangeLog NEWS.md README.md +%{_bindir}/geoiplookup +%{_bindir}/geoiplookup6 +%{_libdir}/libGeoIP.so.1 +%{_libdir}/libGeoIP.so.1.* +%{_mandir}/man1/geoiplookup.1* +%{_mandir}/man1/geoiplookup6.1* + +%files devel +%{_includedir}/GeoIP.h +%{_includedir}/GeoIPCity.h +%{_libdir}/libGeoIP.so +%{_libdir}/pkgconfig/geoip.pc + +%changelog +* Sat Jan 21 2023 Daniel Steiner +- First build for Almalinux 9. + diff --git a/alma/SPECS/cjose.spec b/alma/SPECS/cjose.spec new file mode 100644 index 0000000..07a3900 --- /dev/null +++ b/alma/SPECS/cjose.spec @@ -0,0 +1,117 @@ +Name: cjose +Version: 0.6.1 +Release: 13%{?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 + +# Patch taken from CentOS Stream: +# https://gitlab.com/redhat/centos-stream/rpms/cjose/-/blob/c9s/0001-Define-OPENSSL_API_COMPAT-to-0x10101000L.patch +Patch2: 0001-Define-OPENSSL_API_COMPAT-to-0x10101000L.patch + +BuildRequires: gcc +BuildRequires: doxygen +BuildRequires: openssl-devel +BuildRequires: jansson-devel +BuildRequires: check-devel +BuildRequires: make + +%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 +* Wed Jan 18 2023 Fedora Release Engineering - 0.6.1-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Fri Oct 28 2022 Stephen Gallagher - 0.6.1-12 +- Enable build on OpenSSL 3.0 + +* Wed Jul 20 2022 Fedora Release Engineering - 0.6.1-11 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Wed Jan 19 2022 Fedora Release Engineering - 0.6.1-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Tue Sep 14 2021 Sahana Prasad - 0.6.1-9 +- Rebuilt with OpenSSL 3.0.0 + +* Wed Jul 21 2021 Fedora Release Engineering - 0.6.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jan 26 2021 Fedora Release Engineering - 0.6.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Mon Jul 27 2020 Fedora Release Engineering - 0.6.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jan 28 2020 Fedora Release Engineering - 0.6.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Jul 24 2019 Fedora Release Engineering - 0.6.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu Jan 31 2019 Fedora Release Engineering - 0.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Thu Aug 2 2018 - 0.6.1-2 +- fix concatkdf big endian architecture problem. + Upstream issue #77. + +* Wed Aug 1 2018 - 0.6.1-1 +- upgrade to latest upstream 0.6.1 + +* Thu Jul 12 2018 Fedora Release Engineering - 0.5.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Feb 07 2018 Fedora Release Engineering - 0.5.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Fri Jan 26 2018 Patrick Uiterwijk - 0.5.1-1 +- Initial packaging diff --git a/alma/SPECS/goaccess.spec b/alma/SPECS/goaccess.spec new file mode 100644 index 0000000..db58baf --- /dev/null +++ b/alma/SPECS/goaccess.spec @@ -0,0 +1,113 @@ +Name: goaccess +Version: 1.7.2 +Release: 1%{?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 +#Patch1: goaccess-commons.patch +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: gcc +BuildRequires: GeoIP-devel +BuildRequires: ncurses-devel +BuildRequires: tokyocabinet-devel +BuildRequires: zlib-devel +BuildRequires: bzip2-devel +BuildRequires: gettext-devel +BuildRequires: libmaxminddb-devel +%if %{with openssl} +BuildRequires: openssl-devel +%endif + +%description +GoAccess is a real-time web log analyzer and interactive viewer that runs in a +terminal in *nix systems. It provides fast and valuable HTTP statistics for +system administrators that require a visual server report on the fly. + +Features: +GoAccess parses the specified web log file and outputs the data to terminal. + +* General statistics, bandwidth, etc. +* Time taken to serve the request (useful to track pages that are slowing down. +your site). +* Metrics for cumulative, average and slowest running requests. +* Top visitors. +* Requested files & static files. +* 404 or Not Found. +* Hosts, Reverse DNS, IP Location. +* Operating Systems. +* Browsers and Spiders. +* Referring Sites & URLs. +* Keyphrases. +* Geo Location - Continent/Country/City. +* Visitors Time Distribution. +* HTTP Status Codes. +* Ability to output JSON and CSV. +* Tailor GoAccess to suit your own color taste/schemes. +* Support for large datasets + data persistence. +* Support for IPv6. +* Output statistics to HTML. +and more... + +GoAccess allows any custom log format string. Predefined options include, but +not limited to: + +* Amazon CloudFront (Download Distribution). +* AWS Elastic Load Balancing. +* Apache/Nginx Common/Combined + VHosts. +* Google Cloud Storage. +* W3C format (IIS). + +%prep +%autosetup -p0 +# Prevent flags being overridden again and again. +#sed -i 's|-pthread|$CFLAGS \0|' configure.ac +sed -i '/-pthread/d' configure.ac + +%build +autoreconf -fiv +%configure \ + --enable-debug \ + --enable-geoip=legacy \ + --enable-geoip=mmdb \ + --enable-utf8 \ + --with-getline \ + --with-openssl +%make_build + +%install +%make_install +%find_lang %{name} + +%files -f %{name}.lang +%license COPYING +%config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf +%config(noreplace) %{_sysconfdir}/%{name}/browsers.list +%config(noreplace) %{_sysconfdir}/%{name}/podcast.list +%{_bindir}/%{name} +%{_mandir}/man1/%{name}.1* + +%changelog +* Fri May 19 2023 Daniel Steiner +- First build on Alma 9. +- Update to latest version 1.7.2. + +* Sat Jan 21 2023 Daniel Steiner +- Update to latest version 1.7. + +* Fri Feb 18 2022 Daniel Steiner +- Update to latest version 1.5.5. + +* Wed Mar 3 2021 Daniel Steiner +- Update to latest version 1.4.6. + +* Tue Jan 26 2021 Daniel Steiner +- Update to latest version > 1.4.4 to enable json output support. + +* Thu Aug 27 2020 Daniel Steiner +- mmdb enabled for new GeoLite2 dBs. + +* Tue Aug 25 2020 Daniel Steiner +- First, initial version for CentOS 8 (1.4) + diff --git a/alma/SPECS/mod_auth_openidc.spec b/alma/SPECS/mod_auth_openidc.spec new file mode 100644 index 0000000..0c2b5ce --- /dev/null +++ b/alma/SPECS/mod_auth_openidc.spec @@ -0,0 +1,150 @@ +%{!?_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.14 +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 +BuildRequires: libtool +BuildRequires: compat-openssl11 +%{?_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 +# switch installation methods, the one we need is commented +sed -i -e '72d;73{s/^.//;s/@/$(DESTDIR)@/}' Makefile.am + +%build +./autogen.sh +%configure \ + --with-apxs=%{_bindir}/apxs \ + --with-jq=%{_libdir} \ + %{?_with_hiredis} \ + %{?_without_hiredis} + +make %{?_smp_mflags} + +%check +make test + +%install +mkdir -p $RPM_BUILD_ROOT%{_httpd_moddir} +./install-sh .libs/%{name}.so $RPM_BUILD_ROOT%{_httpd_moddir}/%{name}.so + +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 +* Fri May 19 2023 Daniel Steiner +- Update to 2.4.14. + +* Mon Dec 12 2022 Daniel Steiner +- Update to 2.4.12.1. + +* Wed Oct 19 2022 Daniel Steiner +- Update to 2.4.12. + +* Fri Aug 26 2022 Daniel Steiner +- Update to 2.4.11.3. + +* Wed Mar 30 2022 Daniel Steiner +- Update to 2.4.11.1. + +* Tue Mar 29 2022 Daniel Steiner +- libjq enabled. + +* Fri Feb 18 2022 Daniel Steiner +- Update to 2.4.11 + +* Mon Dec 6 2021 Daniel Steiner +- Update to 2.4.10 + +* Tue Aug 31 2021 Daniel Steiner +- Update to 2.4.9.3. + +* Thu Jul 29 2021 Daniel Steiner +- Update to 2.4.9. + +* Sun May 23 2021 Daniel Steiner +- Update to 2.4.8.2. + +* Wed Apr 28 2021 Daniel Steiner +- Update to 2.4.7. + +* Wed Mar 3 2021 Daniel Steiner +- Update to 2.4.6. + +* Sun Nov 29 2020 Daniel Steiner +- Update to 2.4.5. + +* Sat Sep 5 2020 Daniel Steiner +- Update to 2.4.4.1. + +* Mon Jul 6 2020 Daniel Steiner +- Update to 2.4.3. + +* Thu Feb 13 2020 Daniel Steiner +- Update to 2.4.1. + +* Thu Dec 19 2019 Daniel Steiner +- First initial build. + diff --git a/alma/SPECS/mydumper.spec b/alma/SPECS/mydumper.spec new file mode 100644 index 0000000..6b6976a --- /dev/null +++ b/alma/SPECS/mydumper.spec @@ -0,0 +1,83 @@ +# to build agains mariadb libraries, set it to 0 +%define _ver 1 +%define _extent -%{_ver} +Name: mydumper +Summary: mydumper and myloader MySQL backup tools +Version: 0.14.5 +Release: %{_ver}%{?dist} +Group: Applications/Databases +License: GPL +Vendor: Max Bubenick +URL: https://github.com/maxbube/mydumper +Source: mydumper-%{version}%{_extent}.tar.gz +BuildArch: x86_64 +AutoReq: no +BuildRequires: percona-server-devel +#BuildRequires: Percona-Server-devel-57 +#BuildRequires: mysql-devel +#BuildRequires: mariadb-devel +BuildRequires: pkgconf-pkg-config +BuildRequires: pcre-devel +BuildRequires: glib2-devel +BuildRequires: zlib-devel +BuildRequires: pcre-devel +BuildRequires: openssl-devel +BuildRequires: cmake +BuildRequires: python3-sphinx +BuildRequires: gcc-c++ +BuildRequires: git + +%description +This package provides mydumper and myloader MySQL backup tools. + +mydumper is a tool used for backing up MySQL database servers much +faster than the mysqldump tool distributed with MySQL. It also has the +capability to retrieve the binary logs from the remote server at the same time +as the dump itself. The advantages of mydumper are: parallelism, +easier to manage output, consistency, manageability. + +myloader is a tool used for multi-threaded restoration of mydumper backups. + +%prep +%setup -q -n %{name}-%{version}%{_extent} + +%build +%define debug_package %{nil} +cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} +make + +%install +%__make install DESTDIR=${RPM_BUILD_ROOT} + +%clean +rm -rf ${RPM_BUILD_ROOT} + +%files +%defattr(-,root,root,-) +%{_bindir}/* +%{_datarootdir}/doc/%{name}/* +%{_mandir}/man1/* +%config(noreplace) %{_sysconfdir}/%{name}.cnf + +%changelog +* Fri May 19 2023 Daniel Steiner +- Update to 0.14.5-1. + +* Fri Sep 23 2022 Daniel Steiner +- Update to 0.12.7-3. + +* Fri Sep 16 2022 Daniel Steiner +- Update to 0.12.7. + +* Sat May 14 2022 Daniel Steiner +- Build on Almalinux 8.6. + +* Fri May 6 2022 Daniel Steiner +- Update to 0.12.3-1 + +* Fri Mar 18 2022 Daniel Steiner +- First build on Fedora 35. + +* Sun Jul 4 2021 Daniel Steiner +- First build on Fedora 33. + diff --git a/alma/SPECS/nginx.spec b/alma/SPECS/nginx.spec new file mode 100644 index 0000000..aac6573 --- /dev/null +++ b/alma/SPECS/nginx.spec @@ -0,0 +1,935 @@ +%global _hardened_build 1 +%global nginx_user nginx +# additional module settings: +%global with_ldap_module 1 +%global with_echo_module 1 +%global with_modsecurity_module 0 +%global with_vts_module 1 +%global with_header_more_module 1 +%global with_set_misc_module 1 +%global with_http_upload_module 1 +%global with_http_accept_language_module 1 +%define accept_langver 1.0.0 +%define mod_echo_vers 0.62 +%global modsecver 3.0.2 +%global vtsversion 0.1.18 +%global headervers 0.33 + +# Disable strict symbol checks in the link editor. +# See: https://src.fedoraproject.org/rpms/redhat-rpm-config/c/078af19 +%undefine _strict_symbol_defs_build + +%bcond_with geoip + +# nginx gperftools support should be dissabled for RHEL >= 8 +# see: https://bugzilla.redhat.com/show_bug.cgi?id=1931402 +%if 0%{?rhel} >= 8 +%global with_gperftools 0 +%else +# gperftools exist only on selected arches +# gperftools *detection* is failing on ppc64*, possibly only configure +# bug, but disable anyway. +%ifnarch s390 s390x ppc64 ppc64le +%global with_gperftools 1 +%endif +%endif + +%global with_aio 1 + +%if 0%{?fedora} > 22 +%global with_mailcap_mimetypes 1 +%endif + +# Cf. https://www.nginx.com/blog/creating-installable-packages-dynamic-modules/ +%global nginx_abiversion %{version} + +%global nginx_moduledir %{_libdir}/nginx/modules +%global nginx_moduleconfdir %{_datadir}/nginx/modules +%global nginx_srcdir %{_usrsrc}/%{name}-%{version}-%{release} + +# Do not generate provides/requires from nginx sources +%global __provides_exclude_from ^%{nginx_srcdir}/.*$ +%global __requires_exclude_from ^%{nginx_srcdir}/.*$ + + +Name: nginx +Epoch: 1 +Version: 1.20.1 +Release: 14%{?dist}.alma + +Summary: A high performance web server and reverse proxy server +# BSD License (two clause) +# http://www.freebsd.org/copyright/freebsd-license.html +License: BSD +URL: https://nginx.org + +Source0: https://nginx.org/download/nginx-%{version}.tar.gz +Source1: https://nginx.org/download/nginx-%{version}.tar.gz.asc +# Keys are found here: https://nginx.org/en/pgp_keys.html +Source2: https://nginx.org/keys/maxim.key +Source3: https://nginx.org/keys/mdounin.key +Source4: https://nginx.org/keys/sb.key +Source10: nginx.service +Source11: nginx.logrotate +Source12: nginx.conf +Source13: nginx-upgrade +Source14: nginx-upgrade.8 +Source15: macros.nginxmods.in +Source16: nginxmods.attr +Source102: nginx-logo.png +Source103: 404.html +Source104: 50x.html +Source200: README.dynamic +Source210: UPGRADE-NOTES-1.6-to-1.10 + +# additonal modules: +Source300: ngx_http_auth_ldap_module.tar.gz +Source301: modsecurity-nginx-%{modsecver}.tar.gz +Source302: modsecurity.conf +Source303: nginx-module-vts-%{vtsversion}.tar.gz +Source304: headers-more-nginx-module-%{headervers}.tar.gz +Source305: set-misc-nginx-module.tar.gz +Source306: ngx_devel_kit.tar.gz +Source307: echo-nginx-module-%{mod_echo_vers}.tar.gz +Source308: nginx-upload-module.tar.gz +Source309: main.conf +Source310: rules.conf +Source311: nginx_accept_language_module-1.0.0.tar.gz + +# removes -Werror in upstream build scripts. -Werror conflicts with +# -D_FORTIFY_SOURCE=2 causing warnings to turn into errors. +Patch0: 0001-remove-Werror-in-upstream-build-scripts.patch + +# downstream patch - fix PIDFile race condition (rhbz#1869026) +# rejected upstream: https://trac.nginx.org/nginx/ticket/1897 +Patch1: 0002-fix-PIDFile-handling.patch + +# downstream patch for RHEL - https://bugzilla.redhat.com/show_bug.cgi?id=1955564 +Patch2: 0003-Support-loading-cert-hardware-token-PKC.patch + +# downstream patch for RHEL - https://bugzilla.redhat.com/show_bug.cgi?id=2006822 +Patch3: 0004-Set-proper-compiler-optimalization-level-O2-for-perl.patch + +# downstream patch for RHEL - https://bugzilla.redhat.com/show_bug.cgi?id=2006420 +Patch4: 0005-Init-openssl-engine-properly.patch + +# upstream patch - fixing ALPACA(CVE-2021-3618) security issue - https://bugzilla.redhat.com/show_bug.cgi?id=1975623 +Patch5: 0006-Fix-ALPACA-security-issue.patch + +# downstream patch for RHEL - https://bugzilla.redhat.com/show_bug.cgi?id=2028781 +Patch6: 0007-Enable-TLSv1.3-by-default.patch + +BuildRequires: make +BuildRequires: gcc +BuildRequires: gnupg2 +%if 0%{?with_gperftools} +BuildRequires: gperftools-devel +%endif +%if 0%{?fedora} || 0%{?rhel} >= 8 +BuildRequires: openssl-devel +%else +BuildRequires: openssl11-devel +%endif +BuildRequires: pcre-devel +BuildRequires: zlib-devel + +Requires: nginx-filesystem = %{epoch}:%{version}-%{release} +%if 0%{?el7} +# centos-logos el7 does not provide 'system-indexhtml' +Requires: system-logos redhat-indexhtml +# need to remove epel7 geoip sub-package, doesn't work anymore +# https://bugzilla.redhat.com/show_bug.cgi?id=1576034 +# https://bugzilla.redhat.com/show_bug.cgi?id=1664957 +Obsoletes: nginx-mod-http-geoip <= 1:1.16 +%else +Requires: system-logos-httpd +%endif + +Requires: pcre +Provides: webserver +%if 0%{?fedora} || 0%{?rhel} >= 8 +Recommends: logrotate +%endif +Requires: %{name}-core = %{epoch}:%{version}-%{release} + +BuildRequires: systemd +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +# For external nginx modules +Provides: nginx(abi) = %{nginx_abiversion} + +%description +Nginx is a web server and a reverse proxy server for HTTP, SMTP, POP3 and +IMAP protocols, with a strong focus on high concurrency, performance and low +memory usage. + +%package core +Summary: nginx minimal core +%if 0%{?with_mailcap_mimetypes} +Requires: nginx-mimetypes +%endif +Requires: openssl-libs +Requires(pre): nginx-filesystem +Conflicts: nginx < 1:1.20.1-13 + +%description core +nginx minimal core + +%package all-modules +Summary: A meta package that installs all common Nginx modules +BuildArch: noarch + +%if %{with geoip} +Requires: nginx-mod-http-geoip = %{epoch}:%{version}-%{release} +%endif +Requires: nginx-mod-http-image-filter = %{epoch}:%{version}-%{release} +Requires: nginx-mod-http-perl = %{epoch}:%{version}-%{release} +Requires: nginx-mod-http-xslt-filter = %{epoch}:%{version}-%{release} +Requires: nginx-mod-mail = %{epoch}:%{version}-%{release} +Requires: nginx-mod-stream = %{epoch}:%{version}-%{release} + +%description all-modules +Meta package that installs all available nginx modules. + +%package filesystem +Summary: The basic directory layout for the Nginx server +BuildArch: noarch +Requires(pre): shadow-utils + +%description filesystem +The nginx-filesystem package contains the basic directory layout +for the Nginx server including the correct permissions for the +directories. + +%if %{with geoip} +%package mod-http-geoip +Summary: Nginx HTTP geoip module +BuildRequires: GeoIP-devel +Requires: nginx(abi) = %{nginx_abiversion} +Requires: GeoIP + +%description mod-http-geoip +%{summary}. +%endif + +%package mod-http-image-filter +Summary: Nginx HTTP image filter module +BuildRequires: gd-devel +Requires: nginx(abi) = %{nginx_abiversion} +Requires: gd + +%description mod-http-image-filter +%{summary}. + +%package mod-http-perl +Summary: Nginx HTTP perl module +BuildRequires: perl-devel +%if 0%{?fedora} >= 24 || 0%{?rhel} >= 7 +BuildRequires: perl-generators +%endif +BuildRequires: perl(ExtUtils::Embed) +Requires: nginx(abi) = %{nginx_abiversion} +Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) +Requires: perl(constant) + +%description mod-http-perl +%{summary}. + +%package mod-http-xslt-filter +Summary: Nginx XSLT module +BuildRequires: libxslt-devel +Requires: nginx(abi) = %{nginx_abiversion} + +%description mod-http-xslt-filter +%{summary}. + +%package mod-mail +Summary: Nginx mail modules +Requires: nginx(abi) = %{nginx_abiversion} + +%description mod-mail +%{summary}. + +%package mod-stream +Summary: Nginx stream modules +Requires: nginx(abi) = %{nginx_abiversion} + +%description mod-stream +%{summary}. + +%package mod-devel +Summary: Nginx module development files +Requires: nginx = %{epoch}:%{version}-%{release} +Requires: make +Requires: gcc +Requires: gd-devel +%if 0%{?with_gperftools} +Requires: gperftools-devel +%endif +%if %{with geoip} +Requires: GeoIP-devel +%endif +Requires: libxslt-devel +%if 0%{?fedora} || 0%{?rhel} >= 8 +Requires: openssl-devel +%else +Requires: openssl11-devel +%endif +Requires: pcre-devel +Requires: perl-devel +Requires: perl(ExtUtils::Embed) +Requires: zlib-devel + +%description mod-devel +%{summary}. + +# additonal modueles: +%if 0%{?with_set_misc_module} +%package mod-set-misc +Group: System Environment/Daemons +Summary: Nginx set misc module +Requires: nginx + +%description mod-set-misc +Nginx set misc module +%endif + +%if 0%{?with_http_upload_module} +%package mod-http-upload +Group: System Environment/Daemons +Summary: Nginx http upload module +Requires: nginx + +%description mod-http-upload +Nginx http upload module +%endif + +%if 0%{?with_vts_module} +%package mod-vts +Group: System Environment/Daemons +Summary: Nginx VTS module +Requires: nginx + +%description mod-vts +Nginx virtual host traffic status module +%endif + +%if 0%{?with_ldap_module} +%package mod-auth-ldap +Group: System Environment/Daemons +Summary: Nginx ldap auth module +Requires: nginx +BuildRequires: openldap-devel + +%description mod-auth-ldap +LDAP auth module for nginx +%endif + +%if 0%{?with_modsecurity_module} +%package mod-security +Group: System Environment/Daemons +Summary: Nginx modsecurity module +Requires: nginx libmodsecurity +BuildRequires: libmodsecurity-devel + +%description mod-security +Modsecurity module for nginx +%endif + +%if 0%{?with_header_more_module} +%package mod-header-more +Group: System Environment/Daemons +Summary: Nginx header more module +Requires: nginx + +%description mod-header-more +Header more module for nginx +%endif + +%if 0%{?with_echo_module} +%package mod-echo +Group: System Environment/Daemons +Summary: Nginx echo more module +Requires: nginx + +%description mod-echo +Echo module for nginx +%endif + +%if 0%{?with_http_accept_language_module} +%package mod-accept-language +Group: System Environment/Daemons +Summary: Nginx echo more module +Requires: nginx + +%description mod-accept-language +Accept language module for nginx +%endif + +%prep +%if 0%{?with_vts_module} +%setup -q -b 303 -n nginx-module-vts-%{vtsversion} +%endif +%if 0%{?with_ldap_module} +%setup -q -b 300 -n ngx_http_auth_ldap_module +%endif +%if 0%{?with_modsecurity_module} +%setup -q -b 301 -n modsecurity-nginx-%{modsecver} +%endif +%if 0%{?with_header_more_module} +%setup -q -b 304 -n headers-more-nginx-module-%{headervers} +%endif +%if 0%{?with_set_misc_module} +%setup -q -b 305 -n set-misc-nginx-module-master +%setup -q -b 306 -n ngx_devel_kit-master +%endif +%if 0%{?with_http_upload_module} +%setup -q -b 308 -n nginx-upload-module +%endif +%if 0%{?with_echo_module} +%setup -q -b 307 -n echo-nginx-module-%{mod_echo_vers} +%endif +%if 0%{?with_http_accept_language_module} +%setup -q -b 311 -n nginx_accept_language_module-%{accept_langver} +%endif +%setup -q -b 0 -n nginx-%{version} +# Combine all keys from upstream into one file +cat %{S:2} %{S:3} %{S:4} > %{_builddir}/%{name}.gpg +%{gpgverify} --keyring='%{_builddir}/%{name}.gpg' --signature='%{SOURCE1}' --data='%{SOURCE0}' +%autosetup -p1 +cp %{SOURCE200} %{SOURCE210} %{SOURCE10} %{SOURCE12} . + +%if 0%{?rhel} > 0 && 0%{?rhel} < 8 +sed -i -e 's#KillMode=.*#KillMode=process#g' nginx.service +sed -i -e 's#PROFILE=SYSTEM#HIGH:!aNULL:!MD5#' nginx.conf +%endif + +%if 0%{?rhel} == 7 +sed \ + -e 's|\(ngx_feature_path=\)$|\1%{_includedir}/openssl11|' \ + -e 's|\(ngx_feature_libs="\)|\1-L%{_libdir}/openssl11 |' \ + -i auto/lib/openssl/conf +%endif + +# Prepare sources for installation +cp -a ../%{name}-%{version} ../%{name}-%{version}-%{release}-src +mv ../%{name}-%{version}-%{release}-src . + + +%build +# nginx does not utilize a standard configure script. It has its own +# and the standard configure options cause the nginx configure script +# to error out. This is is also the reason for the DESTDIR environment +# variable. +export DESTDIR=%{buildroot} +# So the perl module finds its symbols: +nginx_ldopts="$RPM_LD_FLAGS -Wl,-E" +if ! ./configure \ + --prefix=%{_datadir}/nginx \ + --sbin-path=%{_sbindir}/nginx \ + --modules-path=%{nginx_moduledir} \ + --conf-path=%{_sysconfdir}/nginx/nginx.conf \ + --error-log-path=%{_localstatedir}/log/nginx/error.log \ + --http-log-path=%{_localstatedir}/log/nginx/access.log \ + --http-client-body-temp-path=%{_localstatedir}/lib/nginx/tmp/client_body \ + --http-proxy-temp-path=%{_localstatedir}/lib/nginx/tmp/proxy \ + --http-fastcgi-temp-path=%{_localstatedir}/lib/nginx/tmp/fastcgi \ + --http-uwsgi-temp-path=%{_localstatedir}/lib/nginx/tmp/uwsgi \ + --http-scgi-temp-path=%{_localstatedir}/lib/nginx/tmp/scgi \ + --pid-path=/run/nginx.pid \ + --lock-path=/run/lock/subsys/nginx \ + --user=%{nginx_user} \ + --group=%{nginx_user} \ + --with-compat \ + --with-debug \ +%if 0%{?with_aio} + --with-file-aio \ +%endif +%if 0%{?with_gperftools} + --with-google_perftools_module \ +%endif + --with-http_addition_module \ + --with-http_auth_request_module \ + --with-http_dav_module \ + --with-http_degradation_module \ + --with-http_flv_module \ +%if %{with geoip} + --with-http_geoip_module=dynamic \ +%endif +%if 0%{?with_vts_module} + --add-dynamic-module=%{_builddir}/nginx-module-vts-%{vtsversion} \ +%endif +%if 0%{?with_ldap_module} + --add-dynamic-module=%{_builddir}/ngx_http_auth_ldap_module \ +%endif +%if 0%{?with_header_more_module} + --add-dynamic-module=%{_builddir}/headers-more-nginx-module-%{headervers} \ +%endif +%if 0%{?with_set_misc_module} + --add-dynamic-module=%{_builddir}/echo-nginx-module-%{mod_echo_vers} \ +%endif +%if 0%{?with_modsecurity_module} + --add-dynamic-module=%{_builddir}/modsecurity-nginx-%{modsecver} \ +%endif +%if 0%{?with_set_misc_module} + --add-dynamic-module=%{_builddir}/ngx_devel_kit-master \ + --add-dynamic-module=%{_builddir}/set-misc-nginx-module-master \ +%if 0%{?with_http_upload_module} + --add-dynamic-module=%{_builddir}/nginx-upload-module \ +%endif +%if 0%{?with_http_accept_language_module} + --add-dynamic-module=%{_builddir}/nginx_accept_language_module-%{accept_langver} \ +%endif +%endif + --with-http_gunzip_module \ + --with-http_gzip_static_module \ + --with-http_image_filter_module=dynamic \ + --with-http_mp4_module \ + --with-http_perl_module=dynamic \ + --with-http_random_index_module \ + --with-http_realip_module \ + --with-http_secure_link_module \ + --with-http_slice_module \ + --with-http_ssl_module \ + --with-http_stub_status_module \ + --with-http_sub_module \ + --with-http_v2_module \ + --with-http_xslt_module=dynamic \ + --with-mail=dynamic \ + --with-mail_ssl_module \ + --with-pcre \ + --with-pcre-jit \ + --with-stream=dynamic \ + --with-stream_ssl_module \ + --with-stream_ssl_preread_module \ + --with-threads \ + --with-cc-opt="%{optflags} $(pcre-config --cflags)" \ + --with-ld-opt="$nginx_ldopts"; then + : configure failed + cat objs/autoconf.err + exit 1 +fi + +%make_build + + +%install +%make_install INSTALLDIRS=vendor + +find %{buildroot} -type f -name .packlist -exec rm -f '{}' \; +find %{buildroot} -type f -name perllocal.pod -exec rm -f '{}' \; +find %{buildroot} -type f -empty -exec rm -f '{}' \; +find %{buildroot} -type f -iname '*.so' -exec chmod 0755 '{}' \; + +install -p -D -m 0644 ./nginx.service \ + %{buildroot}%{_unitdir}/nginx.service +install -p -D -m 0644 %{SOURCE11} \ + %{buildroot}%{_sysconfdir}/logrotate.d/nginx + +install -p -d -m 0755 %{buildroot}%{_sysconfdir}/systemd/system/nginx.service.d +install -p -d -m 0755 %{buildroot}%{_unitdir}/nginx.service.d + +install -p -d -m 0755 %{buildroot}%{_sysconfdir}/nginx/conf.d +install -p -d -m 0755 %{buildroot}%{_sysconfdir}/nginx/default.d + +install -p -d -m 0700 %{buildroot}%{_localstatedir}/lib/nginx +install -p -d -m 0700 %{buildroot}%{_localstatedir}/lib/nginx/tmp +install -p -d -m 0700 %{buildroot}%{_localstatedir}/log/nginx + +install -p -d -m 0755 %{buildroot}%{_datadir}/nginx/html +install -p -d -m 0755 %{buildroot}%{nginx_moduleconfdir} +install -p -d -m 0755 %{buildroot}%{nginx_moduledir} + + +install -p -m 0644 ./nginx.conf \ + %{buildroot}%{_sysconfdir}/nginx + +rm -f %{buildroot}%{_datadir}/nginx/html/index.html +%if 0%{?el7} +ln -s ../../doc/HTML/index.html \ + %{buildroot}%{_datadir}/nginx/html/index.html +ln -s ../../doc/HTML/img \ + %{buildroot}%{_datadir}/nginx/html/img +ln -s ../../doc/HTML/en-US \ + %{buildroot}%{_datadir}/nginx/html/en-US +%else +ln -s ../../testpage/index.html \ + %{buildroot}%{_datadir}/nginx/html/index.html +%endif +install -p -m 0644 %{SOURCE102} \ + %{buildroot}%{_datadir}/nginx/html +ln -s nginx-logo.png %{buildroot}%{_datadir}/nginx/html/poweredby.png +mkdir -p %{buildroot}%{_datadir}/nginx/html/icons + +# Symlink for the powered-by-$DISTRO image: +ln -s ../../../pixmaps/poweredby.png \ + %{buildroot}%{_datadir}/nginx/html/icons/poweredby.png + +%if 0%{?rhel} >= 9 +ln -s ../../pixmaps/system-noindex-logo.png \ + %{buildroot}%{_datadir}/nginx/html/system_noindex_logo.png +%endif + +install -p -m 0644 %{SOURCE103} %{SOURCE104} \ + %{buildroot}%{_datadir}/nginx/html + +%if 0%{?with_mailcap_mimetypes} +rm -f %{buildroot}%{_sysconfdir}/nginx/mime.types +%endif + +install -p -D -m 0644 %{_builddir}/nginx-%{version}/objs/nginx.8 \ + %{buildroot}%{_mandir}/man8/nginx.8 + +install -p -D -m 0755 %{SOURCE13} %{buildroot}%{_bindir}/nginx-upgrade +install -p -D -m 0644 %{SOURCE14} %{buildroot}%{_mandir}/man8/nginx-upgrade.8 + +for i in ftdetect ftplugin indent syntax; do + install -p -D -m644 contrib/vim/${i}/nginx.vim \ + %{buildroot}%{_datadir}/vim/vimfiles/${i}/nginx.vim +done + +%if %{with geoip} +echo 'load_module "%{nginx_moduledir}/ngx_http_geoip_module.so";' \ + > %{buildroot}%{nginx_moduleconfdir}/mod-http-geoip.conf +%endif +echo 'load_module "%{nginx_moduledir}/ngx_http_image_filter_module.so";' \ + > %{buildroot}%{nginx_moduleconfdir}/mod-http-image-filter.conf +echo 'load_module "%{nginx_moduledir}/ngx_http_perl_module.so";' \ + > %{buildroot}%{nginx_moduleconfdir}/mod-http-perl.conf +echo 'load_module "%{nginx_moduledir}/ngx_http_xslt_filter_module.so";' \ + > %{buildroot}%{nginx_moduleconfdir}/mod-http-xslt-filter.conf +echo 'load_module "%{nginx_moduledir}/ngx_mail_module.so";' \ + > %{buildroot}%{nginx_moduleconfdir}/mod-mail.conf +echo 'load_module "%{nginx_moduledir}/ngx_stream_module.so";' \ + > %{buildroot}%{nginx_moduleconfdir}/mod-stream.conf + +# Install files for supporting nginx module builds +## Install source files +mkdir -p %{buildroot}%{_usrsrc} +mv %{name}-%{version}-%{release}-src %{buildroot}%{nginx_srcdir} +## Install rpm macros +mkdir -p %{buildroot}%{_rpmmacrodir} +sed -e "s|@@NGINX_ABIVERSION@@|%{nginx_abiversion}|g" \ + -e "s|@@NGINX_MODDIR@@|%{nginx_moduledir}|g" \ + -e "s|@@NGINX_MODCONFDIR@@|%{nginx_moduleconfdir}|g" \ + -e "s|@@NGINX_SRCDIR@@|%{nginx_srcdir}|g" \ + %{SOURCE15} > %{buildroot}%{_rpmmacrodir}/macros.nginxmods +## Install dependency generator +install -Dpm0644 -t %{buildroot}%{_fileattrsdir} %{SOURCE16} + +# additional modules: +%if 0%{?with_ldap_module} +install -m 0755 ./objs/ngx_http_auth_ldap_module.so %{buildroot}%{_libdir}/nginx/modules/ngx_http_auth_ldap_module.so +install -p -D -m 0644 %{_builddir}/ngx_http_auth_ldap_module/example.conf %{buildroot}%{_defaultdocdir}/%{name}/auth_ldap_example.conf +%endif + +%if 0%{?with_modsecurity_module} +install -m 0755 ./objs/ngx_http_modsecurity_module.so %{buildroot}%{_libdir}/nginx/modules/ngx_http_modsecurity_module.so +install -p -D -m 0644 %{S:302} %{buildroot}%{_sysconfdir}/nginx/modsec/modsecurity.conf +install -p -D -m 0644 %{S:309} %{buildroot}%{_sysconfdir}/nginx/modsec/main.conf +install -p -D -m 0644 %{S:310} %{buildroot}%{_sysconfdir}/nginx/modsec/rules.conf +for f in CHANGES AUTHORS README.md LICENSE; do + install -p -D -m 0644 %{_builddir}/modsecurity-nginx-%{modsecver}/$f %{buildroot}%{_defaultdocdir}/%{name}-mod-security/$f +done +%endif + +%if 0%{?with_vts_module} +echo 'load_module "%{_libdir}/nginx/modules/ngx_http_vhost_traffic_status_module.so";' \ + > %{buildroot}%{_datadir}/nginx/modules/mod-vts.conf +%endif +%if 0%{?with_ldap_module} +echo 'load_module "%{_libdir}/nginx/modules/ngx_http_auth_ldap_module.so";' \ + > %{buildroot}%{_datadir}/nginx/modules/mod-http_auth-ldap.conf +%endif +%if 0%{?with_modsecurity_module} +echo 'load_module "%{_libdir}/nginx/modules/ngx_http_modsecurity_module.so";' \ + > %{buildroot}%{_datadir}/nginx/modules/mod-http_modsecurity.conf +%endif +%if 0%{?with_header_more_module} +echo 'load_module "%{_libdir}/nginx/modules/ngx_http_headers_more_filter_module.so";' \ + > %{buildroot}%{_datadir}/nginx/modules/mod-header-more.conf +%endif +%if 0%{?with_echo_module} +echo 'load_module "%{_libdir}/nginx/modules/ngx_http_echo_module.so";' \ + > %{buildroot}%{_datadir}/nginx/modules/mod-echo.conf +%endif +%if 0%{?with_http_accept_language_module} +echo 'load_module "%{_libdir}/nginx/modules/ngx_http_accept_language_module.so";' \ + > %{buildroot}%{_datadir}/nginx/modules/ngx_http_accept_language_module.conf +%endif +%if 0%{?with_set_misc_module} +echo 'load_module "%{_libdir}/nginx/modules/ndk_http_module.so";' \ + > %{buildroot}%{_datadir}/nginx/modules/mod-set-misc.conf +echo 'load_module "%{_libdir}/nginx/modules/ngx_http_set_misc_module.so";' \ + >> %{buildroot}%{_datadir}/nginx/modules/mod-set-misc.conf +%endif +%if 0%{?with_http_upload_module} +echo 'load_module "%{_libdir}/nginx/modules/ngx_http_upload_module.so";' \ + > %{buildroot}%{_datadir}/nginx/modules/mod-http-upload.conf +%endif + + +%pre filesystem +getent group %{nginx_user} > /dev/null || groupadd -r %{nginx_user} +getent passwd %{nginx_user} > /dev/null || \ + useradd -r -d %{_localstatedir}/lib/nginx -g %{nginx_user} \ + -s /sbin/nologin -c "Nginx web server" %{nginx_user} +exit 0 + +%post +%systemd_post nginx.service + +%if %{with geoip} +%post mod-http-geoip +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi +%endif + +%post mod-http-image-filter +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi + +%post mod-http-perl +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi + +%post mod-http-xslt-filter +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi + +%post mod-mail +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi + +%post mod-stream +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi + +# additional modules: +%if 0%{?with_vts_module} +%post mod-vts +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi +%endif + +%if 0%{?with_ldap_module} +%post mod-auth-ldap +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi +%endif + +%if 0%{?with_modsecurity_module} +%post mod-security +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi +%endif + +%if 0%{?with_header_more_module} +%post mod-header-more +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi +%endif + +%if 0%{?with_echo_module} +%post mod-echo +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi +%endif + +%if 0%{?with_set_misc_module} +%post mod-set-misc +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi +%endif + +%if 0%{?with_http_upload_module} +%post mod-http-upload +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi +%endif + +%if 0%{?with_http_accept_language_module} +%post mod-accept-language +if [ $1 -eq 1 ]; then + /usr/bin/systemctl reload nginx.service >/dev/null 2>&1 || : +fi +%endif + +%preun +%systemd_preun nginx.service + +%postun +%systemd_postun nginx.service +if [ $1 -ge 1 ]; then + /usr/bin/nginx-upgrade >/dev/null 2>&1 || : +fi + +%files +%if 0%{?rhel} == 7 +%doc UPGRADE-NOTES-1.6-to-1.10 +%endif +%{_datadir}/nginx/html/* +%{_bindir}/nginx-upgrade +%{_datadir}/vim/vimfiles/ftdetect/nginx.vim +%{_datadir}/vim/vimfiles/ftplugin/nginx.vim +%{_datadir}/vim/vimfiles/syntax/nginx.vim +%{_datadir}/vim/vimfiles/indent/nginx.vim +%{_mandir}/man3/nginx.3pm* +%{_mandir}/man8/nginx.8* +%{_mandir}/man8/nginx-upgrade.8* +%{_unitdir}/nginx.service + +%files core +%license LICENSE +%doc CHANGES README README.dynamic +%{_sbindir}/nginx +%config(noreplace) %{_sysconfdir}/nginx/fastcgi.conf +%config(noreplace) %{_sysconfdir}/nginx/fastcgi.conf.default +%config(noreplace) %{_sysconfdir}/nginx/fastcgi_params +%config(noreplace) %{_sysconfdir}/nginx/fastcgi_params.default +%config(noreplace) %{_sysconfdir}/nginx/koi-utf +%config(noreplace) %{_sysconfdir}/nginx/koi-win +%if ! 0%{?with_mailcap_mimetypes} +%config(noreplace) %{_sysconfdir}/nginx/mime.types +%endif +%config(noreplace) %{_sysconfdir}/nginx/mime.types.default +%config(noreplace) %{_sysconfdir}/nginx/nginx.conf +%config(noreplace) %{_sysconfdir}/nginx/nginx.conf.default +%config(noreplace) %{_sysconfdir}/nginx/scgi_params +%config(noreplace) %{_sysconfdir}/nginx/scgi_params.default +%config(noreplace) %{_sysconfdir}/nginx/uwsgi_params +%config(noreplace) %{_sysconfdir}/nginx/uwsgi_params.default +%config(noreplace) %{_sysconfdir}/nginx/win-utf +%config(noreplace) %{_sysconfdir}/logrotate.d/nginx +%attr(770,%{nginx_user},root) %dir %{_localstatedir}/lib/nginx +%attr(770,%{nginx_user},root) %dir %{_localstatedir}/lib/nginx/tmp +%dir %{_localstatedir}/log/nginx +%dir %{nginx_moduledir} +%dir %{nginx_moduleconfdir} + +%files all-modules + +%files filesystem +%dir %{_datadir}/nginx +%dir %{_datadir}/nginx/html +%dir %{_sysconfdir}/nginx +%dir %{_sysconfdir}/nginx/conf.d +%dir %{_sysconfdir}/nginx/default.d +%dir %{_sysconfdir}/systemd/system/nginx.service.d +%dir %{_unitdir}/nginx.service.d + +%if %{with geoip} +%files mod-http-geoip +%{nginx_moduleconfdir}/mod-http-geoip.conf +%{nginx_moduledir}/ngx_http_geoip_module.so +%endif + +%files mod-http-image-filter +%{nginx_moduleconfdir}/mod-http-image-filter.conf +%{nginx_moduledir}/ngx_http_image_filter_module.so + +%files mod-http-perl +%{nginx_moduleconfdir}/mod-http-perl.conf +%{nginx_moduledir}/ngx_http_perl_module.so +%dir %{perl_vendorarch}/auto/nginx +%{perl_vendorarch}/nginx.pm +%{perl_vendorarch}/auto/nginx/nginx.so + +%files mod-http-xslt-filter +%{nginx_moduleconfdir}/mod-http-xslt-filter.conf +%{nginx_moduledir}/ngx_http_xslt_filter_module.so + +%files mod-mail +%{nginx_moduleconfdir}/mod-mail.conf +%{nginx_moduledir}/ngx_mail_module.so + +%files mod-stream +%{nginx_moduleconfdir}/mod-stream.conf +%{nginx_moduledir}/ngx_stream_module.so + +%files mod-devel +%{_rpmmacrodir}/macros.nginxmods +%{_fileattrsdir}/nginxmods.attr +%{nginx_srcdir}/ + +# additional modules: +%if 0%{?with_vts_module} +%files mod-vts +%{_datadir}/nginx/modules/mod-vts.conf +%{_libdir}/nginx/modules/ngx_http_vhost_traffic_status_module.so +%endif + +%if 0%{?with_ldap_module} +%files mod-auth-ldap +%{_datadir}/nginx/modules/mod-http_auth-ldap.conf +%{_libdir}/nginx/modules/ngx_http_auth_ldap_module.so +%{_defaultdocdir}/%{name}/auth_ldap_example.conf +%endif + +%if 0%{?with_header_more_module} +%files mod-header-more +%{_datadir}/nginx/modules/mod-header-more.conf +%{_libdir}/nginx/modules/ngx_http_headers_more_filter_module.so +%endif + +%if 0%{?with_echo_module} +%files mod-echo +%{_datadir}/nginx/modules/mod-echo.conf +%{_libdir}/nginx/modules/ngx_http_echo_module.so +%endif + +%if 0%{?with_set_misc_module} +%files mod-set-misc +%{_datadir}/nginx/modules/mod-set-misc.conf +%{_libdir}/nginx/modules/ngx_http_set_misc_module.so +%{_libdir}/nginx/modules/ndk_http_module.so +%endif + +%if 0%{?with_http_upload_module} +%files mod-http-upload +%{_datadir}/nginx/modules/mod-http-upload.conf +%{_libdir}/nginx/modules/ngx_http_upload_module.so +%endif + +%if 0%{?with_http_accept_language_module} +%files mod-accept-language +%{_datadir}/nginx/modules/ngx_http_accept_language_module.conf +%{_libdir}/nginx/modules/ngx_http_accept_language_module.so +%endif + +%if 0%{?with_modsecurity_module} +%files mod-security +%{_defaultdocdir}/%{name}-mod-security/* +%config(noreplace) %{_sysconfdir}/nginx/modsec/modsecurity.conf +%config(noreplace) %{_sysconfdir}/nginx/modsec/main.conf +%config(noreplace) %{_sysconfdir}/nginx/modsec/rules.conf +%{_datadir}/nginx/modules/mod-http_modsecurity.conf +%{_libdir}/nginx/modules/ngx_http_modsecurity_module.so +%endif + +%clean +[ "%{buildroot}" != "/" ] && [ -d "%{buildroot}" ] && rm -rf %{buildroot}/* +[ "%{_builddir}" != "/" ] && [ -d "%{_builddir}" ] && rm -rf %{_builddir}/* + +%changelog +* Wed Nov 23 2022 Daniel Steiner +- New module (http_accept_language_module) added, required for www.threema.ch. + +* Wed Nov 23 2022 Daniel Steiner +- Build for Almalinux 9 with addtional required modules. +- If the nginx ABI version changes, this package must be rebuilt + diff --git a/alma/SPECS/powerline-go.spec b/alma/SPECS/powerline-go.spec new file mode 100644 index 0000000..5452cef --- /dev/null +++ b/alma/SPECS/powerline-go.spec @@ -0,0 +1,60 @@ +Name: powerline-go +Version: 1.23 +Release: 1%{?dist} +Summary: A Powerline style prompt for your shell +%define debug_package %{nil} + +License: MIT +URL: https://github.com/justjanne/powerline-go +Source0: %{name}-%{version}.tar.gz +Source1: %{name}.conf + +BuildRequires: golang >= 1.8 +%if 0%{?rhel} >= 8 +%else +BuildRequires: go-bindata +%endif + +Requires: git + +# Temporary solution while waiting for golang and go-bindata to be built in cbs.centos.org +ExclusiveArch: i686 x86_64 + +%description +A Powerline style prompt for your shell + +%prep +%setup -q -n %name-%version + +%build +go build + +%install +mkdir -p $RPM_BUILD_ROOT/%{_bindir} +mkdir -p $RPM_BUILD_ROOT/%{_datarootdir}/doc/%{name} +install %{name} $RPM_BUILD_ROOT/%{_bindir}/%{name} +install %{S:1} $RPM_BUILD_ROOT/%{_datarootdir}/doc/%{name}/%{name}.conf + +%files +%doc LICENSE.md README.md +%doc %{_datarootdir}/doc/%{name}/%{name}.conf +%{_bindir}/%{name} + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%changelog +* Fri May 19 2023 Daniel Steiner +- Update to 1.23 version. + +* Fri Apr 22 2022 Daniel Steiner +- Update to 1.22.1 version. + +* Fri May 21 2021 Daniel Steiner +- First build on Fedora 34. + +* Sun Mar 7 2021 Daniel Steiner +- Initial version. + diff --git a/alma/SPECS/sockstat.spec b/alma/SPECS/sockstat.spec new file mode 100644 index 0000000..142087d --- /dev/null +++ b/alma/SPECS/sockstat.spec @@ -0,0 +1,42 @@ +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 +* Sat Dec 3 2022 Daniel Steiner +- Initial version for Almalinux 9 (0.4.1). + +* Thu Apr 9 2020 Daniel Steiner +- Initial version for CentOS 8 (0.4.1). + diff --git a/alma/SPECS/zabbix.spec b/alma/SPECS/zabbix.spec new file mode 100644 index 0000000..bb8a1b4 --- /dev/null +++ b/alma/SPECS/zabbix.spec @@ -0,0 +1,1952 @@ +Name: zabbix +Version: 6.4.2 +Release: %{?alphatag:%{?alphatag}.}release2%{?dist} +Summary: The Enterprise-class open source monitoring solution +Group: Applications/Internet +License: GPLv2+ +URL: http://www.zabbix.com/ +Source0: https://cdn.zabbix.com/zabbix/sources/development/6.3/%{name}-%{version}%{?alphatag}.tar.gz +Source1: zabbix-web22.conf +Source2: zabbix-web24.conf +Source3: zabbix-logrotate.in +Source4: zabbix-java-gateway.init +Source5: zabbix-agent.init +Source6: zabbix-server.init +Source7: zabbix-proxy.init +Source10: zabbix-agent.service +Source11: zabbix-server.service +Source12: zabbix-proxy.service +Source13: zabbix-java-gateway.service +Source15: zabbix-tmpfiles.conf +Source16: zabbix-php-fpm.conf +Source17: zabbix-web-fcgi.conf +Source18: zabbix-nginx.conf +Source19: zabbix-agent2.service +Source20: zabbix-agent.sysconfig +Source21: zabbix-agent2.init +Source22: zabbix-agent2.sysconfig +Source23: zabbix-web-service.service +Source24: zabbix_policy.te +Patch0: frontend.patch +Patch1: fping3-sourceip-option.patch +Patch2: java-gateway.patch +Patch3: conf.patch +Patch4: agent2.conf.patch +Patch5: rhel6-go11.6.patch +Patch6: conf.var.run.patch +Patch7: agent2.conf.var.run.patch +Patch8: zabbix-godbus.patch +Patch9: agent2.conf.socket.patch + + +Buildroot: %{_tmppath}/zabbix-%{version}-%{release}-root-%(%{__id_u} -n) + +%{!?build_agent: %global build_agent 1} + +%ifarch x86_64 +%if 0%{?rhel} >= 7 +%{!?build_agent2: %global build_agent2 1} +%endif +%if 0%{?rhel} >= 8 +%{!?build_web_service: %global build_web_service 1} +%endif +%endif + +%if 0%{?rhel} >= 7 +%{!?build_proxy: %global build_proxy 1} +%{!?build_java_gateway: %global build_java_gateway 1} +%endif + +%if 0%{?rhel} >= 8 +%{!?build_server: %global build_server 1} +%{!?build_frontend: %global build_frontend 1} +%endif + +%{!?build_with_mysql: %global build_with_mysql 1} +%{!?build_with_pgsql: %global build_with_pgsql 1} +%{!?build_with_sqlite: %global build_with_sqlite 1} + +%{!?zabbix_script_dir: %global zabbix_script_dir /usr/lib/zabbix} + +%if 0%{build_with_mysql} == 0 && 0%{build_with_pgsql} == 0 +%global build_server 0 +%if 0%{build_with_sqlite} == 0 +%global build_proxy 0 +%endif +%endif + +%if 0%{?rhel} >= 7 +%{!?build_selinux_policy: %global build_selinux_policy 1} +%endif + +# FIXME: Building debuginfo is broken on RHEL 5 & 8. Disabled for now. +%if 0%{?rhel} <= 5 || 0%{?rhel} >= 8 +%define debug_package %{nil} +%endif + +# Enable hardening +%if 0%{?rhel} >= 8 +%global _hardened_build 1 +%endif + +BuildRequires: make +BuildRequires: golang +%if 0%{?rhel} >= 8 +BuildRequires: mariadb-connector-c-devel +BuildRequires: postgresql-devel >= 12.0 +BuildRequires: sqlite-devel +BuildRequires: net-snmp-devel +BuildRequires: openldap-devel +BuildRequires: gnutls-devel +BuildRequires: unixODBC-devel +BuildRequires: curl-devel >= 7.13.1 +BuildRequires: OpenIPMI-devel >= 2 +BuildRequires: libssh-devel >= 0.9.0 +BuildRequires: java-devel >= 1.6.0 +BuildRequires: libxml2-devel +BuildRequires: libevent-devel +%endif +%if 0%{?rhel} >= 7 +BuildRequires: pcre2-devel +%else +BuildRequires: pcre-devel +%endif +%if 0%{?rhel} >= 6 +BuildRequires: openssl-devel >= 1.0.1 +%endif +%if 0%{?rhel} >= 7 +BuildRequires: systemd +%endif +%if 0%{?build_selinux_policy} +BuildRequires: policycoreutils-devel +%endif + +%description +Zabbix is the ultimate enterprise-level software designed for +real-time monitoring of millions of metrics collected from tens of +thousands of servers, virtual machines and network devices. + +%if 0%{?build_agent} +%package agent +Summary: Zabbix agent +Group: Applications/Internet +Requires: logrotate +Requires(pre): /usr/sbin/useradd +%if 0%{?rhel} >= 7 +Requires(post): systemd +Requires(preun): systemd +Requires(preun): systemd +%else +Requires(post): /sbin/chkconfig +Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service +Requires(postun): /sbin/service +%endif +%endif + +%if 0%{?build_agent2} != 1 +%if 0%{?build_agent} +%description agent +Zabbix agent to be installed on monitored systems. +%endif + +%else +%if 0%{?build_agent} +%description agent +Old implementation of zabbix agent. +To be installed on monitored systems. +%endif + +%package agent2 +Summary: Zabbix agent 2 +Group: Applications/Internet +Requires: logrotate +%if 0%{?rhel} >= 7 +Requires(post): systemd +Requires(preun): systemd +Requires(preun): systemd +%else +Requires(post): /sbin/chkconfig +Requires(preun): /sbin/chkconfig +Requires(preun): /sbin/service +Requires(postun): /sbin/service +%endif + +%description agent2 +New implementation of zabbix agent. +To be installed on monitored systems. +%endif + +%if 0%{?build_web_service} +%package web-service +Summary: Zabbix web service +Group: Applications/Internet +Requires: logrotate +Requires(post): systemd +Requires(preun): systemd +Requires(preun): systemd + +%description web-service +Zabbix web servce for performing various tasks using headless web browser. +%endif + +%if 0%{?build_agent} +%package get +Summary: Zabbix get +Group: Applications/Internet + +%description get +Zabbix get command line utility. + +%package sender +Summary: Zabbix sender +Group: Applications/Internet + +%description sender +Zabbix sender command line utility. +%endif + +%if 0%{?build_server} || 0%{?build_proxy} +%package js +Summary: Zabbix js +Group: Applications/Internet + +%description js +Zabbix js command line utility. + +%package sql-scripts +Summary: Zabbix database sql scripts +Group: Applications/Internet +BuildArch: noarch + +%description sql-scripts +SQL files needed to setup Zabbix server or proxy databases +%endif + +%if 0%{?build_proxy} +%package proxy-mysql +Summary: Zabbix proxy for MySQL or MariaDB database +Group: Applications/Internet +Requires: fping +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Provides: zabbix-proxy = %{version}-%{release} +Provides: zabbix-proxy-implementation = %{version}-%{release} + +%description proxy-mysql +Zabbix proxy with MySQL or MariaDB database support. + +%package proxy-pgsql +Summary: Zabbix proxy for PostgreSQL database +Group: Applications/Internet +Requires: fping +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Provides: zabbix-proxy = %{version}-%{release} +Provides: zabbix-proxy-implementation = %{version}-%{release} + +%description proxy-pgsql +Zabbix proxy with PostgreSQL database support. + +%package proxy-sqlite3 +Summary: Zabbix proxy for SQLite3 database +Group: Applications/Internet +Requires: fping +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Provides: zabbix-proxy = %{version}-%{release} +Provides: zabbix-proxy-implementation = %{version}-%{release} + +%description proxy-sqlite3 +Zabbix proxy with SQLite3 database support. +%endif + +%if 0%{?build_server} +%package server-mysql +Summary: Zabbix server for MySQL or MariaDB database +Group: Applications/Internet +Requires: fping +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Provides: zabbix-server = %{version}-%{release} +Provides: zabbix-server-implementation = %{version}-%{release} + +%description server-mysql +Zabbix server with MySQL or MariaDB database support. + +%package server-pgsql +Summary: Zabbix server for PostgresSQL database +Group: Applications/Internet +Requires: fping +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +Provides: zabbix-server = %{version}-%{release} +Provides: zabbix-server-implementation = %{version}-%{release} +%description server-pgsql +Zabbix server with PostgresSQL database support. +%endif + +%if 0%{?build_frontend} +%package web +Summary: Zabbix web frontend common package +Group: Application/Internet +BuildArch: noarch +Requires: dejavu-sans-fonts +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/update-alternatives + +%description web +Zabbix web frontend common package + +%package web-deps +Summary: PHP dependencies metapackage for frontend +Group: Application/Internet +BuildArch: noarch +Requires: zabbix-web = %{version}-%{release} +Requires: php-gd >= 7.2 +Requires: php-bcmath >= 7.2 +Requires: php-mbstring >= 7.2 +Requires: php-xml >= 7.2 +Requires: php-ldap >= 7.2 +Requires: php-json >= 7.2 +Requires: php-fpm >= 7.2 +Requires: zabbix-web = %{version}-%{release} +Requires: zabbix-web-database = %{version}-%{release} + +%description web-deps +PHP dependencies metapackage for Zabbix frontend + +%package web-mysql +Summary: Zabbix web frontend for MySQL +Group: Applications/Internet +BuildArch: noarch +Requires: zabbix-web = %{version}-%{release} +Requires: zabbix-web-deps = %{version}-%{release} +Requires: php-mysqlnd +Provides: zabbix-web-database = %{version}-%{release} + +%description web-mysql +Zabbix web frontend for MySQL + +%package web-pgsql +Summary: Zabbix web frontend for PostgreSQL +Group: Applications/Internet +BuildArch: noarch +Requires: zabbix-web = %{version}-%{release} +Requires: zabbix-web-deps = %{version}-%{release} +Requires: php-pgsql +Provides: zabbix-web-database = %{version}-%{release} + +%description web-pgsql +Zabbix web frontend for PostgreSQL + +%package apache-conf +Summary: Automatic zabbix frontend configuration with apache +Group: Applications/Internet +BuildArch: noarch +Requires: zabbix-web-deps = %{version}-%{release} +Requires: httpd + +%description apache-conf +Zabbix frontend configuration for apache + +%package nginx-conf +Summary: Zabbix frontend configuration for nginx and php-fpm +Group: Applications/Internet +BuildArch: noarch +Requires: zabbix-web-deps = %{version}-%{release} +Requires: nginx + +%description nginx-conf +Zabbix frontend configuration for nginx and php-fpm + +%package web-japanese +Summary: Japanese font settings for Zabbix frontend +Group: Applications/Internet +BuildArch: noarch +Requires: google-noto-sans-cjk-ttc-fonts +Requires: glibc-langpack-ja +Requires: zabbix-web = %{version}-%{release} +Requires(post): %{_sbindir}/update-alternatives +Requires(preun): %{_sbindir}/update-alternatives + +%description web-japanese +Japanese font configuration for Zabbix web frontend +%endif + +%if 0%{?build_java_gateway} +%package java-gateway +Summary: Zabbix java gateway +Group: Applications/Internet +Requires: java-headless >= 1.6.0 +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd + +%description java-gateway +Zabbix java gateway +%endif + +%if 0%{?build_selinux_policy} +%package selinux-policy +Summary: Zabbix SELinux policy +Group: Applications/Internet +Requires(post): %{_sbindir}/semodule +Requires(preun): %{_sbindir}/semodule + +%description selinux-policy +Zabbix SELinux policy +%endif + + + +# +# prep +# + +%prep +%setup0 -q -n %{name}-%{version}%{?alphatag} +%patch8 + +%if 0%{?build_frontend} +%patch0 -p1 + +## remove font file +rm -f ui/assets/fonts/DejaVuSans.ttf + +# replace font in defines.inc.php +sed -i -r "s/(define\(.*_FONT_NAME.*)DejaVuSans/\1graphfont/" \ + ui/include/defines.inc.php + +# remove .htaccess files +rm -f ui/app/.htaccess +rm -f ui/conf/.htaccess +rm -f ui/include/.htaccess +rm -f ui/local/.htaccess + +# remove translation source files and scripts +find ui/locale -name '*.po' | xargs rm -f +find ui/locale -name '*.sh' | xargs rm -f +%endif + +%if 0%{?build_server} || 0%{?build_proxy} || 0%{?build_agent} || 0%{?build_agent2} +%patch1 -p1 +%endif + +%if 0%{?build_server} || 0%{?build_proxy} +# traceroute command path for global script +sed -i -e 's|/usr/bin/traceroute|/bin/traceroute|' database/mysql/data.sql +sed -i -e 's|/usr/bin/traceroute|/bin/traceroute|' database/postgresql/data.sql +sed -i -e 's|/usr/bin/traceroute|/bin/traceroute|' database/sqlite3/data.sql +%endif + +%if 0%{?build_server} +# sql files for servers +cat database/mysql/schema.sql > database/mysql/server.sql +cat database/mysql/images.sql >> database/mysql/server.sql +cat database/mysql/data.sql >> database/mysql/server.sql +gzip database/mysql/server.sql + +cat database/postgresql/schema.sql > database/postgresql/server.sql +cat database/postgresql/images.sql >> database/postgresql/server.sql +cat database/postgresql/data.sql >> database/postgresql/server.sql +gzip database/postgresql/server.sql +%endif + +%if 0%{?build_proxy} +# sql files for proxies +mv database/mysql/schema.sql database/mysql/proxy.sql +mv database/postgresql/schema.sql database/postgresql/proxy.sql +mv database/sqlite3/schema.sql database/sqlite3/proxy.sql +%endif + +%if 0%{?build_java_gateway} +%patch2 -p1 +%endif + +# update config files +%patch3 -p1 + +%if 0%{?build_agent2} +%patch4 -p1 +%if 0%{?rhel} == 6 +%patch5 -p1 +%endif +%endif + +%if 0%{?rhel} <= 6 +%patch6 -p1 +%if 0%{?build_agent2} +%patch7 -p1 +%endif +%endif + +%if 0%{?build_agent2} +%patch9 -p1 +%endif + +%build +# Build consists of 1-3 configure/make passes, one for each database. +# pass 1: is sqlite proxy, may be omitted. +# pass 2: is pqsql server/proxy, may be omitted. +# pass 3: If only one database is enabled, then it must occur with pass 3. + +build_conf_common=" + --enable-dependency-tracking + --sysconfdir=/etc/zabbix + --libdir=%{_libdir}/zabbix + --enable-ipv6 + --with-net-snmp + --with-ldap + --with-libcurl + --with-openipmi + --with-unixodbc +%if 0%{?rhel} >= 8 + --with-ssh +%else + --with-ssh2 +%endif + --with-libxml2 + --with-libevent +%if 0%{?rhel} >= 7 + --with-libpcre2 +%else + --with-libpcre +%endif +%if 0%{?rhel} >= 6 + --with-openssl +%endif +" + +# setup pass 3 +%if 0%{?build_with_mysql} && ( 0%{?build_server} || 0%{?build_proxy} ) +build_conf_3=" +%if 0%{?build_server} + --enable-server +%endif +%if 0%{?build_proxy} + --enable-proxy +%endif + --with-mysql +" + +build_db_3=mysql +%endif + + +# setup pass 2 +%if 0%{?build_with_pgsql} && ( 0%{?build_server} || 0%{?build_proxy} ) +build_conf_2=" +%if 0%{?build_server} + --enable-server +%endif +%if 0%{?build_proxy} + --enable-proxy +%endif + --with-postgresql +" + +if [ -z "$build_conf_3" ]; then + build_conf_3="$build_conf_2" + build_conf_2="" + build_db_3="pgsql" +fi +%endif + + +# setup pass 1 +%if 0%{?build_with_sqlite} && 0%{?build_proxy} +build_conf_1="--enable-proxy --with-sqlite3" + +if [ -z "$build_conf_3" ]; then + build_conf_3="$build_conf_1" + build_conf_1="" + build_db_3=sqlite3 +fi +%endif + + +# add agents, web-service and java-gateway to pass 3 +build_conf_3=" +%if 0%{?build_agent} + --enable-agent +%endif +%if 0%{?build_agent2} + --enable-agent2 +%endif +%if 0%{?build_java_gateway} + --enable-java +%endif +%if 0%{?build_web_service} + --enable-webservice +%endif + $build_conf_3 +" + + +%if 0%{?build_server} || 0%{?build_proxy} +make_flags="EXTERNAL_SCRIPTS_PATH=/usr/lib/zabbix/externalscripts" +%endif + +%if 0%{?build_server} +make_flags="$make_flags ALERT_SCRIPTS_PATH=/usr/lib/zabbix/alertscripts" +%endif + +# pass 1 +if [ -n "$build_conf_1" ]; then + %configure $build_conf_common $build_conf_1 + make $make_flags + mv src/zabbix_proxy/zabbix_proxy src/zabbix_proxy/zabbix_proxy_sqlite3 +fi + + +# pass 2 +if [ -n "$build_conf_2" ]; then + %configure $build_conf_common $build_conf_2 + make $make_flags +%if 0%{?build_server} + mv src/zabbix_server/zabbix_server src/zabbix_server/zabbix_server_pgsql +%endif +%if 0%{?build_proxy} + mv src/zabbix_proxy/zabbix_proxy src/zabbix_proxy/zabbix_proxy_pgsql +%endif +fi + + +# pass 3 +if [ -n "$build_conf_3" ]; then + %configure $build_conf_common $build_conf_3 + make $make_flags +%if 0%{?build_server} + mv src/zabbix_server/zabbix_server "src/zabbix_server/zabbix_server_$build_db_3" +%endif +%if 0%{?build_proxy} + mv src/zabbix_proxy/zabbix_proxy "src/zabbix_proxy/zabbix_proxy_$build_db_3" +%endif +fi + + +# build selinux policy +%if 0%{?build_selinux_policy} +cp %{SOURCE24} . +make -f /usr/share/selinux/devel/Makefile zabbix_policy.pp +%endif + + +# +# install +# + +%install + +rm -rf $RPM_BUILD_ROOT +mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/zabbix +mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/run/zabbix +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zabbix +mkdir -p $RPM_BUILD_ROOT%{_datadir} +mkdir -p $RPM_BUILD_ROOT%{_datadir}/man/man8 +mkdir -p $RPM_BUILD_ROOT%{_datadir}/zabbix +mkdir -p $RPM_BUILD_ROOT%{_sbindir} + + +%if 0%{?build_agent2} || 0%{?build_web_service} +make DESTDIR=$RPM_BUILD_ROOT GOBIN=$RPM_BUILD_ROOT%{_sbindir} install +%else +make DESTDIR=$RPM_BUILD_ROOT install +%endif + + +%if 0%{?build_agent} +mv $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_agentd.conf.d $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_agentd.d +install -dm 755 $RPM_BUILD_ROOT%{_docdir}/zabbix-agent-%{version} +cat %{SOURCE3} | sed \ + -e 's|COMPONENT|agentd|g' \ + > $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-agent +%if 0%{?rhel} >= 7 +install -Dm 0644 -p %{SOURCE10} $RPM_BUILD_ROOT%{_unitdir}/zabbix-agent.service +install -Dm 0644 -p %{SOURCE15} $RPM_BUILD_ROOT%{_tmpfilesdir}/zabbix-agent.conf +%else +install -Dm 0755 -p %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/init.d/zabbix-agent +install -Dm 0644 -p %{SOURCE20} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/zabbix-agent +%endif +%else +%if 0%{?build_agent2} +rm $RPM_BUILD_ROOT%{_sbindir}/zabbix_agentd +rm $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_agentd.conf +%endif +%endif + + +%if 0%{?build_agent2} +cat %{SOURCE3} | sed \ + -e 's|COMPONENT|agent2|g' \ + > $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-agent2 +cp man/zabbix_agent2.man $RPM_BUILD_ROOT%{_mandir}/man8/zabbix_agent2.8 +%if 0%{?rhel} >= 7 +install -Dm 0644 -p %{SOURCE19} $RPM_BUILD_ROOT%{_unitdir}/zabbix-agent2.service +install -Dm 0644 -p %{SOURCE15} $RPM_BUILD_ROOT%{_tmpfilesdir}/zabbix_agent2.conf +%else +install -Dm 0755 -p %{SOURCE21} $RPM_BUILD_ROOT%{_sysconfdir}/init.d/zabbix-agent2 +install -Dm 0644 -p %{SOURCE22} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/zabbix-agent2 +%endif +%endif + + +%if 0%{?build_web_service} +cat %{SOURCE3} | sed \ + -e 's|COMPONENT|web-service|g' \ + > $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-web-service +cp man/zabbix_web_service.man $RPM_BUILD_ROOT%{_mandir}/man8/zabbix_web_service.8 +install -Dm 0644 -p %{SOURCE23} $RPM_BUILD_ROOT%{_unitdir}/zabbix-web-service.service +install -Dm 0644 -p %{SOURCE15} $RPM_BUILD_ROOT%{_tmpfilesdir}/zabbix_web_service.conf +%endif + + +%if 0%{?build_server} || 0%{?build_proxy} +mkdir -p $RPM_BUILD_ROOT%{zabbix_script_dir} +mv $RPM_BUILD_ROOT%{_datadir}/zabbix/externalscripts $RPM_BUILD_ROOT%{zabbix_script_dir} + + +# +# install sql files +# +%if 0%{?build_with_mysql} +mkdir -p $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/mysql +%if 0%{?build_proxy} +cp database/mysql/proxy.sql $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/mysql +%endif +%if 0%{?build_server} +cp database/mysql/server.sql.gz $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/mysql +cp database/mysql/double.sql $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/mysql +cp database/mysql/history_pk_prepare.sql $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/mysql +%endif +%endif + +%if 0%{?build_with_pgsql} +mkdir -p $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/postgresql +%if 0%{?build_proxy} +cp database/postgresql/proxy.sql $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/postgresql +%endif +%if 0%{?build_server} +cp database/postgresql/server.sql.gz $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/postgresql +cp database/postgresql/timescaledb.sql $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/postgresql +cp database/postgresql/double.sql $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/postgresql +cp database/postgresql/history_pk_prepare.sql $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/postgresql +%endif +cp -R database/postgresql/tsdb_history_pk_upgrade_no_compression $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/postgresql +cp -R database/postgresql/tsdb_history_pk_upgrade_with_compression $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/postgresql +%endif + +%if 0%{?build_with_sqlite} && 0%{?build_proxy} +mkdir -p $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/sqlite3 +cp database/sqlite3/proxy.sql $RPM_BUILD_ROOT%{_datadir}/zabbix-sql-scripts/sqlite3 +%endif +%endif + + +%if 0%{?build_proxy} +mv $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_proxy.conf.d $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_proxy.d +install -m 0755 -p src/zabbix_proxy/zabbix_proxy_* $RPM_BUILD_ROOT%{_sbindir}/ +rm $RPM_BUILD_ROOT%{_sbindir}/zabbix_proxy +cat %{SOURCE3} | sed \ + -e 's|COMPONENT|proxy|g' \ + > $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-proxy +install -Dm 0644 -p %{SOURCE12} $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy.service +install -Dm 0644 -p %{SOURCE15} $RPM_BUILD_ROOT%{_tmpfilesdir}/zabbix-proxy.conf +%endif + + +%if 0%{?build_server} +mv $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_server.conf.d $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_server.d +install -m 0755 -p src/zabbix_server/zabbix_server_* $RPM_BUILD_ROOT%{_sbindir}/ +rm $RPM_BUILD_ROOT%{_sbindir}/zabbix_server +mv $RPM_BUILD_ROOT%{_datadir}/zabbix/alertscripts $RPM_BUILD_ROOT%{zabbix_script_dir} +cat %{SOURCE3} | sed \ + -e 's|COMPONENT|server|g' \ + > $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-server +install -Dm 0644 -p %{SOURCE11} $RPM_BUILD_ROOT%{_unitdir}/zabbix-server.service +install -Dm 0644 -p %{SOURCE15} $RPM_BUILD_ROOT%{_tmpfilesdir}/zabbix-server.conf +%endif + + +%if 0%{?build_frontend} +find ui -name '*.orig' | xargs rm -f +cp -a ui/* $RPM_BUILD_ROOT%{_datadir}/zabbix +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/web +touch $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/web/zabbix.conf.php +mv $RPM_BUILD_ROOT%{_datadir}/zabbix/conf/maintenance.inc.php $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/web/ +install -Dm 0644 -p %{SOURCE16} $RPM_BUILD_ROOT%{_sysconfdir}/php-fpm.d/zabbix.conf +install -Dm 0644 -p %{SOURCE17} $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d/zabbix.conf +install -Dm 0644 -p %{SOURCE18} $RPM_BUILD_ROOT%{_sysconfdir}/nginx/conf.d/zabbix.conf +%endif + + +%if 0%{?build_java_gateway} +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_java/startup.sh $RPM_BUILD_ROOT%{_sbindir}/zabbix_java_gateway_startup +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_java/shutdown.sh $RPM_BUILD_ROOT%{_sbindir}/zabbix_java_gateway_shutdown +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_java/settings.sh $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_java_gateway.conf +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_java/lib/logback.xml $RPM_BUILD_ROOT%{_sysconfdir}/zabbix/zabbix_java_gateway_logback.xml +rm $RPM_BUILD_ROOT%{_sbindir}/zabbix_java/lib/logback-console.xml +mv $RPM_BUILD_ROOT%{_sbindir}/zabbix_java $RPM_BUILD_ROOT%{_datadir}/zabbix-java-gateway +install -Dm 0644 -p %{SOURCE13} $RPM_BUILD_ROOT%{_unitdir}/zabbix-java-gateway.service +install -Dm 0644 -p %{SOURCE15} $RPM_BUILD_ROOT%{_tmpfilesdir}/zabbix-java-gateway.conf +%endif + + +%if 0%{?build_selinux_policy} +mkdir -p $RPM_BUILD_ROOT%{_datadir}/selinux/packages/zabbix +mv zabbix_policy.pp $RPM_BUILD_ROOT%{_datadir}/selinux/packages/zabbix +%endif + + +%clean +rm -rf $RPM_BUILD_ROOT + + +# +# files & scriptlets +# + + +%if 0%{?build_agent} + +%files agent +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README conf/zabbix_agentd/userparameter_mysql.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agentd.conf +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-agent +%dir %{_sysconfdir}/zabbix/zabbix_agentd.d +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/zabbix +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/zabbix +%{_sbindir}/zabbix_agentd +%{_mandir}/man8/zabbix_agentd.8* +%if 0%{?rhel} >= 7 +%{_unitdir}/zabbix-agent.service +%{_tmpfilesdir}/zabbix-agent.conf +%else +%{_sysconfdir}/init.d/zabbix-agent +%config(noreplace) %{_sysconfdir}/sysconfig/zabbix-agent +%endif + +%files get +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%{_bindir}/zabbix_get +%{_mandir}/man1/zabbix_get.1* + +%files sender +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%{_bindir}/zabbix_sender +%{_mandir}/man1/zabbix_sender.1* + +%pre agent +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_localstatedir}/lib/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post agent +%if 0%{?rhel} >= 7 +%systemd_post zabbix-agent.service +%else +/sbin/chkconfig --add zabbix-agent || : +%endif + +%preun agent +if [ "$1" = 0 ]; then +%if 0%{?rhel} >= 7 +%systemd_preun zabbix-agent.service +%else +/sbin/service zabbix-agent stop >/dev/null 2>&1 +/sbin/chkconfig --del zabbix-agent +%endif +fi +: + +%postun agent +%if 0%{?rhel} >= 7 +%systemd_postun_with_restart zabbix-agent.service +%else +if [ $1 -ge 1 ]; then +/sbin/service zabbix-agent try-restart >/dev/null 2>&1 || : +fi +%endif + +%posttrans agent +# preserve old userparameter_mysql.conf file during upgrade +if [ -f %{_sysconfdir}/zabbix/zabbix_agentd.d/userparameter_mysql.conf.rpmsave ] && [ ! -f %{_sysconfdir}/zabbix/zabbix_agentd.d/userparameter_mysql.conf ]; then + cp -vn %{_sysconfdir}/zabbix/zabbix_agentd.d/userparameter_mysql.conf.rpmsave %{_sysconfdir}/zabbix/zabbix_agentd.d/userparameter_mysql.conf +fi +: +%endif + + + +%if 0%{?build_agent2} +%files agent2 +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.conf +%dir %{_sysconfdir}/zabbix/zabbix_agent2.d +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.d/plugins.d/ceph.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.d/plugins.d/docker.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.d/plugins.d/memcached.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.d/plugins.d/mysql.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.d/plugins.d/oracle.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.d/plugins.d/redis.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.d/plugins.d/smart.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.d/plugins.d/modbus.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent2.d/plugins.d/mqtt.conf +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-agent2 +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/zabbix +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/zabbix +%{_sbindir}/zabbix_agent2 +%{_mandir}/man8/zabbix_agent2.8* +%if 0%{?rhel} >= 7 +%{_unitdir}/zabbix-agent2.service +%{_tmpfilesdir}/zabbix_agent2.conf +%else +%{_sysconfdir}/init.d/zabbix-agent2 +%config(noreplace) %{_sysconfdir}/sysconfig/zabbix-agent2 +%endif + +%pre agent2 +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_localstatedir}/lib/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post agent2 +%if 0%{?rhel} >= 7 +%systemd_post zabbix-agent2.service +%endif +# make sure that agent2 log file is create with proper attributes (ZBX-18243) +if [ $1 == 1 ] && [ ! -f %{_localstatedir}/log/zabbix/zabbix_agent2.log ]; then + touch %{_localstatedir}/log/zabbix/zabbix_agent2.log + chown zabbix:zabbix %{_localstatedir}/log/zabbix/zabbix_agent2.log +fi +: + +%if 0%{?rhel} >= 7 +%preun agent2 +%systemd_preun zabbix-agent2.service +: + +%postun agent2 +%systemd_postun_with_restart zabbix-agent2.service +%endif +%endif + + +%if 0%{?build_web_service} +%files web-service +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%{_sbindir}/zabbix_web_service +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_web_service.conf +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-web-service +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/zabbix +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/zabbix +%{_unitdir}/zabbix-web-service.service +%{_tmpfilesdir}/zabbix_web_service.conf +%{_mandir}/man8/zabbix_web_service.8* + +%pre web-service +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_localstatedir}/lib/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post web-service +%systemd_post zabbix-web-service.service +: + +%preun web-service +%systemd_preun zabbix-web-service.service +: + +%postun web-service +%systemd_postun_with_restart zabbix-web-service.service +%endif + + +%if 0%{?build_server} || 0%{?build_proxy} +%files js +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%{_bindir}/zabbix_js + +%files sql-scripts +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%if 0%{?build_server} +%{_datadir}/zabbix-sql-scripts/mysql/server.sql.gz +%{_datadir}/zabbix-sql-scripts/mysql/double.sql +%{_datadir}/zabbix-sql-scripts/mysql/history_pk_prepare.sql +%{_datadir}/zabbix-sql-scripts/postgresql/server.sql.gz +%{_datadir}/zabbix-sql-scripts/postgresql/timescaledb.sql +%{_datadir}/zabbix-sql-scripts/postgresql/double.sql +%{_datadir}/zabbix-sql-scripts/postgresql/history_pk_prepare.sql +%endif +%if 0%{?build_proxy} +%{_datadir}/zabbix-sql-scripts/mysql/proxy.sql +%{_datadir}/zabbix-sql-scripts/postgresql/proxy.sql +%{_datadir}/zabbix-sql-scripts/sqlite3/proxy.sql +%endif +%if 0%{?build_server} || 0%{?build_proxy} +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk_log.sql +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk.sql +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk_str.sql +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk_text.sql +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_no_compression/history_pk_uint.sql +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk_log.sql +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk.sql +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk_str.sql +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk_text.sql +%{_datadir}/zabbix-sql-scripts/postgresql/tsdb_history_pk_upgrade_with_compression/history_pk_uint.sql +%endif +%endif + + +%if 0%{?build_proxy} +%if 0%{?build_with_mysql} +%files proxy-mysql +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%attr(0600,root,zabbix) %config(noreplace) %{_sysconfdir}/zabbix/zabbix_proxy.conf +%dir %{zabbix_script_dir}/externalscripts +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-proxy +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/zabbix +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/zabbix +%{_mandir}/man8/zabbix_proxy.8* +%{_unitdir}/zabbix-proxy.service +%{_tmpfilesdir}/zabbix-proxy.conf +%{_sbindir}/zabbix_proxy_mysql + +%pre proxy-mysql +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_localstatedir}/lib/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post proxy-mysql +%systemd_post zabbix-proxy.service +/usr/sbin/update-alternatives --install %{_sbindir}/zabbix_proxy \ + zabbix-proxy %{_sbindir}/zabbix_proxy_mysql 10 +: + +%preun proxy-mysql +if [ "$1" = 0 ]; then +%systemd_preun zabbix-proxy.service +/usr/sbin/update-alternatives --remove zabbix-proxy \ +%{_sbindir}/zabbix_proxy_mysql +fi +: + +%postun proxy-mysql +%systemd_postun_with_restart zabbix-proxy.service +: +%endif + + +%if 0%{?build_with_pgsql} +%files proxy-pgsql +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%attr(0600,root,zabbix) %config(noreplace) %{_sysconfdir}/zabbix/zabbix_proxy.conf +%dir %{zabbix_script_dir}/externalscripts +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-proxy +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/zabbix +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/zabbix +%{_mandir}/man8/zabbix_proxy.8* +%{_unitdir}/zabbix-proxy.service +%{_tmpfilesdir}/zabbix-proxy.conf +%{_sbindir}/zabbix_proxy_pgsql + +%pre proxy-pgsql +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_localstatedir}/lib/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post proxy-pgsql +%systemd_post zabbix-proxy.service +/usr/sbin/update-alternatives --install %{_sbindir}/zabbix_proxy \ + zabbix-proxy %{_sbindir}/zabbix_proxy_pgsql 10 +: + +%preun proxy-pgsql +if [ "$1" = 0 ]; then +%systemd_preun zabbix-proxy.service +/usr/sbin/update-alternatives --remove zabbix-proxy \ + %{_sbindir}/zabbix_proxy_pgsql +fi +: + +%postun proxy-pgsql +%systemd_postun_with_restart zabbix-proxy.service +: +%endif + + +%if 0%{?build_with_sqlite} +%files proxy-sqlite3 +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%attr(0640,root,zabbix) %config(noreplace) %{_sysconfdir}/zabbix/zabbix_proxy.conf +%dir %{zabbix_script_dir}/externalscripts +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-proxy +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/zabbix +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/zabbix +%{_mandir}/man8/zabbix_proxy.8* +%{_unitdir}/zabbix-proxy.service +%{_tmpfilesdir}/zabbix-proxy.conf +%{_sbindir}/zabbix_proxy_sqlite3 + +%pre proxy-sqlite3 +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_localstatedir}/lib/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post proxy-sqlite3 +%systemd_post zabbix-proxy.service +/usr/sbin/update-alternatives --install %{_sbindir}/zabbix_proxy \ + zabbix-proxy %{_sbindir}/zabbix_proxy_sqlite3 10 +: + +%preun proxy-sqlite3 +if [ "$1" = 0 ]; then +%systemd_preun zabbix-proxy.service +/usr/sbin/update-alternatives --remove zabbix-proxy \ + %{_sbindir}/zabbix_proxy_sqlite3 +fi +: + +%postun proxy-sqlite3 +%systemd_postun_with_restart zabbix-proxy.service +: +%endif +%endif + + +%if 0%{?build_server} +%if 0%{?build_with_mysql} +%files server-mysql +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%attr(0600,root,zabbix) %config(noreplace) %{_sysconfdir}/zabbix/zabbix_server.conf +%dir %{zabbix_script_dir}/alertscripts +%dir %{zabbix_script_dir}/externalscripts +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-server +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/zabbix +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/zabbix +%{_mandir}/man8/zabbix_server.8* +%{_unitdir}/zabbix-server.service +%{_tmpfilesdir}/zabbix-server.conf +%{_sbindir}/zabbix_server_mysql + +%pre server-mysql +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_localstatedir}/lib/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post server-mysql +%systemd_post zabbix-server.service +/usr/sbin/update-alternatives --install %{_sbindir}/zabbix_server \ + zabbix-server %{_sbindir}/zabbix_server_mysql 10 +: + +%preun server-mysql +if [ "$1" = 0 ]; then +%systemd_preun zabbix-server.service +/usr/sbin/update-alternatives --remove zabbix-server \ + %{_sbindir}/zabbix_server_mysql +fi +: + +%postun server-mysql +%systemd_postun_with_restart zabbix-server.service +: +%endif + + +%if 0%{?build_with_pgsql} +%files server-pgsql +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%attr(0600,root,zabbix) %config(noreplace) %{_sysconfdir}/zabbix/zabbix_server.conf +%dir %{zabbix_script_dir}/alertscripts +%dir %{zabbix_script_dir}/externalscripts +%config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-server +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/zabbix +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/zabbix +%{_mandir}/man8/zabbix_server.8* +%{_unitdir}/zabbix-server.service +%{_tmpfilesdir}/zabbix-server.conf +%{_sbindir}/zabbix_server_pgsql + +%pre server-pgsql +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_localstatedir}/lib/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post server-pgsql +%systemd_post zabbix-server.service +/usr/sbin/update-alternatives --install %{_sbindir}/zabbix_server \ + zabbix-server %{_sbindir}/zabbix_server_pgsql 10 +: + +%preun server-pgsql +if [ "$1" = 0 ]; then +%systemd_preun zabbix-server.service +/usr/sbin/update-alternatives --remove zabbix-server \ + %{_sbindir}/zabbix_server_pgsql +fi +: + +%postun server-pgsql +%systemd_postun_with_restart zabbix-server.service +: +%endif +%endif + + +%if 0%{?build_frontend} +%files web +%defattr(-,root,root,-) +%dir %{_sysconfdir}/zabbix/web +%ghost %config(noreplace) %{_sysconfdir}/zabbix/web/zabbix.conf.php +%doc AUTHORS ChangeLog COPYING NEWS README +%config(noreplace) %{_sysconfdir}/zabbix/web/maintenance.inc.php +%{_datadir}/zabbix + +%files web-deps +%config(noreplace) %{_sysconfdir}/php-fpm.d/zabbix.conf + +%files web-japanese +%defattr(-,root,root,-) + +%files web-mysql +%defattr(-,root,root,-) + +%files web-pgsql +%defattr(-,root,root,-) + +%files apache-conf +%defattr(-,root,root,-) +%config(noreplace) %{_sysconfdir}/httpd/conf.d/zabbix.conf + +%files nginx-conf +%defattr(-,root,root,-) +%config(noreplace) %{_sysconfdir}/nginx/conf.d/zabbix.conf + +%post web +%if 0%{?rhel} >= 9 +if [ "$1" = 2 ] && update-alternatives --display zabbix-web-font | grep -q %{_datadir}/fonts/dejavu/DejaVuSans.ttf; then + # remove borked web font alternative symlink + /usr/sbin/update-alternatives --remove zabbix-web-font \ + %{_datadir}/fonts/dejavu/DejaVuSans.ttf +fi +/usr/sbin/update-alternatives --install %{_datadir}/zabbix/assets/fonts/graphfont.ttf \ + zabbix-web-font %{_datadir}/fonts/dejavu-sans-fonts/DejaVuSans.ttf 10 +: +%else +# The fonts directory was moved into assets subdirectory at one point. +# +# This broke invocation of update-alternatives command below, because the target link for zabbix-web-font changed +# from zabbix/fonts/graphfont.ttf to zabbix/assets/fonts/graphfont.ttf +# +# We handle this movement by deleting /var/lib/alternatives/zabbix-web-font file if it contains the old target link. +# We also remove symlink at zabbix/fonts/graphfont.ttf to have the old fonts directory be deleted during update. +if [ -f /var/lib/alternatives/zabbix-web-font ] && \ + [ -z "$(grep %{_datadir}/zabbix/assets/fonts/graphfont.ttf /var/lib/alternatives/zabbix-web-font)" ] +then + rm /var/lib/alternatives/zabbix-web-font + if [ -h %{_datadir}/zabbix/fonts/graphfont.ttf ]; then + rm %{_datadir}/zabbix/fonts/graphfont.ttf + fi +fi +/usr/sbin/update-alternatives --install %{_datadir}/zabbix/assets/fonts/graphfont.ttf \ + zabbix-web-font %{_datadir}/fonts/dejavu/DejaVuSans.ttf 10 +: +%endif + +%post web-japanese +/usr/sbin/update-alternatives --install %{_datadir}/zabbix/assets/fonts/graphfont.ttf zabbix-web-font \ + %{_datadir}/fonts/google-noto-cjk/NotoSansCJK-Regular.ttc 20 +: + +# The user apache must be available for these to work. +# It is provided by httpd or php-fpm packages. +%post apache-conf +if [ -d /etc/zabbix/web ]; then + chown apache:apache /etc/zabbix/web/ +fi +: + +%post nginx-conf +if [ -d /etc/zabbix/web ]; then + chown apache:apache /etc/zabbix/web/ +fi +: + +%preun web +%if 0%{?rhel} >= 9 +if [ "$1" = 0 ]; then +/usr/sbin/update-alternatives --remove zabbix-web-font \ + %{_datadir}/fonts/dejavu-sans-fonts/DejaVuSans.ttf +fi +%else +if [ "$1" = 0 ]; then +/usr/sbin/update-alternatives --remove zabbix-web-font \ + %{_datadir}/fonts/dejavu/DejaVuSans.ttf +fi +%endif +: + +%preun web-japanese +if [ "$1" = 0 ]; then +/usr/sbin/update-alternatives --remove zabbix-web-font \ + %{_datadir}/fonts/google-noto-cjk/NotoSansCJK-Regular.ttc +fi +: +%endif + + +%if 0%{?build_java_gateway} +%files java-gateway +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_java_gateway.conf +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/zabbix +%attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/zabbix +%{_datadir}/zabbix-java-gateway +%{_sbindir}/zabbix_java_gateway_startup +%{_sbindir}/zabbix_java_gateway_shutdown +%{_unitdir}/zabbix-java-gateway.service +%{_tmpfilesdir}/zabbix-java-gateway.conf +%config(noreplace) %{_sysconfdir}/zabbix/zabbix_java_gateway_logback.xml + +%pre java-gateway +getent group zabbix > /dev/null || groupadd -r zabbix +getent passwd zabbix > /dev/null || \ + useradd -r -g zabbix -d %{_localstatedir}/lib/zabbix -s /sbin/nologin \ + -c "Zabbix Monitoring System" zabbix +: + +%post java-gateway +%systemd_post zabbix-java-gateway.service +: + +%preun java-gateway +if [ $1 -eq 0 ]; then +%systemd_preun zabbix-java-gateway.service +fi +: + +%postun java-gateway +%systemd_postun_with_restart zabbix-java-gateway.service +: +%endif + + +%if 0%{?build_selinux_policy} +%files selinux-policy +%defattr(-,root,root,-) +%doc AUTHORS ChangeLog COPYING NEWS README +%{_datadir}/selinux/packages/zabbix/zabbix_policy.pp + + +%post selinux-policy +semodule -i %{_datadir}/selinux/packages/zabbix/zabbix_policy.pp +: + +%postun selinux-policy +if [ $1 = 0 ] && semodule -l | grep -q zabbix_policy; then semodule -r zabbix_policy; fi +: +%endif + + +# +# changelog +# + +%changelog +* Fri May 19 2023 Daniel Steiner +- second release of 6.4.2 +- fixed zabbix-web-font on rhel-9 (ZBX-22599) +- Patch for recent godbus version. + +* Tue Apr 25 2023 Zabbix Packager - 6.4.2-release1 +- update to 6.4.2 + +* Wed Apr 19 2023 Zabbix Packager - 6.4.2-rc2.release1 +- update to 6.4.2rc2 + +* Tue Apr 18 2023 Zabbix Packager - 6.4.2-rc1.release1 +- update to 6.4.2rc1 + +* Mon Apr 03 2023 Zabbix Packager - 6.4.1-release1 +- update to 6.4.1 + +* Wed Mar 29 2023 Zabbix Packager - 6.4.1-rc2.release1 +- update to 6.4.1rc2 + +* Wed Mar 22 2023 Zabbix Packager - 6.4.1-rc1.release1 +- update to 6.4.1rc1 + +* Tue Mar 07 2023 Zabbix Packager - 6.4.0-release1 +- update to 6.4.0 + +* Thu Mar 02 2023 Zabbix Packager - 6.4.0-rc4.release1 +- update to 6.4.0rc4 + +* Tue Feb 28 2023 Zabbix Packager - 6.4.0-rc3.release1 +- update to 6.4.0rc3 + +* Tue Feb 21 2023 Zabbix Packager - 6.4.0-rc2.release1 +- update to 6.4.0rc2 +- removed c99.patch; use -std=gnu99 compiler flag instead + +* Wed Feb 08 2023 Zabbix Packager - 6.4.0-rc1.release1 +- update to 6.4.0rc1 +- updated c99.patch + +* Wed Jan 25 2023 Zabbix Packager - 6.4.0-beta6.release1 +- update to 6.4.0beta6 +- added LimitNOFILE=8192 to agent2 systemd service file (ZBX-22061) +- added agent2.conf.socket.patch (ZBX-22061) + +* Tue Dec 20 2022 Zabbix Packager - 6.4.0-beta5.release1 +- update to 6.4.0beta5 + +* Tue Nov 29 2022 Zabbix Packager - 6.4.0-beta4.release1 +- update to 6.4.0beta4 + +* Tue Nov 08 2022 Zabbix Packager - 6.4.0-beta3.release1 +- update to 6.4.0beta3 + +* Thu Oct 27 2022 Zabbix Packager - 6.4.0-beta2.release1 +- update to 6.4.0beta2 +- removed agent2 for rhel-6 + +* Thu Sep 29 2022 Zabbix Packager - 6.4.0-beta1.release1 +- update to 6.4.0beta1 +- removed postgres.conf from agent2 package + +* Wed Sep 14 2022 Zabbix Packager - 6.4.0-alpha1.release1 +- update to 6.4.0alpha1 +- added "release" prefix to package version +- added new postgresql files to sql-scripts package +- moved zabbix-sql-scripts contents out of system documentation and into data directory + +* Thu Jul 14 2022 Zabbix Packager - 6.2.1-1 +- update to 6.2.1 + +* Mon Jul 04 2022 Zabbix Packager - 6.2.0-1 +- update to 6.2.0 + +* Wed Jun 29 2022 Zabbix Packager - 6.2.0-0.8rc3 +- update to 6.2.0rc3 + +* Wed Jun 22 2022 Zabbix Packager - 6.2.0-0.7rc2 +- update to 6.2.0rc2 +- reverted /run to /var/run in conf files using patches 6 & 7 for rhel <= 6 +- fixed bogus systemd scriptlet for agent2 on rhel < 7 +- silencing agent2 interactive output on rhel 6 (ZBX-20456) + +* Thu Jun 09 2022 Zabbix Packager - 6.2.0-0.6rc1 +- update to 6.2.0rc1 +- removed mongodb from agent2, expecting to use external plugin + +* Wed May 25 2022 Zabbix Packager - 6.2.0-0.5beta3 +- update to 6.2.0beta3 +- added After=postgresql-14.service to server and proxy systemd service files + +* Tue May 10 2022 Zabbix Packager - 6.2.0-0.4beta2 +- update to 6.2.0beta2 + +* Tue May 03 2022 Zabbix Packager - 6.2.0-0.3beta1 +- update to 6.2.0beta1 +- updated selinux-policy to allow web servers connecting to postgres via socket +- fixed selinux-policy postun scriptlet + +* Mon Apr 25 2022 Zabbix Packager - 6.2.0-0.2alpha2 +- update to 6.2.0alpha2 + +* Tue Apr 19 2022 Zabbix Packager - 6.2.0-0.1alpha1 +- update to 6.2.0alpha1 +- added rhel6-go11.6.patch +- replaced /var/run with /run + +* Mon Feb 14 2022 Zabbix Packager - 6.0.0-1 +- update to 6.0.0 + +* Fri Feb 04 2022 Zabbix Packager - 6.0.0-0.12rc2 +- update to 6.0.0rc2 + +* Tue Feb 01 2022 Zabbix Packager - 6.0.0-0.11rc1 +- update to 6.0.0rc1 + +* Tue Jan 25 2022 Zabbix Packager - 6.0.0-0.10beta3 +- update to 6.0.0beta3 + +* Tue Jan 11 2022 Zabbix Packager - 6.0.0-0.9beta2 +- update to 6.0.0beta2 +- using pcre2 on rhel >= 7 +- added history_pk_prepare.sql to sql-scripts package + +* Mon Dec 13 2021 Zabbix Packager - 6.0.0-0.8beta1 +- update to 6.0.0beta1 +- removed erronious references to tmpfiles.d on rhel < 7 and fixed _tmpfilesdir macro usage +- removed "Obsoletes: zabbix" for web-servce sub-package +- renamed create.sql.gz to server.sql.gz +- renamed schema.sql to proxy.sql +- compressing only server.sql.gz + +* Mon Nov 22 2021 Zabbix Packager - 6.0.0-0.7alpha7 +- update to 6.0.0alpha7 + +* Tue Nov 09 2021 Zabbix Packager - 6.0.0-0.6alpha6 +- update to 6.0.0alpha6 + +* Mon Oct 25 2021 Zabbix Packager - 6.0.0-0.5alpha5 +- update to 6.0.0alpha5 +- separated agent2 plugin conf files (ZBXNEXT-6428) +- updated php-fpm conf files (ZBX-20106) + +* Wed Oct 06 2021 Zabbix Packager - 6.0.0-0.4alpha4 +- update to 6.0.0alpha4 + +* Mon Sep 20 2021 Zabbix Packager - 6.0.0-0.3alpha3 +- update to 6.0.0alpha3 + +* Mon Sep 06 2021 Zabbix Packager - 6.0.0-0.2alpha2 +- update to 6.0.0alpha2 + +* Wed Aug 25 2021 Zabbix Packager - 6.0.0-0.1alpha1 +- update to 6.0.0alpha1 +- added selinux-policy package (rhel 7+) + +* Wed Jul 21 2021 Zabbix Packager - 5.4.3-1 +- update to 5.4.3 + +* Mon Jun 28 2021 Zabbix Packager - 5.4.2-1 +- update to 5.4.2 + +* Mon Jun 07 2021 Zabbix Packager - 5.4.1-1 +- update to 5.4.1 +- removed bogus PIDFile from zabbix-web-service.service file +- using conditionals around sub-package definition blocks; fixed wrong arch in rhel-5 package names +- denying web server access to vendor subdir in /usr/share/zabbix +- renamed config.patch to frontend.patch +- replaced conf file sed substitutions with patches + +* Thu May 27 2021 Zabbix Packager - 5.4.0-9 +- second build of 5.4.0 agent2 +- fixed LogFile path substitution for agent2 + +* Fri May 14 2021 Zabbix Packager - 5.4.0-8 +- update to 5.4.0 +- setting EXTERNAL_SCRIPTS_PATH and ALERT_SCRIPTS_PATH make variables to /usr/lib/zabbix/* + +* Thu May 13 2021 Zabbix Packager - 5.4.0-0.8rc2 +- update to 5.4.0rc2 + +* Tue May 11 2021 Zabbix Packager - 5.4.0-0.7rc1 +- update to 5.4.0rc1 + +* Mon Apr 26 2021 Zabbix Packager - 5.4.0-0.6beta3 +- update to 5.4.0beta3 +- added zabbix-web-service package (ZBXNEXT-6480) + +* Thu Mar 11 2021 Zabbix Packager - 5.4.0-0.5beta2 +- update to 5.4.0beta2 +- fixed errors and warnings reported by rpmlint +- added ProxyTimeout 300 to apache config, when running with php-fpm +- removed database subdir from sql-scripts package +- added After=postgresql-13.service to server & proxy service files + +* Mon Mar 01 2021 Zabbix Packager - 5.4.0-0.4beta1 +- update to 5.4.0beta1 + +* Thu Feb 18 2021 Zabbix Packager - 5.4.0-0.3alpha2 +- update to 5.4.0alpha2 +- updated java-gateway package to use startup and shutdown scripts from zabbix sources + +* Thu Jan 28 2021 Zabbix Packager - 5.4.0-0.2alpha1 +- second build of 5.4.0alpha1 +- fixed BuildArch and files section for zabbix-sql-scripts package + +* Thu Jan 28 2021 Zabbix Packager - 5.4.0-0.1alpha1 +- update to 5.4.0alpha1 +- reworked spec file to allow selecting which packages are being built via macros (ZBX-18826) + +* Mon Dec 21 2020 Zabbix Packager - 5.2.3-1 +- update to 5.2.3 + +* Mon Nov 30 2020 Zabbix Packager - 5.2.2-1 +- update to 5.2.2 +- added proxy and java-gateway to rhel-7 + +* Fri Oct 30 2020 Zabbix Packager - 5.2.1-1 +- update to 5.2.1 + +* Mon Oct 26 2020 Zabbix Packager - 5.2.0-1 +- update to 5.2.0 + +* Thu Oct 22 2020 Zabbix Packager - 5.2.0-0.7rc2 +- update to 5.2.0rc2 + +* Tue Oct 20 2020 Zabbix Packager - 5.2.0-0.6rc1 +- update to 5.2.0rc1 + +* Mon Oct 12 2020 Zabbix Packager - 5.2.0-0.5beta2 +- update to 5.2.0beta2 + +* Mon Sep 28 2020 Zabbix Packager - 5.2.0-0.4beta1 +- update to 5.2.0beta1 +- added User=zabbix & Group=zabbix to all service files + +* Mon Sep 14 2020 Zabbix Packager - 5.2.0-0.3alpha3 +- update to 5.2.0alpha3 +- added separate zabbix-web-deps package +- doing hardened builds on rhel >= 8 +- removed libyaml.patch +- overriding ExternalScripts & AlertScriptsPath in binaries instead of config files (ZBX-17983) + +* Mon Aug 31 2020 Zabbix Packager - 5.2.0-0.2alpha2 +- update to 5.2.0alpha2 +- building only agent, sender & get packages on rhel <= 7 +- creating empty log file for agent2 (ZBX-18243) + +* Mon Aug 17 2020 Zabbix Packager - 5.2.0-0.1alpha1 +- update to 5.2.0alpha1 +- building server and proxy with mysql 8 & postgresql 12 on rhel/centos 7 (ZBX-18221) +- added various After=postgresql* directives to server & proxy service files (ZBX-17492) + +* Mon Jul 13 2020 Zabbix Packager - 5.0.2-1 +- update to 5.0.2 +- removed ZBX-17801 patch +- added "if build_agent2" around zabbix_agent2.conf installation (ZBX-17818) + +* Thu May 28 2020 Zabbix Packager - 5.0.1-1 +- update to 5.0.1 +- changed mysql build dependency on rhel/centos-8 from mysql-devel to mariadb-connector-c-devel (ZBX-17738) +- added patch that fixes (ZBX-17801) + +* Mon May 11 2020 Zabbix Packager - 5.0.0-1 +- update to 5.0.0 + +* Tue May 05 2020 Zabbix Packager - 5.0.0-0.7rc1 +- update to 5.0.0rc1 +- moved frontends/php to ui directory + +* Mon Apr 27 2020 Zabbix Packager - 5.0.0-0.6beta2 +- update to 5.0.0beta2 + +* Tue Apr 14 2020 Zabbix Packager - 5.0.0-0.5beta1 +- update to 5.0.0beta1 +- added agent2 on rhel/centos 7 + +* Mon Mar 30 2020 Zabbix Packager - 5.0.0-0.4alpha4 +- update to 5.0.0alpha4 +- removed proxy, java-gateway & js packages on rhel 5 & 6 due to minimum supported database version increase + +* Mon Mar 16 2020 Zabbix Packager - 5.0.0-0.3alpha3 +- update to 5.0.0alpha3 +- using libssh instead of libssh2 (rhel/centos 8) +- removed explicit dependency on php from zabbix-web (rhel/centos 8) +- removed explicit dependency on httpd from zabbix-web (rhel/centos 7) +- added zabbix-apache-conf (rhel/centos 7) +- using zabbix-web-database-scl as zabbix-(apache/nginx)-conf package dependency (rhel/centos 7) + +* Mon Feb 17 2020 Zabbix Packager - 5.0.0-0.2alpha2 +- update to 5.0.0alpha2 +- fixed font configuration in pre/post scriptlets on rhel-8 + +* Wed Feb 05 2020 Zabbix Packager - 5.0.0-0.2alpha1 +- added *-scl packages to help with resolving php7.2+ and nginx dependencies of zabbix frontend on rhel/centos 7 +- added posttrans script that preserves /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf file +- added config(noreplace) to /etc/sysconfig/zabbix-agent +- added explicit version to php-module dependencies in zabbix-web package on rhel/centos 8 + +* Mon Jan 27 2020 Zabbix Packager - 5.0.0-0.1alpha1 +- update to 5.0.0alpha1 + +* Tue Jan 07 2020 Zabbix Packager - 4.4.4-2 +- build of rhel-5 packages to be resigned with gpg version 3 + +* Thu Dec 19 2019 Zabbix Packager - 4.4.4-1 +- update to 4.4.4 +- added After=.service directives to server and proxy service files + +* Wed Nov 27 2019 Zabbix Packager - 4.4.3-1 +- update to 4.4.3 +- added User=zabbix and Group=zabbix directives to agent service file + +* Mon Nov 25 2019 Zabbix Packager - 4.4.2-1 +- update to 4.4.2 + +* Mon Oct 28 2019 Zabbix Packager - 4.4.1-1 +- update to 4.4.1 + +* Mon Oct 07 2019 Zabbix Packager 4.4.0-1 +- update to 4.4.0 + +* Thu Oct 03 2019 Zabbix Packager - 4.4.0-0.5rc1 +- update to 4.4.0rc1 + +* Tue Sep 24 2019 Zabbix Packager - 4.4.0-0.4beta1 +- update to 4.4.0beta1 +- added zabbix-agent2 package + +* Wed Sep 18 2019 Zabbix Packager - 4.4.0-0.3alpha3 +- update to 4.4.0alpha3 + +* Thu Aug 15 2019 Zabbix Packager - 4.4.0-0.2alpha2 +- update to 4.4.0alpha2 +- using google-noto-sans-cjk-ttc-fonts for graphfont in web-japanese package on rhel-8 +- added php-fpm as dependency of zabbix-web packages on rhel-8 + +* Wed Jul 17 2019 Zabbix Packager - 4.4.0-0.1alpha1 +- update to 4.4.0alpha1 +- removed apache config from zabbix-web package +- added dedicated zabbix-apache-conf and zabbix-nginx-conf packages + +* Fri Mar 29 2019 Zabbix Packager - 4.2.0-1 +- update to 4.2.0 +- removed jabber notifications support and dependency on iksemel library + +* Tue Mar 26 2019 Zabbix Packager - 4.2.0-0.6rc2 +- update to 4.2.0rc2 + +* Mon Mar 18 2019 Zabbix Packager - 4.2.0-0.5rc1 +- update to 4.2.0rc1 + +* Mon Mar 04 2019 Zabbix Packager - 4.2.0-0.4beta2 +- update to 4.2.0beta2 + +* Mon Feb 18 2019 Zabbix Packager - 4.2.0-0.1beta1 +- update to 4.2.0beta1 + +* Tue Feb 05 2019 Zabbix Packager - 4.2.0-0.3alpha3 +- build of 4.2.0alpha3 with *.mo files + +* Wed Jan 30 2019 Zabbix Packager - 4.2.0-0.2alpha3 +- added timescaledb.sql.gz to zabbix-server-pgsql package + +* Mon Jan 28 2019 Zabbix Packager - 4.2.0-0.1alpha3 +- update to 4.2.0alpha3 + +* Fri Dec 21 2018 Zabbix Packager - 4.2.0-0.2alpha2 +- update to 4.2.0alpha2 + +* Tue Nov 27 2018 Zabbix Packager - 4.2.0-0.1alpha1 +- update to 4.2.0alpha1 + +* Mon Oct 29 2018 Zabbix Packager - 4.0.1-1 +- update to 4.0.1 + +* Mon Oct 01 2018 Zabbix Packager - 4.0.0-2 +- update to 4.0.0 + +* Fri Sep 28 2018 Zabbix Packager - 4.0.0-1.1rc3 +- update to 4.0.0rc3 + +* Tue Sep 25 2018 Zabbix Packager - 4.0.0-1.1rc2 +- update to 4.0.0rc2 + +* Wed Sep 19 2018 Zabbix Packager - 4.0.0-1.1rc1 +- update to 4.0.0rc1 + +* Mon Sep 10 2018 Zabbix Packager - 4.0.0-1.1beta2 +- update to 4.0.0beta2 + +* Tue Aug 28 2018 Zabbix Packager - 4.0.0-1.1beta1 +- update to 4.0.0beta1 + +* Mon Jul 23 2018 Zabbix Packager - 4.0.0-1.1alpha9 +- update to 4.0.0alpha9 +- add PHP variable max_input_vars = 10000, overriding default 1000 + +* Mon Jun 18 2018 Zabbix Packager - 4.0.0-1.1alpha8 +- update to 4.0.0alpha8 + +* Wed May 30 2018 Zabbix Packager - 4.0.0-1.1alpha7 +- update to 4.0.0alpha7 + +* Fri Apr 27 2018 Zabbix Packager - 4.0.0-1.1alpha6 +- update to 4.0.0alpha6 +- add support for Ubuntu 18.04 (Bionic) +- move enabling JMX interface on Zabbix java gateway to zabbix_java_gateway.conf + +* Mon Mar 26 2018 Vladimir Levijev - 4.0.0-1.1alpha5 +- update to 4.0.0alpha5 + +* Tue Feb 27 2018 Vladimir Levijev - 4.0.0-1.1alpha4 +- update to 4.0.0alpha4 + +* Mon Feb 05 2018 Vladimir Levijev - 4.0.0-1.1alpha3 +- update to 4.0.0alpha3 + +* Tue Jan 09 2018 Vladimir Levijev - 4.0.0-1.1alpha2 +- update to 4.0.0alpha2 + +* Tue Dec 19 2017 Vladimir Levijev - 4.0.0-1alpha1 +- update to 4.0.0alpha1 + +* Thu Nov 09 2017 Vladimir Levijev - 3.4.4-2 +- add missing translation (.mo) files + +* Tue Nov 07 2017 Vladimir Levijev - 3.4.4-1 +- update to 3.4.4 +- fix issue with new line character in pid file that resulted in failure when shutting down daemons on RHEL 5 + +* Tue Oct 17 2017 Vladimir Levijev - 3.4.3-1 +- update to 3.4.3 + +* Mon Sep 25 2017 Vladimir Levijev - 3.4.2-1 +- update to 3.4.2 + +* Mon Aug 28 2017 Vladimir Levijev - 3.4.1-1 +- update to 3.4.1 +- change SocketDir to /var/run/zabbix + +* Mon Aug 21 2017 Vladimir Levijev - 3.4.0-1 +- update to 3.4.0 + +* Wed Apr 26 2017 Kodai Terashima - 3.4.0-1alpha1 +- update to 3.4.0alpla1 r68116 +- add libpcre and libevent for compile option + +* Sun Apr 23 2017 Kodai Terashima - 3.2.5-1 +- update to 3.2.5 +- add TimeoutSec=0 to systemd service file + +* Thu Mar 02 2017 Kodai Terashima - 3.2.4-2 +- remove TimeoutSec for systemd + +* Mon Feb 27 2017 Kodai Terashima - 3.2.4-1 +- update to 3.2.4 +- add TimeoutSec for systemd service file + +* Wed Dec 21 2016 Kodai Terashima - 3.2.3-1 +- update to 3.2.3 + +* Thu Dec 08 2016 Kodai Terashima - 3.2.2-1 +- update to 3.2.2 + +* Sun Oct 02 2016 Kodai Terashima - 3.2.1-1 +- update to 3.2.1 +- use zabbix user and group for Java Gateway +- add SuccessExitStatus=143 for Java Gateway servie file + +* Tue Sep 13 2016 Kodai Terashima - 3.2.0-1 +- update to 3.2.0 +- add *.conf for Include parameter in agent configuration file + +* Mon Sep 12 2016 Kodai Terashima - 3.2.0rc2-1 +- update to 3.2.0rc2 + +* Fri Sep 09 2016 Kodai Terashima - 3.2.0rc1-1 +- update to 3.2.0rc1 + +* Thu Sep 01 2016 Kodai Terashima - 3.2.0beta2-1 +- update to 3.2.0beta2 + +* Fri Aug 26 2016 Kodai Terashima - 3.2.0beta1-1 +- update to 3.2.0beta1 + +* Fri Aug 12 2016 Kodai Terashima - 3.2.0alpha1-1 +- update to 3.2.0alpha1 + +* Sun Jul 24 2016 Kodai Terashima - 3.0.4-1 +- update to 3.0.4 + +* Sun May 22 2016 Kodai Terashima - 3.0.3-1 +- update to 3.0.3 +- fix java gateway systemd script to use java options + +* Wed Apr 20 2016 Kodai Terashima - 3.0.2-1 +- update to 3.0.2 +- remove ZBX-10459.patch + +* Sat Apr 02 2016 Kodai Terashima - 3.0.1-2 +- fix proxy packges doesn't have schema.sql.gz +- add server and web packages for RHEL6 +- add ZBX-10459.patch + +* Sun Feb 28 2016 Kodai Terashima - 3.0.1-1 +- update to 3.0.1 +- remove DBSocker parameter + +* Sat Feb 20 2016 Kodai Terashima - 3.0.0-2 +- agent, proxy and java-gateway for RHEL 5 and 6 + +* Mon Feb 15 2016 Kodai Terashima - 3.0.0-1 +- update to 3.0.0 + +* Thu Feb 11 2016 Kodai Terashima - 3.0.0rc2 +- update to 3.0.0rc2 +- add TIMEOUT parameter for java gateway conf + +* Thu Feb 04 2016 Kodai Terashima - 3.0.0rc1 +- update to 3.0.0rc1 + +* Sat Jan 30 2016 Kodai Terashima - 3.0.0beta2 +- update to 3.0.0beta2 + +* Thu Jan 21 2016 Kodai Terashima - 3.0.0beta1 +- update to 3.0.0beta1 + +* Thu Jan 14 2016 Kodai Terashima - 3.0.0alpha6 +- update to 3.0.0alpla6 +- remove zabbix_agent conf and binary + +* Wed Jan 13 2016 Kodai Terashima - 3.0.0alpha5 +- update to 3.0.0alpha5 + +* Fri Nov 13 2015 Kodai Terashima - 3.0.0alpha4-1 +- update to 3.0.0alpha4 + +* Thu Oct 29 2015 Kodai Terashima - 3.0.0alpha3-2 +- fix web-pgsql package dependency +- add --with-openssl option + +* Mon Oct 19 2015 Kodai Terashima - 3.0.0alpha3-1 +- update to 3.0.0alpha3 + +* Tue Sep 29 2015 Kodai Terashima - 3.0.0alpha2-3 +- add IfModule for mod_php5 in apache configuration file +- fix missing proxy_mysql alternatives symlink +- chagne snmptrap log filename +- remove include dir from server and proxy conf + +* Fri Sep 18 2015 Kodai Terashima - 3.0.0alpha2-2 +- fix create.sql doesn't contain schema.sql & images.sql + +* Tue Sep 15 2015 Kodai Terashima - 3.0.0alpha2-1 +- update to 3.0.0alpha2 + +* Sat Aug 22 2015 Kodai Terashima - 2.5.0-1 +- create spec file from scratch +- update to 2.5.0