[arch-commits] Commit in zabbix/trunk (PKGBUILD)

Florian Pritz bluewind at archlinux.org
Wed Oct 25 07:38:52 UTC 2017


    Date: Wednesday, October 25, 2017 @ 07:38:52
  Author: bluewind
Revision: 308457

properly fix pkgbuild

Modified:
  zabbix/trunk/PKGBUILD

----------+
 PKGBUILD |  236 ++++++++++++++++++++++++++++++++-----------------------------
 1 file changed, 126 insertions(+), 110 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2017-10-25 07:17:02 UTC (rev 308456)
+++ PKGBUILD	2017-10-25 07:38:52 UTC (rev 308457)
@@ -1,9 +1,10 @@
-# Maintainer: Sébastien "Seblu" Luttringer <seblu at archlinux.org>
-# Contributor: Thore Bödecker <foxxx0 at archlinux.org>
+# $Id$
+# Maintainer: Bartłomiej Piotrowski <bpiotrowski at archlinux.org>
+# Maintainer: Florian Pritz <bluewind at xinu.at>
 
 pkgbase=zabbix
 pkgname=(zabbix-server zabbix-agent zabbix-proxy zabbix-frontend-php)
-pkgver=3.4.2
+pkgver=3.4.3
 pkgrel=1
 arch=(i686 x86_64)
 url='http://www.zabbix.com/'
@@ -14,7 +15,7 @@
 	zabbix-server{-mysql,-pgsql}.service zabbix-server.{sysusers,tmpfiles}
 	zabbix-proxy{-sqlite,-mysql,-pgsql}.service zabbix-proxy.{sysusers,tmpfiles})
 
-sha256sums=('54c21e04da4ef43380af647c6a0ddff67614337386fa318da021117efe5b334f'
+sha256sums=('00e87db503d332a1e3905d13f36b6ddad32c2514f03060361168655a8d4fd8cf'
             '484fa9969eab61eaf20043ae08e2615c0569982dff869c985f2e2065da698c6a'
             'ef23133aae2340945e621c9725094a3458d9089d3de15f641afcdabdf7c5a39c'
             'c38a871d237b00dd6310dfb02e5a8e1b930e445204e73dde8305bed8baf380ec'
@@ -28,138 +29,153 @@
             'd8929b2e78b5b178c7eebc32ae00a05b7c9d798cf25950a8745ea4b23734e226'
             'f842ea0a229513e918ff9641391605d436b7d57cb53d932cdd02e4e8b13c95d9')
 
-  # remove tests that require root privileges
-  rm src/test/cli/ceph-authtool/cap*.t
-
-  # remove broken tests
-  rm src/test/cli/crushtool/build.t
-  rm -rf qa/btrfs
-  rm src/btrfs_ioc_test.c
-
-  # this test will try to perform btrfs operations when a btrfs mount
-  # is active on the build host, which will fail
-  if mount | grep 'type btrfs' &>/dev/null; then
-    sed -i '/run-tox-ceph-disk/d' src/test/CMakeLists.txt
-  fi
+prepare() {
+  cd $pkgbase-$pkgver
+  sed -i \
+    -e '/^LogFile=.*/d' \
+    -e 's/# LogType=file/LogType=system/' \
+    conf/zabbix_{agentd,proxy,server}.conf
+  autoreconf -fi
 }
 
 build() {
-  cd "${srcdir}/${pkgbase}-${pkgver}"
+  _configure_flags=(
+    --disable-static
+    --prefix=/usr
+    --infodir=/usr/share/info
+    --mandir=/usr/share/man
+    --sysconfdir=/etc/zabbix
+    --enable-agent
+    --enable-ipv6
+    --with-ldap
+    --with-libcurl
+    --with-libxml2
+    --with-net-snmp
+    --with-openssl
+    --with-ssh2
+    --with-unixodbc
+  )
 
-  mkdir -p build
-  cd build
+  cd $pkgbase-$pkgver
 
-  cmake \
-    -DCMAKE_INSTALL_PREFIX=/usr \
-    -DCMAKE_INSTALL_SYSCONFDIR=/etc \
-    -DCMAKE_INSTALL_SBINDIR=/usr/bin \
-    -DCMAKE_INSTALL_LIBDIR=/usr/lib \
-    -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib \
-    -DWITH_BABELTRACE=ON \
-    -DWITH_CEPHFS=ON \
-    -DWITH_FUSE=ON \
-    -DWITH_LTTNG=ON \
-    -DWITH_LZ4=ON \
-    -DWITH_MGR=ON \
-    -DWITH_NSS=ON \
-    -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 \
-    -DWITH_RADOSGW=ON \
-    -DWITH_RADOSGW_BEAST_FRONTEND=ON \
-    -DWITH_RDMA=OFF \
-    -DWITH_SSL=ON \
-    -DWITH_SYSTEM_BOOST=ON \
-    -DWITH_SYSTEMD=ON \
-    -DWITH_TESTS=ON \
-    -DWITH_XFS=ON \
-    -DENABLE_SHARED=ON \
-    ..
+  for db in postgresql mysql; do
+    ./configure ${_configure_flags[@]} --enable-server --with-$db
+    make clean
+    make
+    mv src/zabbix_server/zabbix_server{,_$db}
+  done
 
-  make all
+  for db in postgresql mysql sqlite3; do
+    ./configure ${_configure_flags[@]} --enable-proxy --with-$db
+    make clean
+    make
+    mv src/zabbix_proxy/zabbix_proxy{,_$db}
+  done
 }
 
-check() {
-  cd "${srcdir}/${pkgbase}-${pkgver}/build"
+package_zabbix-server() {
+  pkgdesc='Monitoring software for networks and applications'
+  depends=(net-snmp curl libxml2 unixodbc libldap libevent)
+  optdepends=('postgresql-libs: for PostgreSQL support'
+              'libmariadbclient: for MariaDB support')
+  backup=(etc/zabbix/zabbix_server.conf)
+  install=zabbix-server.install
 
-  export CTEST_PARALLEL_LEVEL="$(nproc)"
-  make check
+  cd $pkgbase-$pkgver
 
-  # sometimes processes are not properly terminated...
-  for process in ceph-mon ceph-mgr ceph-osd; do
-    pkill -9 "$process" || true
+  for db in postgresql mysql; do
+    install -Dm755 src/zabbix_server/zabbix_server_$db \
+      "$pkgdir/usr/bin/zabbix_server_$db"
+
+    install -d "$pkgdir/usr/share/$pkgname/$db"
+    install -m644 database/$db/*.sql -t "$pkgdir/usr/share/$pkgname/$db"
   done
-}
+  install -Dm755 src/zabbix_get/zabbix_get "$pkgdir/usr/bin/zabbix_get"
 
-package_ceph-libs() {
-  depends=('boost-libs' 'curl' 'glibc' 'keyutils' 'leveldb' 'libaio'
-    'libutil-linux' 'lttng-ust' 'nss' 'python2' 'xfsprogs')
+  install -Dm644 man/zabbix_server.man "$pkgdir/usr/share/man/man8/zabbix_server.8"
+  install -Dm644 man/zabbix_get.man "$pkgdir/usr/share/man/man1/zabbix_get.1"
 
-  cd "${srcdir}/${pkgbase}-${pkgver}/build"
+  install -Dm644 conf/zabbix_server.conf "$pkgdir/etc/zabbix/zabbix_server.conf"
+  chown 170:170 "$pkgdir/etc/zabbix/zabbix_server.conf"
 
-  # main install
-  make DESTDIR="$pkgdir" install
+  install -Dm644 "$srcdir/zabbix-server-pgsql.service" \
+    "$pkgdir/usr/lib/systemd/system/zabbix-server-pgsql.service"
+  install -Dm644 "$srcdir/zabbix-server-mysql.service" \
+    "$pkgdir/usr/lib/systemd/system/zabbix-server-mysql.service"
 
-  # remove stuff that goes into the ceph package
-  rm -rf "${pkgdir}"/usr/lib/{ceph/mgr,systemd,sysusers.d,tmpfiles.d}
-  rm -rf "${pkgdir}/usr/share"
-  rm -rf "${pkgdir}/usr/sbin"
-  rm -rf "${pkgdir}/usr/bin"
-  rm -rf "${pkgdir}/etc"
-  rm -rf "${pkgdir}/var"
+  install -Dm644 "$srcdir/zabbix-server.sysusers" \
+	"$pkgdir/usr/lib/sysusers.d/zabbix-server.conf"
+  install -Dm644 "$srcdir/zabbix-server.tmpfiles" \
+	"$pkgdir/usr/lib/tmpfiles.d/zabbix-server.conf"
 }
 
-package_ceph() {
-  depends=('ceph-libs' 'babeltrace' 'boost-libs' 'curl' 'fuse2' 'glibc'
-    'gperftools' 'keyutils' 'leveldb' 'libaio' 'libsystemd' 'libutil-linux'
-    'lsb-release' 'lttng-ust' 'ncurses' 'nss' 'python2' 'python2-cherrypy'
-    'python2-jinja' 'python2-pecan' 'python2-prettytable' 'python2-pyopenssl'
-    'python2-setuptools' 'python2-werkzeug' 'snappy' 'xfsprogs')
+package_zabbix-agent() {
+  pkgdesc='Monitoring agent for Zabbix'
+  depends=(curl pcre)
+  backup=(etc/zabbix/zabbix_agentd.conf)
 
-  cd "${srcdir}/${pkgbase}-${pkgver}/build"
+  cd $pkgbase-$pkgver
+  install -Dm755 src/zabbix_agent/zabbix_agentd "$pkgdir/usr/bin/zabbix_agentd"
+  install -Dm755 src/zabbix_sender/zabbix_sender "$pkgdir/usr/bin/zabbix_sender"
 
-  # main install
-  make DESTDIR="$pkgdir" install
+  install -Dm644 conf/zabbix_agentd.conf "$pkgdir/etc/zabbix/zabbix_agentd.conf"
+  chown 172:172 "$pkgdir/etc/zabbix/zabbix_agentd.conf"
 
-  # remove stuff that is in the ceph-libs package
-  find "${pkgdir}/usr/lib" -maxdepth 1 -type f -delete
-  find "${pkgdir}/usr/lib" -maxdepth 1 -type l -delete
-  find "${pkgdir}/usr/lib/ceph" -maxdepth 1 -type f -delete
-  find "${pkgdir}/usr/lib/ceph" -maxdepth 1 -type l -delete
-  rm -rf "${pkgdir}"/usr/lib/{ceph/{compressor,crypto,erasure-code},python2.7,rados-classes}
-  rm -rf "${pkgdir}/usr/include"
+  install -Dm644 conf/zabbix_agentd/userparameter_examples.conf \
+	"$pkgdir/usr/share/zabbix-agent/userparameter_examples.conf"
+  install -Dm644 conf/zabbix_agentd/userparameter_mysql.conf \
+	"$pkgdir/usr/share/zabbix-agent/userparameter_mysql.conf"
 
-  # install tmpfiles.d and sysusers.d stuff
-  install -Dm644 "${srcdir}/${pkgbase}-${pkgver}/systemd/ceph.tmpfiles.d" \
-    "${pkgdir}/usr/lib/tmpfiles.d/${pkgbase}.conf"
-  install -Dm644 "${srcdir}/ceph.sysusers" \
-    "${pkgdir}/usr/lib/sysusers.d/${pkgbase}.conf"
+  install -Dm644 man/zabbix_agentd.man \
+	"$pkgdir/usr/share/man/man8/zabbix_agentd.8"
+  install -Dm644 man/zabbix_sender.man \
+	"$pkgdir/usr/share/man/man1/zabbix_sender.1"
 
-  # remove debian init script
-  rm -rf "${pkgdir}/etc/init.d"
+  install -Dm644 "$srcdir/zabbix-agent.service" \
+	"$pkgdir/usr/lib/systemd/system/zabbix-agent.service"
+  install -Dm644 "$srcdir/zabbix-agent.sysusers" \
+	"$pkgdir/usr/lib/sysusers.d/zabbix-agent.conf"
+  install -Dm644 "$srcdir/zabbix-agent.tmpfiles" \
+	"$pkgdir/usr/lib/tmpfiles.d/zabbix-agent.conf"
+}
 
-  # fix sbin dir (cmake opt seems to have no effect)
-  mv "${pkgdir}"/usr/sbin/* "${pkgdir}/usr/bin/"
-  rm -rf "${pkgdir}/usr/sbin"
+package_zabbix-proxy() {
+  pkgdesc='Data collecting proxy for Zabbix'
+  depends=(net-snmp curl libxml2 sqlite unixodbc libldap)
+  optdepends=('libmariadbclient: for MariaDB support'
+              'postgresql-libs: for PostgreSQL support')
+  backup=(etc/zabbix/zabbix_proxy.conf)
 
-  # remove drop.ceph.com ssh stuff
-  rm -f "${pkgdir}/usr/share/ceph/{{known_hosts,id_rsa}_drop.ceph.com,.pub}"
+  cd $pkgbase-$pkgver
+  for db in postgresql mysql sqlite3; do
+    install -Dm755 src/zabbix_proxy/zabbix_proxy_$db \
+      "$pkgdir/usr/bin/zabbix_proxy_$db"
 
-  # fix bash completions path
-  install -d -m 755 "${pkgdir}/usr/share/bash-completion"
-  mv "$pkgdir"/{etc/bash_completion.d,usr/share/bash-completion/completions}
+    install -d "$pkgdir/usr/share/$pkgname/$db"
+    install -m644 database/$db/schema.sql -t "$pkgdir/usr/share/$pkgname/$db"
+  done
+  install -Dm644 conf/zabbix_proxy.conf "$pkgdir/etc/zabbix/zabbix_proxy.conf"
+  chown 171:171 "$pkgdir/etc/zabbix/zabbix_proxy.conf"
 
-  # fix EnvironmentFile location in systemd service files
-  sed -i 's|/etc/sysconfig/|/etc/conf.d/|g' "${pkgdir}"/usr/lib/systemd/system/*.service
+  install -Dm644 "$srcdir/zabbix-proxy-sqlite.service" \
+    "$pkgdir/usr/lib/systemd/system/zabbix-proxy-sqlite.service"
+  install -Dm644 "$srcdir/zabbix-proxy-pgsql.service" \
+    "$pkgdir/usr/lib/systemd/system/zabbix-proxy-pgsql.service"
+  install -Dm644 "$srcdir/zabbix-proxy-mysql.service" \
+    "$pkgdir/usr/lib/systemd/system/zabbix-proxy-mysql.service"
 
-  # prepare some paths and set correct permissions
-  install -D -d -m750 -o   0 -g 340 "${pkgdir}/etc/ceph"
-  install -D -d -m750 -o 340 -g 340 "${pkgdir}/var/log/ceph"
-  install -D -d -m750 -o 340 -g 340 "${pkgdir}/var/lib/ceph"
-  install -D -d -m750 -o 340 -g 340 "${pkgdir}/var/lib/ceph/bootstrap-mds"
-  install -D -d -m750 -o 340 -g 340 "${pkgdir}/var/lib/ceph/bootstrap-osd"
-  install -D -d -m750 -o 340 -g 340 "${pkgdir}/var/lib/ceph/bootstrap-rgw"
-  install -D -d -m750 -o 340 -g 340 "${pkgdir}/var/lib/ceph/mon"
-  install -D -d -m750 -o 340 -g 340 "${pkgdir}/var/lib/ceph/mgr"
-  install -D -d -m750 -o 340 -g 340 "${pkgdir}/var/lib/ceph/osd"
+  install -Dm644 "$srcdir/zabbix-proxy.sysusers" \
+	"$pkgdir/usr/lib/sysusers.d/zabbix-proxy.conf"
+  install -Dm644 "$srcdir/zabbix-proxy.tmpfiles" \
+	"$pkgdir/usr/lib/tmpfiles.d/zabbix-proxy.conf"
 }
 
-# vim:set ts=2 sw=2 et:
+package_zabbix-frontend-php() {
+  pkgdesc='PHP frontend for Zabbix'
+  depends=(zabbix-server php php-gd)
+
+  cd $pkgbase-$pkgver
+  install -d "$pkgdir/usr/share/webapps/zabbix"
+  cp -a frontends/php/* "$pkgdir/usr/share/webapps/zabbix"
+  chown http:http ${pkgdir}/usr/share/webapps/zabbix/conf/ # write access for http user
+}



More information about the arch-commits mailing list