123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532 |
- %define ver 4.0.7
- %define rel 1
- %define only_agent 0
- %if %{only_agent}
- %bcond_with server
- %bcond_with proxy
- %bcond_with frontend
- %else
- %bcond_without server
- %bcond_without proxy
- %bcond_without frontend
- %endif
- %bcond_without agent
- Summary: The Enterprise-class Monitoring Solution for Everyone
- Name: zabbix
- Version: %{ver}
- Release: %{rel}%{?_dist_release}
- License: GPLv2
- Group: Applications/Services
- URL: https://www.zabbix.com/
- Source0: %{name}-%{version}.tar.gz
- Source1: zabbix_server.init
- Source2: zabbix_proxy.init
- Source3: zabbix_agentd.init
- Source4: zabbix_server.logrotate
- Source5: zabbix_proxy.logrotate
- Source6: zabbix_agentd.logrotate
- Patch1: 0001-change-the-font-for-Vine-Linux.patch
- Patch2: 0002-modified-config-files-for-Vine-Linux.patch
- BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
- %if %{with server}%{with proxy}
- BuildRequires: libpq-devel
- BuildRequires: libmariadb-devel
- %endif
- BuildRequires: libevent-devel
- BuildRequires: pcre-devel
- BuildRequires: curl-devel
- BuildRequires: net-snmp-devel
- BuildRequires: OpenIPMI-devel
- BuildRequires: unixODBC-devel
- BuildRequires: libssh2-devel
- Requires(pre): glibc-common
- Requires(pre): shadow-utils
- Vendor: Project Vine
- Distribution: Vine Linux
- Packager: iwaim
- %description
- The Enterprise-class Monitoring Solution for Everyone.
- %if %{with server}
- %package server-common
- Summary: common files for Zabbix Server
- Requires: %{name} == %{version}-%{release}
- Requires(post,preun): chkconfig
- Requires(preun,postun): initscripts
- %description server-common
- This package include common files for Zabbix Server.
- %package server-mysql
- Summary: Zabbix Server for MySQL/MariaDB
- Provides: %{name}-server
- Requires: %{name}-server-common == %{version}-%{release}
- %description server-mysql
- Zabbix Server for MySQL/MariaDB
- %package server-postgresql
- Summary: Zabbix Server for PostgreSQL
- Provides: %{name}-server
- Requires: %{name}-server-common == %{version}-%{release}
- %description server-postgresql
- Zabbix Server for PostgreSQL
- %endif
- %if %{with agent}
- %package agent
- Summary: Zabbix Agent
- Requires: %{name} == %{version}-%{release}
- Requires(post,preun): chkconfig
- Requires(preun,postun): initscripts
- %description agent
- Zabbix Agent
- %endif
- %if %{with proxy}
- %package proxy-common
- Summary: common files for Zabbix Proxy
- Requires: %{name} == %{version}-%{release}
- Requires(post,preun): chkconfig
- Requires(preun,postun): initscripts
- %description proxy-common
- This package include common files for Zabbix Proxy
- %package proxy-mysql
- Summary: Zabbix Proxy for MySQL/MariaDB
- Provides: %{name}-proxy
- Requires: %{name}-proxy-common == %{version}-%{release}
- %description proxy-mysql
- Zabbix Proxy for MySQL/MariaDB
- %package proxy-postgresql
- Summary: Zabbix Proxy for PostgreSQL
- Provides: %{name}-proxy
- Requires: %{name}-proxy-common == %{version}-%{release}
- %description proxy-postgresql
- Zabbix Proxy for PostgreSQL
- %endif
- %if %{with frontend}
- %package frontend-php
- Summary: Zabbix web frontend with PHP
- Group: Applications/Internet
- Requires: php5
- Requires: TrueType-vlgothic
- %description frontend-php
- Zabbix web frontend with PHP.
- %package frontend-php-mysql
- Summary: Zabbix web frontend with PHP and MySQL/MariaDB
- Group: Applications/Internet
- Provides: %{name}-frontend-php == %{version}-%{release}
- Requires: php5-mysql
- %description frontend-php-mysql
- Zabbix web frontend with PHP and MySQL/MariaDB.
- %package frontend-php-postgresql
- Summary: Zabbix web frontend with PHP and PostgreSQL
- Group: Applications/Internet
- Provides: %{name}-frontend-php == %{version}-%{release}
- Requires: php5-pgsql
- %description frontend-php-postgresql
- Zabbix web frontend with PHP and PostgreSQL.
- %endif
- %prep
- %setup -q -T -a 0 -c -n zabbix-%{version}
- mv zabbix-%{version} zabbix_mysql
- pushd zabbix_mysql
- %patch1 -p 1
- %patch2 -p 1
- popd
- %if %{with server}%{with proxy}
- %setup -q -D -T -a 0 -n zabbix-%{version}
- mv zabbix-%{version} zabbix_pgsql
- pushd zabbix_pgsql
- %patch1 -p 1
- %patch2 -p 1
- popd
- %endif
- %build
- Build()
- {
- perl -pi -e 's|/usr/bin/traceroute|/bin/traceroute|' \
- ./database/{ibm_db2,mysql,oracle,postgresql,sqlite3}/data.sql
- %configure \
- %{?with_server:--enable-server} \
- %{?with_proxy:--enable-proxy} \
- %{?with_agent:--enable-agent} \
- --enable-ipv6 \
- --sysconfdir=%{_sysconfdir}/zabbix \
- --with-libcurl \
- --with-openipmi \
- --with-net-snmp \
- --with-unixodbc \
- --with-ssh2 \
- $@
- %__make
- }
- %if %{with server}%{with proxy}
- pushd zabbix_mysql
- Build --with-mysql
- popd
- pushd zabbix_pgsql
- Build --with-postgresql
- popd
- %else
- pushd zabbix_mysql
- Build
- popd
- %endif
- %install
- %__rm -rf $RPM_BUILD_ROOT
- pushd zabbix_mysql
- make DESTDIR=$RPM_BUILD_ROOT install
- %if %{with server}
- mv -f %{buildroot}%{_sbindir}/zabbix_server %{buildroot}%{_sbindir}/zabbix_server.mysql
- %endif
- %if %{with proxy}
- mv -f %{buildroot}%{_sbindir}/zabbix_proxy %{buildroot}%{_sbindir}/zabbix_proxy.mysql
- %endif
- # make directories
- %__mkdir_p $RPM_BUILD_ROOT%{_localstatedir}/{log,run}/%{name}
- # DB
- %__mkdir_p $RPM_BUILD_ROOT%{_datadir}/zabbix
- %if %{with server}%{with proxy}
- %__cp -a database/postgresql $RPM_BUILD_ROOT%{_datadir}/zabbix/
- %__cp -a database/mysql $RPM_BUILD_ROOT%{_datadir}/zabbix/
- %endif
- # init.d
- %__mkdir_p $RPM_BUILD_ROOT%{_initddir}
- %if %{with server}
- %__cp %{SOURCE1} $RPM_BUILD_ROOT%{_initddir}/zabbix_server
- %endif
- %if %{with proxy}
- %__cp %{SOURCE2} $RPM_BUILD_ROOT%{_initddir}/zabbix_proxy
- %endif
- %if %{with agent}
- %__cp %{SOURCE3} $RPM_BUILD_ROOT%{_initddir}/zabbix_agentd
- %endif
- # logrotate
- %__mkdir_p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d
- %if %{with server}
- %__cp %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix_server
- %endif
- %if %{with proxy}
- %__cp %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix_proxy
- %endif
- %if %{with agent}
- %__cp %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix_agentd
- %endif
- %if %{with frontend}
- # frontend-php
- %__mkdir_p $RPM_BUILD_ROOT%{_datadir}/zabbix-frontend
- %__cp -a frontends/php $RPM_BUILD_ROOT%{_datadir}/zabbix-frontend/
- %__rm -f $RPM_BUILD_ROOT%{_datadir}/zabbix-frontend/php/fonts/DejaVuSans.ttf
- ln -s /usr/share/fonts/TrueType-vlgothic/VL-Gothic-Regular.ttf \
- $RPM_BUILD_ROOT%{_datadir}/zabbix-frontend/php/fonts/
- %endif
- %if %{with proxy}
- # proxy
- mkdir -p %{buildroot}%{_datadir}/zabbix-proxy
- ln -sf ../zabbix/mysql %{buildroot}%{_datadir}/zabbix-proxy/
- ln -sf ../zabbix/postgresql %{buildroot}%{_datadir}/zabbix-proxy/
- %endif
- popd
- %if %{with server}%{with proxy}
- pushd zabbix_pgsql
- install -m755 src/zabbix_server/zabbix_server %{buildroot}%{_sbindir}/zabbix_server.pgsql
- install -m755 src/zabbix_proxy/zabbix_proxy %{buildroot}%{_sbindir}/zabbix_proxy.pgsql
- popd
- %endif
- %clean
- %__rm -rf $RPM_BUILD_ROOT
- %pre
- getent group zabbix >/dev/null || groupadd -r zabbix
- getent passwd zabbix >/dev/null || \
- useradd -r -g zabbix -d %{_sysconfdir}/zabbix -s /sbin/nologin \
- -c "Zabbix Monitoring Solution" zabbix
- exit 0
- %if %{with server}
- %post server-mysql
- /sbin/update-alternatives --install /usr/sbin/zabbix_server \
- zabbix_server /usr/sbin/zabbix_server.mysql 10
- /sbin/chkconfig --add zabbix_server
- %post server-postgresql
- /sbin/update-alternatives --install /usr/sbin/zabbix_server \
- zabbix_server /usr/sbin/zabbix_server.pgsql 10
- /sbin/chkconfig --add zabbix_server
- %endif
- %if %{with proxy}
- %post proxy-mysql
- /sbin/update-alternatives --install /usr/sbin/zabbix_proxy \
- zabbix_proxy /usr/sbin/zabbix_proxy.mysql 10
- /sbin/chkconfig --add zabbix_proxy
- %post proxy-postgresql
- /sbin/update-alternatives --install /usr/sbin/zabbix_proxy \
- zabbix_proxy /usr/sbin/zabbix_proxy.pgsql 10
- /sbin/chkconfig --add zabbix_proxy
- %endif
- %if %{with agent}
- %post agent
- /sbin/chkconfig --add zabbix_agentd
- %endif
- %if %{with server}
- %preun server-mysql
- if [ "$1" -eq 0 ]; then
- /sbin/service zabbix_server stop >/dev/null 2>&1
- /sbin/chkconfig --del zabbix_server
- /sbin/update-alternatives --remove zabbix_server \
- /usr/sbin/zabbix_server.mysql
- fi
- %preun server-postgresql
- if [ "$1" -eq 0 ]; then
- /sbin/service zabbix_server stop >/dev/null 2>&1
- /sbin/chkconfig --del zabbix_server
- /sbin/update-alternatives --remove zabbix_server \
- /usr/sbin/zabbix_server.pgsql
- fi
- %endif
- %if %{with proxy}
- %preun proxy-mysql
- if [ "$1" -eq 0 ]; then
- /sbin/service zabbix_proxy stop >/dev/null 2>&1
- /sbin/chkconfig --del zabbix_proxy
- /sbin/update-alternatives --remove zabbix_proxy \
- /usr/sbin/zabbix_proxy.mysql
- fi
- %preun proxy-postgresql
- if [ "$1" -eq 0 ]; then
- /sbin/service zabbix_proxy stop >/dev/null 2>&1
- /sbin/chkconfig --del zabbix_proxy
- /sbin/update-alternatives --remove zabbix_proxy \
- /usr/sbin/zabbix_proxy.pgsql
- fi
- %endif
- %if %{with agent}
- %preun agent
- if [ "$1" -eq 0 ]; then
- /sbin/service zabbix_agentd stop >/dev/null 2>&1
- /sbin/chkconfig --del zabbix_agentd
- fi
- %endif
- %if %{with server}
- %postun server-mysql
- if [ "$1" -ge "1" ]; then
- /sbin/service zabbix_server condrestart >/dev/null 2>&1 || :
- fi
- %postun server-postgresql
- if [ "$1" -ge "1" ]; then
- /sbin/service zabbix_server condrestart >/dev/null 2>&1 || :
- fi
- %endif
- %if %{with proxy}
- %postun proxy-mysql
- if [ "$1" -ge "1" ]; then
- /sbin/service zabbix_proxy condrestart >/dev/null 2>&1 || :
- fi
- %postun proxy-postgresql
- if [ "$1" -ge "1" ]; then
- /sbin/service zabbix_proxy condrestart >/dev/null 2>&1 || :
- fi
- %postun agent
- if [ "$1" -ge "1" ]; then
- /sbin/service zabbix_agentd condrestart >/dev/null 2>&1 || :
- fi
- %endif
- %files
- %defattr(-,root,root,-)
- %license zabbix_mysql/COPYING
- %doc zabbix_mysql/AUTHORS zabbix_mysql/ChangeLog zabbix_mysql/NEWS zabbix_mysql/README
- %attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/%{name}
- %attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/%{name}
- %dir %{_datadir}/zabbix
- %if %{with server}%{with proxy}
- %{_datadir}/zabbix/mysql
- %{_datadir}/zabbix/postgresql
- %endif
- %if %{with server}
- %files server-common
- %defattr(-,root,root,-)
- %dir %{_sysconfdir}/zabbix
- %config(noreplace) %{_sysconfdir}/zabbix/zabbix_server.conf
- %config(noreplace) %{_sysconfdir}/logrotate.d/zabbix_server
- %{_initddir}/zabbix_server*
- %{_mandir}/man8/zabbix_server.8*
- %files server-mysql
- %defattr(-,root,root,-)
- %{_sbindir}/zabbix_server.mysql
- %files server-postgresql
- %defattr(-,root,root,-)
- %{_sbindir}/zabbix_server.pgsql
- %endif
- %if %{with agent}
- %files agent
- %defattr(-,root,root,-)
- %dir %{_sysconfdir}/zabbix
- %config(noreplace) %{_sysconfdir}/zabbix/zabbix_agentd.conf
- %config(noreplace) %{_sysconfdir}/logrotate.d/zabbix_agentd
- %{_bindir}/zabbix_get
- %{_bindir}/zabbix_sender
- %{_sbindir}/zabbix_agentd
- %{_initddir}/zabbix_agentd
- %{_mandir}/man1/zabbix_get.1*
- %{_mandir}/man1/zabbix_sender.1*
- %{_mandir}/man8/zabbix_agentd.8*
- %endif
- %if %{with proxy}
- %files proxy-common
- %defattr(-,root,root,-)
- %dir %{_sysconfdir}/zabbix
- %config(noreplace) %{_sysconfdir}/zabbix/zabbix_proxy.conf
- %config(noreplace) %{_sysconfdir}/logrotate.d/zabbix_proxy
- %{_initddir}/zabbix_proxy
- %{_mandir}/man8/zabbix_proxy.8*
- %{_datadir}/zabbix-proxy
- %files proxy-mysql
- %defattr(-,root,root,-)
- %{_sbindir}/zabbix_proxy.mysql
- %files proxy-postgresql
- %defattr(-,root,root,-)
- %{_sbindir}/zabbix_proxy.pgsql
- %endif
- %if %{with frontend}
- %files frontend-php
- %defattr(-,root,root,-)
- %license zabbix_mysql/COPYING
- %doc zabbix_mysql/AUTHORS zabbix_mysql/ChangeLog zabbix_mysql/NEWS zabbix_mysql/README
- %dir %{_datadir}/zabbix-frontend
- %{_datadir}/zabbix-frontend/php
- %files frontend-php-mysql
- %files frontend-php-postgresql
- %endif
- %changelog
- * Wed May 08 2019 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 4.0.7-1
- - new upstream release.
- - switched to 4.0 LTS.
- - dropped Patch0: made to get same effect by another method.
- - updated Patch1 and 2.
- * Wed Nov 07 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.0.23-1
- - new upstream release.
- * Tue Jun 12 2018 IWAI, Masaharu <iwaim.sub@gmail.com> 3.0.13-2
- - accept building only agent
- * Thu Dec 21 2017 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.0.13-1
- - new upstream release.
- * Fri Apr 21 2017 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.0.8-1
- - new upstream release.
- * Fri Mar 18 2016 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 3.0.1-1
- - new upstream release.
- - disabled jabber support.
- * Wed Sep 9 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.4.6-1
- - new upstream release.
- * Sat Apr 11 2015 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.2.9-1
- - new upstream release.
- * Sun Jul 6 2014 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.2.4-1
- - new upstream release.
- - built with both of mysql and postgresql.
- * Mon Oct 07 2013 Daisuke SUZUKI <daisuke@linux.or.jp> 2.0.8-1
- - update to 2.0.8
- * Wed Feb 20 2013 Daisuke SUZUKI <daisuke@linux.or.jp> 2.0.5-2
- - use %%bcond_with mysql to build with mysql
- * Tue Feb 19 2013 IWAI, Masaharu <iwai@alib.jp> 2.0.5-1
- - update to 2.0.5
- - add using MySQL client library switch: default no
- - define use_postfix and use_mysql
- - add BuildRequires: MySQL-devel
- - add configure option: --with-mysql
- * Thu Feb 7 2013 IWAI, Masaharu <iwai@alib.jp> 2.0.4-1
- - initial build for Vine Linux
|