zabbix-vl.spec 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  1. %define ver 2.0.4
  2. %define rel 1
  3. Summary: The Enterprise-class Monitoring Solution for Everyone
  4. Name: zabbix
  5. Version: %{ver}
  6. Release: %{rel}%{?_dist_release}
  7. License: GPLv2
  8. Group: Applications/Services
  9. URL: https://www.zabbix.com/
  10. Source0: %{name}-%{version}.tar.gz
  11. Source1: zabbix_server.init
  12. Source2: zabbix_proxy.init
  13. Source3: zabbix_agentd.init
  14. Source4: zabbix_server.logrotate
  15. Source5: zabbix_proxy.logrotate
  16. Source6: zabbix_agentd.logrotate
  17. Patch0: zabbix-2.0.4-vine_path.patch
  18. Patch1: zabbix-2.0.4-font.patch
  19. Patch2: zabbix-2.0.4-config.patch
  20. BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
  21. BuildRequires: postgresql-devel
  22. BuildRequires: curl-devel
  23. BuildRequires: net-snmp-devel
  24. BuildRequires: OpenIPMI-devel
  25. BuildRequires: iksemel-devel
  26. BuildRequires: unixODBC-devel
  27. BuildRequires: libssh2-devel
  28. Requires(pre): glibc-common
  29. Requires(pre): shadow-utils
  30. Vendor: Project Vine
  31. Distribution: Vine Linux
  32. Packager: iwaim
  33. %description
  34. The Enterprise-class Monitoring Solution for Everyone.
  35. %package server
  36. Summary: Zabbix Server
  37. Requires: %{name} == %{version}-%{release}
  38. Requires(post,preun): chkconfig
  39. Requires(preun,postun): initscripts
  40. %description server
  41. Zabbix Server
  42. %package agent
  43. Summary: Zabbix Agent
  44. Requires: %{name} == %{version}-%{release}
  45. Requires(post,preun): chkconfig
  46. Requires(preun,postun): initscripts
  47. %description agent
  48. Zabbix Agent
  49. %package proxy
  50. Summary: Zabbix Proxy
  51. Requires: %{name} == %{version}-%{release}
  52. Requires(post,preun): chkconfig
  53. Requires(preun,postun): initscripts
  54. %description proxy
  55. Zabbix Proxy
  56. %package frontend-php
  57. Summary: Zabbix web frontend with PHP
  58. Group: Applications/Internet
  59. Requires: php5
  60. Requires: php5-pgsql
  61. Requires: TrueType-vlgothic
  62. %description frontend-php
  63. Zabbix web frontend with PHP.
  64. %prep
  65. %setup -q
  66. %patch0 -p 1
  67. %patch1 -p 1
  68. %patch2 -p 1
  69. %build
  70. %configure --enable-server --enable-proxy --enable-agent --enable-ipv6 \
  71. --sysconfdir=%{_sysconfdir}/zabbix \
  72. --with-postgresql \
  73. --with-libcurl \
  74. --with-openipmi \
  75. --with-net-snmp \
  76. --with-jabber \
  77. --with-unixodbc \
  78. --with-ssh2
  79. %__make
  80. %install
  81. %__rm -rf $RPM_BUILD_ROOT
  82. make DESTDIR=$RPM_BUILD_ROOT install
  83. # make directories
  84. %__mkdir_p $RPM_BUILD_ROOT%{_localstatedir}/{log,run}/%{name}
  85. # DB
  86. %__mkdir_p $RPM_BUILD_ROOT%{_datadir}/zabbix
  87. %__cp -a database/postgresql $RPM_BUILD_ROOT%{_datadir}/zabbix/
  88. # init.d
  89. %__mkdir_p $RPM_BUILD_ROOT%{_initddir}
  90. %__cp %{SOURCE1} $RPM_BUILD_ROOT%{_initddir}/zabbix_server
  91. %__cp %{SOURCE2} $RPM_BUILD_ROOT%{_initddir}/zabbix_proxy
  92. %__cp %{SOURCE3} $RPM_BUILD_ROOT%{_initddir}/zabbix_agentd
  93. # logrotate
  94. %__mkdir_p $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d
  95. %__cp %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix_server
  96. %__cp %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix_proxy
  97. %__cp %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix_agentd
  98. ## sub package
  99. # proxy
  100. %__mkdir_p $RPM_BUILD_ROOT%{_datadir}/zabbix-proxy
  101. ln -s %{_datadir}/zabbix/postgresql $RPM_BUILD_ROOT%{_datadir}/zabbix-proxy/
  102. # frontend-php
  103. %__mkdir_p $RPM_BUILD_ROOT%{_datadir}/zabbix-frontend
  104. %__cp -a frontends/php $RPM_BUILD_ROOT%{_datadir}/zabbix-frontend/
  105. %__rm -f $RPM_BUILD_ROOT%{_datadir}/zabbix-frontend/php/fonts/DejaVuSans.ttf
  106. ln -s /usr/share/fonts/TrueType-vlgothic/VL-Gothic-Regular.ttf \
  107. $RPM_BUILD_ROOT%{_datadir}/zabbix-frontend/php/fonts/
  108. %clean
  109. %__rm -rf $RPM_BUILD_ROOT
  110. %pre
  111. getent group zabbix >/dev/null || groupadd -r zabbix
  112. getent passwd zabbix >/dev/null || \
  113. useradd -r -g zabbix -d %{_sysconfdir}/zabbix -s /sbin/nologin \
  114. -c "Zabbix Monitoring Solution" zabbix
  115. exit 0
  116. %post server
  117. /sbin/chkconfig --add zabbix_server
  118. %post proxy
  119. /sbin/chkconfig --add zabbix_proxy
  120. %post agent
  121. /sbin/chkconfig --add zabbix_agentd
  122. %preun server
  123. if [ "$1" -eq 0 ]; then
  124. /sbin/service zabbix_server stop >/dev/null 2>&1
  125. /sbin/chkconfig --del zabbix_server
  126. fi
  127. %preun proxy
  128. if [ "$1" -eq 0 ]; then
  129. /sbin/service zabbix_proxy stop >/dev/null 2>&1
  130. /sbin/chkconfig --del zabbix_proxy
  131. fi
  132. %preun agent
  133. if [ "$1" -eq 0 ]; then
  134. /sbin/service zabbix_agentd stop >/dev/null 2>&1
  135. /sbin/chkconfig --del zabbix_agentd
  136. fi
  137. %postun server
  138. if [ "$1" -ge "1" ]; then
  139. /sbin/service zabbix_server condrestart >/dev/null 2>&1 || :
  140. fi
  141. %postun proxy
  142. if [ "$1" -ge "1" ]; then
  143. /sbin/service zabbix_proxy condrestart >/dev/null 2>&1 || :
  144. fi
  145. %postun agent
  146. if [ "$1" -ge "1" ]; then
  147. /sbin/service zabbix_agentd condrestart >/dev/null 2>&1 || :
  148. fi
  149. %files
  150. %defattr(-,root,root,-)
  151. %doc AUTHORS COPYING ChangeLog NEWS README
  152. %attr(0755,zabbix,zabbix) %dir %{_localstatedir}/log/%{name}
  153. %attr(0755,zabbix,zabbix) %dir %{_localstatedir}/run/%{name}
  154. %dir %{_datadir}/zabbix
  155. %{_datadir}/zabbix/postgresql
  156. %files server
  157. %defattr(-,root,root,-)
  158. %dir %{_sysconfdir}/zabbix
  159. %config(noreplace) %{_sysconfdir}/zabbix/zabbix_server.conf
  160. %config(noreplace) %{_sysconfdir}/logrotate.d/zabbix_server
  161. %{_sbindir}/zabbix_server
  162. %{_initddir}/zabbix_server*
  163. %{_mandir}/man8/zabbix_server.8*
  164. %files agent
  165. %defattr(-,root,root,-)
  166. %dir %{_sysconfdir}/zabbix
  167. %config(noreplace) %{_sysconfdir}/zabbix/zabbix_agent.conf
  168. %config(noreplace) %{_sysconfdir}/zabbix/zabbix_agentd.conf
  169. %config(noreplace) %{_sysconfdir}/logrotate.d/zabbix_agentd
  170. %{_bindir}/zabbix_get
  171. %{_bindir}/zabbix_sender
  172. %{_sbindir}/zabbix_agent
  173. %{_sbindir}/zabbix_agentd
  174. %{_initddir}/zabbix_agentd
  175. %{_mandir}/man1/zabbix_get.1*
  176. %{_mandir}/man1/zabbix_sender.1*
  177. %{_mandir}/man8/zabbix_agentd.8*
  178. %files proxy
  179. %defattr(-,root,root,-)
  180. %dir %{_sysconfdir}/zabbix
  181. %config(noreplace) %{_sysconfdir}/zabbix/zabbix_proxy.conf
  182. %config(noreplace) %{_sysconfdir}/logrotate.d/zabbix_proxy
  183. %{_sbindir}/zabbix_proxy
  184. %{_initddir}/zabbix_proxy
  185. %{_mandir}/man8/zabbix_proxy.8*
  186. %dir %{_datadir}/zabbix-proxy
  187. %{_datadir}/zabbix-proxy/postgresql
  188. %files frontend-php
  189. %defattr(-,root,root,-)
  190. %doc AUTHORS COPYING ChangeLog NEWS README
  191. %dir %{_datadir}/zabbix-frontend
  192. %{_datadir}/zabbix-frontend/php
  193. %changelog
  194. * Thu Feb 7 2013 IWAI, Masaharu <iwai@alib.jp> 2.0.4-1
  195. - initial build for Vine Linux