# Icingaweb2 | GPLv2+ %define revision 1 Name: icingaweb2 Version: 2.11.5 Release: %{revision}%{?dist} Summary: Icinga Web Group: Applications/System License: GPLv2+ URL: https://github.com/Icinga/icingaweb2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release} Source0: https://github.com/Icinga/icingaweb2/archive/v%{version}.tar.gz BuildArch: noarch Requires: httpd Requires: php(httpd) Requires: icingaweb2-common = %{version}-%{release} Requires: php-icinga = %{version}-%{release} Requires: icingacli = %{version}-%{release} Requires: icinga-l10n >= 1.1.0 %description Lightweight and extensible web interface to tackle your monitoring challenge. %prep %setup -q install -d sources # Create icingaweb2.conf cat > sources/icingaweb2.conf << 'EOF' Alias /icingaweb2 "/usr/share/icingaweb2/public" Options SymLinksIfOwnerMatch AllowOverride None Require all granted SetEnv ICINGAWEB_CONFIGDIR "/etc/icingaweb2" RewriteEngine on RewriteBase /icingaweb2/ RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L] DirectoryIndex error_norewrite.html ErrorDocument 404 /icingaweb2/error_norewrite.html DirectoryIndex index.php EOF # Create icingacli cat > sources/icingacli << 'EOF' #!/bin/sh /usr/bin/env php -d date.timezone=UTC /usr/share/icingaweb2/bin/icingacli "$@" EOF %build %install rm -rf %{buildroot} install -d %{buildroot}/usr/share/icingaweb2 cp -pr application doc library modules public schema %{buildroot}/usr/share/icingaweb2 install -dm 2770 %{buildroot}/etc/icingaweb2 %{buildroot}/etc/icingaweb2/{enabledModules,modules} install -Dpm 0644 etc/bash_completion.d/icingacli %{buildroot}/usr/share/bash-completion/completions/icingacli install -d %{buildroot}/usr/share/php mv %{buildroot}/usr/share/icingaweb2/library/Icinga %{buildroot}/usr/share/php install -dm 2770 %{buildroot}/var/cache/icingaweb2 %{buildroot}/var/lib/icingaweb2 install -dm 2775 %{buildroot}/var/log/icingaweb2 install -Dpm 0644 sources/icingaweb2.conf %{buildroot}/etc/httpd/conf.d/icingaweb2.conf install -Dpm 0755 sources/icingacli %{buildroot}/usr/bin/icingacli %pre getent group icingacmd >/dev/null || groupadd -r icingacmd usermod -a -G icingacmd,icingaweb2 apache %clean rm -rf %{buildroot} %files %defattr(-,root,root,-) %doc CHANGELOG.md %doc README.md %docdir /usr/share/icingaweb2/doc %license LICENSE /usr/share/icingaweb2/application/controllers /usr/share/icingaweb2/application/fonts /usr/share/icingaweb2/application/forms /usr/share/icingaweb2/application/layouts /usr/share/icingaweb2/application/views /usr/share/icingaweb2/application/VERSION /usr/share/icingaweb2/doc /usr/share/icingaweb2/modules /usr/share/icingaweb2/public /usr/share/icingaweb2/schema %config(noreplace) /etc/httpd/conf.d/icingaweb2.conf %package common Summary: Common files for Icinga Web and the Icinga CLI Requires(pre): shadow-utils %description common Manages common files for Icinga Web and the Icinga CLI. %files common %defattr(-,root,root,-) %attr(-, -, icingaweb2) %dir /var/cache/icingaweb2 %attr(-, -, icingaweb2) %dir /var/log/icingaweb2 %attr(-, -, icingaweb2) %dir /var/lib/icingaweb2 %attr(-, -, icingaweb2) %config(noreplace) %dir /etc/icingaweb2 %attr(-, -, icingaweb2) %config(noreplace) %dir /etc/icingaweb2/modules %attr(-, -, icingaweb2) %dir /etc/icingaweb2/enabledModules %pre common getent group icingaweb2 >/dev/null || groupadd -r icingaweb2 %package -n icingacli Summary: Icinga CLI Requires: php-cli Requires: bash-completion Requires: icingaweb2-common = %{version}-%{release} Requires: php-icinga = %{version}-%{release} Requires: icinga-l10n >= 1.1.0 %description -n icingacli Icinga command line interface. %files -n icingacli %defattr(-,root,root,-) %license LICENSE /usr/share/icingaweb2/application/clicommands /usr/share/bash-completion/completions/icingacli /usr/bin/icingacli %package -n php-icinga Summary: Icinga Web PHP library Group: Development/Libraries Obsoletes: php-Icinga <= %{version} Requires: icingaweb2-vendor-dompdf = %{version}-%{release} Requires: icingaweb2-vendor-HTMLPurifier = %{version}-%{release} Requires: icingaweb2-vendor-JShrink = %{version}-%{release} Requires: icingaweb2-vendor-lessphp = %{version}-%{release} Requires: icingaweb2-vendor-Parsedown = %{version}-%{release} Requires: icingaweb2-vendor-zf1 = %{version}-%{release} Requires: php-curl Requires: php-dom Requires: php-fileinfo Requires: php-gd Requires: php-gettext Requires: php-intl Requires: php-json Requires: php-ldap Requires: php-mbstring Requires: php-openssl Requires: php-pdo Requires: php-pdo_mysql Requires: php-pdo_pgsql Requires: php-process Requires: php-xml Requires: icinga-php-library >= 0.9.0 Requires: icinga-php-thirdparty >= 0.11.0 %description -n php-icinga Icinga Web PHP and vendor libraries. %files -n php-icinga %defattr(-,root,root,-) %license LICENSE /usr/share/php/Icinga %package vendor-dompdf Summary: Icinga Web vendor library dompdf Group: Development/Libraries License: LGPLv2.1 Requires: icingaweb2-common = %{version}-%{release} %description vendor-dompdf Icinga Web vendor library dompdf. %files vendor-dompdf %defattr(-,root,root,-) /usr/share/icingaweb2/library/vendor/dompdf %package vendor-HTMLPurifier Epoch: 1 Summary: Icinga Web vendor library HTMLPurifier Group: Development/Libraries License: LGPLv2.1 Requires: icingaweb2-common = %{version}-%{release} %description vendor-HTMLPurifier Icinga Web vendor library HTMLPurifier. %files vendor-HTMLPurifier %defattr(-,root,root,-) /usr/share/icingaweb2/library/vendor/HTMLPurifier /usr/share/icingaweb2/library/vendor/HTMLPurifier.autoload.php /usr/share/icingaweb2/library/vendor/HTMLPurifier.php %package vendor-JShrink Summary: Icinga Web vendor library JShrink Group: Development/Libraries License: BSD Requires: icingaweb2-common = %{version}-%{release} %description vendor-JShrink Icinga Web vendor library JShrink. %files vendor-JShrink %defattr(-,root,root,-) /usr/share/icingaweb2/library/vendor/JShrink %package vendor-lessphp Summary: Icinga Web vendor library lessphp Group: Development/Libraries License: MIT Requires: icingaweb2-common = %{version}-%{release} %description vendor-lessphp Icinga Web vendor library lessphp. %files vendor-lessphp %defattr(-,root,root,-) /usr/share/icingaweb2/library/vendor/lessphp %package vendor-Parsedown Summary: Icinga Web vendor library Parsedown Group: Development/Libraries License: MIT Requires: icingaweb2-common = %{version}-%{release} %description vendor-Parsedown Icinga Web vendor library Parsedown. %files vendor-Parsedown %defattr(-,root,root,-) /usr/share/icingaweb2/library/vendor/Parsedown %package vendor-zf1 Summary: Icinga's fork of Zend Framework 1 Group: Development/Libraries License: BSD Requires: icingaweb2-common = %{version}-%{release} %description vendor-zf1 Icinga's fork of Zend Framework 1. %files vendor-zf1 %defattr(-,root,root,-) /usr/share/icingaweb2/library/vendor/Zend %changelog * Thu May 08 2025 Giannoulis Michail - 2.11.5 - Version 2.11.5