[zabbix20/el5: 8/8] Throw away most things not relevant for EL5

Volker Fröhlich volter at fedoraproject.org
Tue Jan 22 14:20:28 UTC 2013


commit 4e4fb1e635b2902f14b76724855b5d6e0dc9176c
Author: Volker Fröhlich <volker27 at gmx.at>
Date:   Tue Jan 22 15:18:12 2013 +0100

    Throw away most things not relevant for EL5
    
    - Adapt to update path from 1.4 only
    - Remove all conditionals for Fedora/EL
    - Remove origin of directories BZ#867159, comment 14 and 16
      server package

 zabbix-fedora.README |   18 ++-
 zabbix20.spec        |  271 +++++++-------------------------------------------
 2 files changed, 50 insertions(+), 239 deletions(-)
---
diff --git a/zabbix-fedora.README b/zabbix-fedora.README
index 671c140..b3618e0 100644
--- a/zabbix-fedora.README
+++ b/zabbix-fedora.README
@@ -1,5 +1,9 @@
 #TODO: SELinux
-=Custom in Fedora=
+
+EPEL 5 version of Zabbix 2.0 does not support SSH, due to the old
+version of SSH shipped in EL 5.
+
+=Custom in Fedora/EPEL=
 
 ==Web configuration==
 
@@ -22,9 +26,9 @@ Fedora ships an Apache configuration file instead. This solutions performs
 better and is easier to maintain.
 
 
-=Additional changes from 1.8 to 2.0 in Fedora=
+=Additional changes from 1.8 to 2.0 in EPEL=
 
-==Zabbix 2.0 packages conflict Zabbix 1.8==
+==Zabbix 2.0 packages conflict Zabbix 1.8 and older ==
 
 This measure was taken because this major version introduces various database
 schema changes. A silent update would render Zabbix non-operational and possibly
@@ -92,12 +96,14 @@ to vote on it.
 
 ==No SQLite front-end or server implementation==
 
-Sadly it doesn't work with how Fedora's/EPEL's PHP is compiled.
+Sadly it doesn't work with how Fedora's/RHEL's PHP is compiled.
 
 
 --------------------------------------------------------------------------------
 
-=Guide for updating to 2.0 from 1.8=
+=Guide for upgrading to 2.0=
+
+Database upgrade is step by step. You can't go from 1.4 to 2.0 directly.
 
 http://www.zabbix.com/documentation/2.0/manual/installation/upgrade==notes
 
@@ -115,4 +121,4 @@ http://www.zabbix.com/documentation/2.0/manual/installation/upgrade
 - Review all rpmnew and rpmsave files; merge where necessary
 - Review permissions, ownerships and group memberships for zabbixsrv
 
-Volker Fröhlich volker27 at gmx.at Nov 8 2012
+Volker Fröhlich volker27 at gmx.at Jan 21 2013
diff --git a/zabbix20.spec b/zabbix20.spec
index b0bed59..bd401cf 100644
--- a/zabbix20.spec
+++ b/zabbix20.spec
@@ -1,5 +1,4 @@
 # TODO, maybe sometime:
-# * F18 systemd macros, when EL6 reaches EOL
 # * Do something about mutex errors sometimes occurring when init scripts'
 #   restart is invoked; something like "sleep 2" between stop and start?
 # * Use "Include" in zabbix_{agentd,proxy,server}.conf, point to corresponding
@@ -7,7 +6,6 @@
 #   various backup files (*.rpm{orig,new,save}, *~ etc) in that dir.
 #   https://support.zabbix.com/browse/ZBXNEXT-497 -- Scheduled for 2.2
 # * zabbixsrv could be member of the groups zabbixsrv and zabbix
-# * Consider using systemd's ReadWriteDirectories
 # * Consider mod_proxy patch from Debian
 #   https://support.zabbix.com/browse/ZBX-4986
 
@@ -36,7 +34,7 @@
 
 Name:           zabbix20
 Version:        2.0.4
-Release:        3%{?dist}
+Release:        4%{?dist}
 Summary:        Open-source monitoring solution for your IT infrastructure
 
 Group:          Applications/Internet
@@ -44,6 +42,7 @@ License:        GPLv2+
 URL:            http://www.zabbix.com
 #Source0:        http://downloads.sourceforge.net/%{srcname}/%{srcname}-%{version}.tar.gz
 # upstream tarball minus src/zabbix_java/lib/org-json-2010-12-28.jar
+BuildRoot:      %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 Source0:        %{srcname}-%{version}-free.tar.gz
 Source1:        %{srcname}-web.conf
 Source2:        %{srcname}-server.init
@@ -51,15 +50,6 @@ Source3:        %{srcname}-agent.init
 Source4:        %{srcname}-proxy.init
 Source5:        %{srcname}-logrotate.in
 Source9:        %{srcname}-tmpfiles.conf
-# systemd units -- Alternatives switches between them (they state their dependencies)
-#TODO: Submit upstream
-Source10:       %{srcname}-agent.service
-Source11:       %{srcname}-proxy-mysql.service
-Source12:       %{srcname}-proxy-pgsql.service
-Source13:       %{srcname}-proxy-sqlite3.service
-Source14:       %{srcname}-server-mysql.service
-Source15:       %{srcname}-server-pgsql.service
-
 Source16:       %{srcname}-fedora.README
 
 # local rules for config files
@@ -69,8 +59,6 @@ Patch1:         %{srcname}-2.0.3-fonts-config.patch
 # remove flash content (#737337)
 # https://support.zabbix.com/browse/ZBX-4794
 Patch2:         %{srcname}-2.0.1-no-flash.patch
-# adapt for fping3 - https://support.zabbix.com/browse/ZBX-4894
-Patch3:         %{srcname}-1.8.12-fping3.patch
 # Setting source IP address rendered SNMP polling broken
 # https://support.zabbix.com/browse/ZBX-3379
 Patch4:         %{srcname}-2.0.3-snmp-source-address.patch
@@ -80,6 +68,7 @@ Patch5:         %{srcname}-2.0.4-snmptrap.patch
 
 #https://support.zabbix.com/browse/ZBX-6097
 #CVE-2013-1364
+#Solved in 2.0.5
 Patch6:         %{srcname}-2.0.4-ldap.patch
 
 BuildRequires:   mysql-devel
@@ -92,20 +81,12 @@ BuildRequires:   iksemel-devel
 BuildRequires:   unixODBC-devel
 BuildRequires:   curl-devel
 BuildRequires:   OpenIPMI-devel
-BuildRequires:   libssh2-devel
-%if 0%{?fedora}
-BuildRequires:   systemd-units
-%endif
 
 Requires:        logrotate
-# Could alternatively be conditional on Fedora/EL
-%if %{srcname} != %{name}
+# Base package is actually the server in 1.4
 Conflicts:       %{srcname}
-%else
-Obsoletes:       %{srcname}-docs < 1.8.15-2
-Obsoletes:       %{srcname}-web-sqlite3 < 2.0.3-3
-Obsoletes:       %{srcname}-server-sqlite3 < 2.0.3-3
-%endif
+# Files that used to be in the agent package are now in the base package
+Conflicts:       %{srcname}-agent
 
 %description
 Zabbix is software that monitors numerous parameters of a network and the
@@ -131,16 +112,10 @@ Requires:            %{name}-server-implementation = %{version}-%{release}
 Requires:            fping
 Requires:            traceroute
 Requires(pre):       shadow-utils
-%if 0%{?fedora}
-Requires(post):      systemd-units
-Requires(preun):     systemd-units
-Requires(postun):    systemd-units
-%else
 Requires(post):      /sbin/chkconfig
 Requires(preun):     /sbin/chkconfig
 Requires(preun):     /sbin/service
 Requires(postun):    /sbin/service
-%endif
 
 %description server
 Zabbix server common files
@@ -176,16 +151,10 @@ Summary:             Zabbix Agent
 Group:               Applications/Internet
 Requires:            %{name} = %{version}-%{release}
 Requires(pre):       shadow-utils
-%if 0%{?fedora}
-Requires(post):      systemd-units
-Requires(preun):     systemd-units
-Requires(postun):    systemd-units
-%else
 Requires(post):      /sbin/chkconfig
 Requires(preun):     /sbin/chkconfig
 Requires(preun):     /sbin/service
 Requires(postun):    /sbin/service
-%endif
 
 %description agent
 The Zabbix client agent, to be installed on monitored systems.
@@ -196,16 +165,10 @@ Group:               Applications/Internet
 Requires:            %{name} = %{version}-%{release}
 Requires:            %{name}-proxy-implementation = %{version}-%{release}
 Requires(pre):       shadow-utils
-%if 0%{?fedora}
-Requires(post):      systemd-units
-Requires(preun):     systemd-units
-Requires(postun):    systemd-units
-%else
 Requires(post):      /sbin/chkconfig
 Requires(preun):     /sbin/chkconfig
 Requires(preun):     /sbin/service
 Requires(postun):    /sbin/service
-%endif
 Requires:            fping
 
 %description proxy
@@ -250,7 +213,6 @@ The Zabbix proxy compiled to use SQLite
 %package web
 Summary:         Zabbix Web Frontend
 Group:           Applications/Internet
-BuildArch:       noarch
 # Don't remove "php". Everything else only depends on php-common
 # and you'll end up with no module for Apache
 Requires:        php
@@ -262,6 +224,7 @@ Requires:        php-gettext
 Requires:        dejavu-sans-fonts
 Requires:        %{name} = %{version}-%{release}
 Requires:        %{name}-web-database = %{version}-%{release}
+Conflicts:       %{srcname}-web
 
 %description web
 The php frontend to display the Zabbix web interface.
@@ -269,10 +232,10 @@ The php frontend to display the Zabbix web interface.
 %package web-mysql
 Summary:         Zabbix web frontend for MySQL
 Group:           Applications/Internet
-BuildArch:       noarch
 Requires:        %{name}-web = %{version}-%{release}
 Requires:        php-mysql
 Provides:        %{name}-web-database = %{version}-%{release}
+# That line should be useless, due to the conflict
 Obsoletes:       %{name}-web <= 1.5.3-0.1
 
 %description web-mysql
@@ -281,7 +244,6 @@ Zabbix web frontend for MySQL
 %package web-pgsql
 Summary:         Zabbix web frontend for PostgreSQL
 Group:           Applications/Internet
-BuildArch:       noarch
 Requires:        %{name}-web = %{version}-%{release}
 Requires:        php-pgsql
 Provides:        %{name}-web-database = %{version}-%{release}
@@ -294,14 +256,9 @@ Zabbix web frontend for PostgreSQL
 %setup0 -q -n %{srcname}-%{version}
 %patch0 -p1
 %patch1 -p1
-%if 0%{?fedora}
-%patch3 -p1
-%endif
 
 # Logrotate's su option is currently only available in Fedora
-%if 0%{?rhel}
 sed -i '/su zabbix zabbix/d' %{SOURCE5}
-%endif
 %patch4 -p0
 %patch5 -p0
 %patch6 -p0
@@ -323,6 +280,12 @@ rm -rf frontends/php/fonts
 # Remove executable permissions
 chmod a-x upgrades/dbpatches/*/mysql/upgrade
 
+# Override statically named directory for alertscripts and externalscripts
+# https://support.zabbix.com/browse/ZBX-6159
+sed -i 's|$(DESTDIR)@datadir@/zabbix|$(DESTDIR)/var/lib/zabbixsrv|' \
+    src/zabbix_server/Makefile.in \
+    src/zabbix_proxy/Makefile.in
+
 # All libraries are expected in /usr/lib or /usr/local/lib
 # https://support.zabbix.com/browse/ZBXNEXT-1296
 sed -i.orig -e 's|_LIBDIR=/usr/lib|_LIBDIR=%{_libdir}|g' \
@@ -333,11 +296,6 @@ rm -f frontends/php/include/.htaccess
 rm -f frontends/php/api/.htaccess
 rm -f frontends/php/conf/.htaccess
 
-# Remove dispensable COPYING
-# https://support.zabbix.com/browse/ZBX-5568
-# Solved for releases after 2.0.3
-rm -rf frontends/php/conf/COPYING
-
 # set timestamp on modified config file and directories
 touch -r frontends/php/css.css frontends/php/include/config.inc.php \
     frontends/php/include/defines.inc.php \
@@ -360,10 +318,10 @@ sed -i \
     -e 's|# PidFile=.*|PidFile=%{_localstatedir}/run/%{srcname}/zabbix_server.pid|g' \
     -e 's|^LogFile=.*|LogFile=%{_localstatedir}/log/%{srcname}/zabbix_server.log|g' \
     -e 's|# LogFileSize=.*|LogFileSize=0|g' \
-    -e 's|# AlertScriptsPath=${datadir}/zabbix/|AlertScriptsPath=%{_sharedstatedir}/zabbixsrv/|g' \
+    -e 's|# AlertScriptsPath=${datadir}/zabbix/|AlertScriptsPath=/var/lib/zabbixsrv/|g' \
     -e 's|^DBUser=root|DBUser=zabbix|g' \
-    -e 's|# DBSocket=/tmp/mysql.sock|DBSocket=%{_sharedstatedir}/mysql/mysql.sock|g' \
-    -e 's|# ExternalScripts=\${datadir}/zabbix/externalscripts|ExternalScripts=%{_sharedstatedir}/zabbixsrv/externalscripts|' \
+    -e 's|# DBSocket=/tmp/mysql.sock|DBSocket=/var/lib/mysql/mysql.sock|g' \
+    -e 's|# ExternalScripts=\${datadir}/zabbix/externalscripts|ExternalScripts=/var/lib/zabbixsrv/externalscripts|' \
     -e 's|/usr/local||g' \
     conf/zabbix_server.conf
 
@@ -372,8 +330,8 @@ sed -i \
     -e 's|^LogFile=.*|LogFile=%{_localstatedir}/log/%{srcname}/zabbix_proxy.log|g' \
     -e 's|# LogFileSize=.*|LogFileSize=0|g' \
     -e 's|^DBUser=root|DBUser=zabbix|g' \
-    -e 's|# DBSocket=/tmp/mysql.sock|DBSocket=%{_sharedstatedir}/mysql/mysql.sock|g' \
-    -e 's|# ExternalScripts=\${datadir}/zabbix/externalscripts|ExternalScripts=%{_sharedstatedir}/zabbixsrv/externalscripts|' \
+    -e 's|# DBSocket=/tmp/mysql.sock|DBSocket=/var/lib/mysql/mysql.sock|g' \
+    -e 's|# ExternalScripts=\${datadir}/zabbix/externalscripts|ExternalScripts=/var/lib/zabbixsrv/externalscripts|' \
     -e 's|/usr/local||g' \
     conf/zabbix_proxy.conf
 
@@ -402,8 +360,6 @@ common_flags="
     --with-openipmi
     --with-jabber
     --with-unixodbc
-    --with-ssh2
-    --datadir=%{_sharedstatedir}/zabbixsrv
 "
 
 # Frontend doesn't work for Sqlite, thus don't build server
@@ -427,6 +383,8 @@ touch src/zabbix_proxy/zabbix_proxy
 
 
 %install
+rm -rf $RPM_BUILD_ROOT
+
 # Configuration, runtime and start-up
 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}
 mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/web
@@ -435,19 +393,14 @@ mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/httpd/conf.d
 mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/%{srcname}
 mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/run/%{srcname}
 mkdir -p $RPM_BUILD_ROOT%{_unitdir}
-%if 0%{?rhel}
 mkdir -p $RPM_BUILD_ROOT%{_initrddir}
-%endif
 
 # Frontend
 mkdir -p $RPM_BUILD_ROOT%{_datadir}
 
-# Home directories
-#TODO: Duplicate directory exists for unknown reason
-mkdir -p $RPM_BUILD_ROOT%{_sharedstatedir}/zabbix
-mkdir -p $RPM_BUILD_ROOT%{_sharedstatedir}/zabbixsrv
-mkdir -p $RPM_BUILD_ROOT%{_sharedstatedir}/zabbixsrv/externalscripts
-mkdir -p $RPM_BUILD_ROOT%{_sharedstatedir}/zabbixsrv/alertscripts
+# Home directory for the agent;
+# The other home directory is created during installation
+mkdir -p $RPM_BUILD_ROOT/var/lib/zabbix
 
 # Install binaries
 make DESTDIR=$RPM_BUILD_ROOT install
@@ -476,41 +429,18 @@ sed -e 's|COMPONENT|server|g' %{SOURCE5} > \
 sed -e 's|COMPONENT|proxy|g' %{SOURCE5} > \
      $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/zabbix-proxy
 
-%if 0%{?fedora}
-# Install different systemd units because of the requirements for DBMS daemons
-install -m 0644 -p %{SOURCE10} $RPM_BUILD_ROOT%{_unitdir}/zabbix-agent.service
-install -m 0644 -p %{SOURCE11} $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy-mysql.service
-install -m 0644 -p %{SOURCE12} $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy-pgsql.service
-install -m 0644 -p %{SOURCE13} $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy-sqlite3.service
-install -m 0644 -p %{SOURCE14} $RPM_BUILD_ROOT%{_unitdir}/zabbix-server-mysql.service
-install -m 0644 -p %{SOURCE15} $RPM_BUILD_ROOT%{_unitdir}/zabbix-server-pgsql.service
-# PrivateTmp available from F17 on
-%if 0%{?fedora} < 17
-sed -i '/^PrivateTmp/d' $RPM_BUILD_ROOT%{_unitdir}/zabbix-agent.service
-sed -i '/^PrivateTmp/d' $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy-mysql.service
-sed -i '/^PrivateTmp/d' $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy-pgsql.service
-sed -i '/^PrivateTmp/d' $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy-sqlite3.service
-sed -i '/^PrivateTmp/d' $RPM_BUILD_ROOT%{_unitdir}/zabbix-server-mysql.service
-sed -i '/^PrivateTmp/d' $RPM_BUILD_ROOT%{_unitdir}/zabbix-server-pgsql.service
-%endif
-%else
 # init scripts
 install -m 0755 -p %{SOURCE3} $RPM_BUILD_ROOT%{_initrddir}/zabbix-agent
 install -m 0755 -p %{SOURCE4} $RPM_BUILD_ROOT%{_initrddir}/zabbix-proxy
 install -m 0755 -p %{SOURCE2} $RPM_BUILD_ROOT%{_initrddir}/zabbix-server
-%endif
-
-# Ghosted alternatives 
-touch $RPM_BUILD_ROOT%{_unitdir}/zabbix-server.service
-touch $RPM_BUILD_ROOT%{_unitdir}/zabbix-proxy.service
 
 # install compatibility links for config files
 ln -sf %{_sysconfdir}/zabbix_agent.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/zabbix_agent.conf
 ln -sf %{_sysconfdir}/zabbix_agentd.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/zabbix_agentd.conf
 ln -sf %{_sysconfdir}/zabbix_server.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/zabbix_server.conf
 ln -sf %{_sysconfdir}/zabbix_proxy.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/zabbix_proxy.conf
-ln -sf %{_sharedstatedir}/zabbixsrv/externalscripts $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/externalscripts
-ln -sf %{_sharedstatedir}/zabbixsrv/alertscripts $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/alertscripts
+ln -sf /var/lib/zabbixsrv/externalscripts $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/externalscripts
+ln -sf /var/lib/zabbixsrv/alertscripts $RPM_BUILD_ROOT%{_sysconfdir}/%{srcname}/alertscripts
 #TODO: What does that do to existing directories?
 
 # Install sql files
@@ -526,21 +456,13 @@ done
 install -dm 755 $RPM_BUILD_ROOT%{_datadir}/%{srcname}-sqlite3
 cp -p database/sqlite3/schema.sql $RPM_BUILD_ROOT%{_datadir}/%{srcname}-sqlite3
 
-%if 0%{?fedora}
-# systemd must create /var/run/%{srcname}
-mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/tmpfiles.d
-install -m 0644 %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/tmpfiles.d/zabbix.conf
-%endif
+
+%clean
+rm -rf $RPM_BUILD_ROOT
 
 
 %post server
-%if 0%{?fedora}
-if [ $1 -eq 1 ] ; then
-    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
-fi
-%else
 /sbin/chkconfig --add zabbix-server
-%endif
 
 if [ $1 -gt 1 ]
 then
@@ -551,35 +473,15 @@ fi
 :
 
 %post server-mysql
-%if 0%{?fedora}
-%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_server \
-    %{srcname}-server %{_sbindir}/%{srcname}_server_mysql 10 \
-        --slave %{_unitdir}/zabbix-server.service %{srcname}-server-systemd \
-            %{_unitdir}/zabbix-server-mysql.service
-%else
 %{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_server \
     %{srcname}-server %{_sbindir}/%{srcname}_server_mysql 10
-%endif
 
 %post server-pgsql
-%if 0%{?fedora}
-%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_server \
-    %{srcname}-server %{_sbindir}/%{srcname}_server_pgsql 10 \
-        --slave %{_unitdir}/zabbix-server.service %{srcname}-server-systemd \
-            %{_unitdir}/zabbix-server-pgsql.service
-%else
 %{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_server \
     %{srcname}-server %{_sbindir}/%{srcname}_server_pgsql 10
-%endif
 
 %post proxy
-%if 0%{?fedora}
-if [ $1 -eq 1 ] ; then
-    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
-fi
-%else
 /sbin/chkconfig --add zabbix-proxy
-%endif
 
 if [ $1 -gt 1 ]
 then
@@ -590,71 +492,41 @@ fi
 :
 
 %post proxy-mysql
-%if 0%{?fedora}
-%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_proxy \
-    %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_mysql 10 \
-        --slave %{_unitdir}/zabbix-proxy.service %{srcname}-proxy-systemd \
-            %{_unitdir}/zabbix-proxy-mysql.service
-%else
 %{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_proxy \
     %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_mysql 10
-%endif
 
 %post proxy-pgsql
-%if 0%{?fedora}
-%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_proxy \
-    %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_pgsql 10 \
-        --slave %{_unitdir}/zabbix-proxy.service %{srcname}-proxy-systemd \
-            %{_unitdir}/zabbix-proxy-pgsql.service
-%else
 %{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_proxy \
     %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_pgsql 10
-%endif
 
 %post proxy-sqlite3
-%if 0%{?fedora}
-%{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_proxy \
-    %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_sqlite3 10 \
-        --slave %{_unitdir}/zabbix-proxy.service %{srcname}-proxy-systemd \
-            %{_unitdir}/zabbix-proxy-sqlite3.service
-%else
 %{_sbindir}/update-alternatives --install %{_sbindir}/%{srcname}_proxy \
     %{srcname}-proxy %{_sbindir}/%{srcname}_proxy_sqlite3 10
-%endif
 
 %pre agent
 getent group zabbix > /dev/null || groupadd -r zabbix
 getent passwd zabbix > /dev/null || \
-    useradd -r -g zabbix -d %{_sharedstatedir}/zabbix -s /sbin/nologin \
+    useradd -r -g zabbix -d /var/lib/zabbix -s /sbin/nologin \
     -c "Zabbix Monitoring System" zabbix
 :
 
 %post agent
 if [ $1 -eq 1 ] ; then
-%if 0%{?fedora}
-    /bin/systemctl daemon-reload >/dev/null 2>&1 || :
-%else
     /sbin/chkconfig --add zabbix-agent || :
-%endif
 fi
 
 %pre server
 getent group zabbix > /dev/null || groupadd -r zabbix
 getent passwd zabbixsrv > /dev/null || \
-    useradd -r -g zabbix -d %{_sharedstatedir}/zabbixsrv -s /sbin/nologin \
+    useradd -r -g zabbix -d /var/lib/zabbixsrv -s /sbin/nologin \
     -c "Zabbix Monitoring System -- Proxy or server" zabbixsrv
 :
 
 %preun server
 if [ "$1" = 0 ]
 then
-%if 0%{?fedora}
-  /bin/systemctl --no-reload disable zabbix-server.service > /dev/null 2>&1 || :
-  /bin/systemctl stop zabbix-server.service > /dev/null 2>&1 || :
-%else
   /sbin/service zabbix-server stop >/dev/null 2>&1
   /sbin/chkconfig --del zabbix-server
-%endif
 fi
 :
 
@@ -662,7 +534,7 @@ fi
 %pre proxy
 getent group zabbix > /dev/null || groupadd -r zabbix
 getent passwd zabbixsrv > /dev/null || \
-    useradd -r -g zabbix -d %{_sharedstatedir}/zabbixsrv -s /sbin/nologin \
+    useradd -r -g zabbix -d /var/lib/zabbixsrv -s /sbin/nologin \
     -c "Zabbix Monitoring System -- Proxy or server" zabbixsrv
 :
 
@@ -670,39 +542,21 @@ getent passwd zabbixsrv > /dev/null || \
 #TODO: Use the same style consistently
 if [ "$1" = 0 ]
 then
-%if 0%{?fedora}
-  /bin/systemctl --no-reload disable zabbix-proxy.service > /dev/null 2>&1 || :
-  /bin/systemctl stop zabbix-proxy.service > /dev/null 2>&1 || :
-%else
   /sbin/service zabbix-proxy stop >/dev/null 2>&1
   /sbin/chkconfig --del zabbix-proxy
-%endif
 fi
 :
 
 %preun agent
 if [ $1 -eq 0 ] ; then
-%if 0%{?fedora}
-  /bin/systemctl --no-reload disable zabbix-agent.service > /dev/null 2>&1 || :
-  /bin/systemctl stop zabbix-agent.service > /dev/null 2>&1 || :
-%else
   /sbin/service zabbix-agent stop >/dev/null 2>&1
   /sbin/chkconfig --del zabbix-agent
-%endif
 fi
 :
 
 %postun server
-%if 0%{?fedora}
-  /bin/systemctl daemon-reload >/dev/null 2>&1 || :
-%endif
-
 if [ $1 -ge 1 ] ; then
-%if 0%{?fedora}
-  /bin/systemctl try-restart zabbix-server.service >/dev/null 2>&1 || :
-%else
   /sbin/service zabbix-server try-restart >/dev/null 2>&1 || :
-%endif
 fi
 
 %postun server-mysql
@@ -716,16 +570,8 @@ if [ $1 -eq 0 ] ; then
 fi
 
 %postun proxy
-%if 0%{?fedora}
-  /bin/systemctl daemon-reload >/dev/null 2>&1 || :
-%endif
-
 if [ $1 -ge 1 ] ; then
-%if 0%{?fedora}
-    /bin/systemctl try-restart zabbix-proxy.service >/dev/null 2>&1 || :
-%else
     /sbin/service zabbix-proxy try-restart >/dev/null 2>&1 || :
-%endif
 fi
 
 %postun proxy-mysql
@@ -744,16 +590,8 @@ if [ $1 -eq 0 ] ; then
 fi
 
 %postun agent
-%if 0%{?fedora}
-  /bin/systemctl daemon-reload >/dev/null 2>&1 || :
-%endif
-
 if [ $1 -ge 1 ] ; then
-%if 0%{?fedora}
-    /bin/systemctl try-restart zabbix-agent.service >/dev/null 2>&1 || :
-%else
     /sbin/service zabbix-agent try-restart >/dev/null 2>&1 || :
-%endif
 fi
 
 
@@ -763,9 +601,6 @@ fi
 %dir %{_sysconfdir}/%{srcname}
 %config(noreplace) %{_sysconfdir}/zabbix_agentd.conf
 %config(noreplace) %{_sysconfdir}/%{srcname}/zabbix_agentd.conf
-%if 0%{?fedora}
-%config(noreplace) %{_sysconfdir}/tmpfiles.d/zabbix.conf
-%endif
 %{_bindir}/zabbix_get
 %{_bindir}/zabbix_sender
 %{_mandir}/man1/zabbix_get.1*
@@ -774,54 +609,36 @@ fi
 %files server
 %doc misc/snmptrap/zabbix_trap_receiver.pl
 %attr(0775,root,zabbix) %dir %{_localstatedir}/log/zabbix
-%if 0%{?rhel}
 %attr(0775,root,zabbix) %dir %{_localstatedir}/run/zabbix
-%endif
 %attr(0400,zabbixsrv,zabbix) %config(noreplace) %{_sysconfdir}/zabbix_server.conf
 %config(noreplace) %{_sysconfdir}/%{srcname}/zabbix_server.conf
 %config(noreplace) %{_sysconfdir}/%{srcname}/externalscripts
 %config(noreplace) %{_sysconfdir}/%{srcname}/alertscripts
 %config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-server
 %ghost %{_sbindir}/zabbix_server
-%attr(0755,zabbixsrv,zabbix) %{_sharedstatedir}/%{srcname}srv
-%if 0%{?fedora}
-%ghost %{_unitdir}/zabbix-server.service
-%else
+%attr(0755,zabbixsrv,zabbix) /var/lib/%{srcname}srv
 %{_initrddir}/zabbix-server
-%endif
 %{_mandir}/man8/zabbix_server.8*
 
 %files server-mysql
 %{_datadir}/%{srcname}-mysql
 %{_sbindir}/zabbix_server_mysql
-%if 0%{?fedora}
-%{_unitdir}/zabbix-server-mysql.service
-%endif
 
 %files server-pgsql
 %{_datadir}/%{srcname}-postgresql
 %{_sbindir}/zabbix_server_pgsql
-%if 0%{?fedora}
-%{_unitdir}/zabbix-server-pgsql.service
-%endif
 
 %files agent
 %doc conf/zabbix_agentd/*.conf
 %attr(0775,root,zabbix) %dir %{_localstatedir}/log/zabbix
-%if 0%{?rhel}
 %attr(0775,root,zabbix) %dir %{_localstatedir}/run/zabbix
-%endif
 %config(noreplace) %{_sysconfdir}/zabbix_agent.conf
 %config(noreplace) %{_sysconfdir}/%{srcname}/zabbix_agent.conf
 %config(noreplace) %{_sysconfdir}/zabbix_agentd.conf
 %config(noreplace) %{_sysconfdir}/%{srcname}/zabbix_agentd.conf
 %config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-agent
-%attr(0755,zabbix,zabbix) %dir %{_sharedstatedir}/%{srcname}
-%if 0%{?fedora}
-%{_unitdir}/zabbix-agent.service
-%else
+%attr(0755,zabbix,zabbix) %dir /var/lib/%{srcname}
 %{_initrddir}/zabbix-agent
-%endif
 %{_sbindir}/zabbix_agent
 %{_sbindir}/zabbix_agentd
 %{_mandir}/man8/zabbix_agentd.8*
@@ -829,42 +646,27 @@ fi
 %files proxy
 %doc misc/snmptrap/zabbix_trap_receiver.pl
 %attr(0775,root,zabbix) %dir %{_localstatedir}/log/zabbix
-%if 0%{?rhel}
 %attr(0775,root,zabbix) %dir %{_localstatedir}/run/zabbix
-%endif
 %attr(0600,zabbixsrv,zabbix) %config(noreplace) %{_sysconfdir}/zabbix_proxy.conf
 %config(noreplace) %{_sysconfdir}/%{srcname}/zabbix_proxy.conf
 %config(noreplace) %{_sysconfdir}/%{srcname}/externalscripts
 %config(noreplace) %{_sysconfdir}/logrotate.d/zabbix-proxy
 %ghost %{_sbindir}/zabbix_proxy
-%attr(0755,zabbixsrv,zabbix) %{_sharedstatedir}/%{srcname}srv
-%if 0%{?fedora}
-%ghost %{_unitdir}/zabbix-proxy.service
-%else
+%attr(0755,zabbixsrv,zabbix) /var/lib/%{srcname}srv
 %{_initrddir}/zabbix-proxy
-%endif
 %{_mandir}/man8/zabbix_proxy.8*
 
 %files proxy-mysql
 %{_datadir}/%{srcname}-mysql
 %{_sbindir}/zabbix_proxy_mysql
-%if 0%{?fedora}
-%{_unitdir}/zabbix-proxy-mysql.service
-%endif
 
 %files proxy-pgsql
 %{_datadir}/%{srcname}-postgresql
 %{_sbindir}/zabbix_proxy_pgsql
-%if 0%{?fedora}
-%{_unitdir}/zabbix-proxy-pgsql.service
-%endif
 
 %files proxy-sqlite3
 %{_datadir}/%{srcname}-sqlite3
 %{_sbindir}/zabbix_proxy_sqlite3
-%if 0%{?fedora}
-%{_unitdir}/zabbix-proxy-sqlite3.service
-%endif
 
 %files web
 %dir %attr(0750,apache,apache) %{_sysconfdir}/%{srcname}/web
@@ -881,7 +683,10 @@ fi
 * Tue Jan 22 2013 Volker Fröhlich <volker27 at gmx.at> - 2.0.4-4
 - Remove zabbix_get plus manpage from the proxy files section
 - Solve conflict for externalscripts symlink between proxy and
+- Remove origin of directories BZ#867159, comment 14 and 16
   server package
+- Remove all conditionals for Fedora/EL
+- Adapt to update path from 1.4 only
 
 * Thu Jan 17 2013 Volker Fröhlich <volker27 at gmx.at> - 2.0.4-3
 - Patch for CVE-2013-1364


More information about the scm-commits mailing list