diff options
author | Nicolás Reynolds <fauno@kiwwwi.com.ar> | 2012-10-22 11:05:18 -0300 |
---|---|---|
committer | Nicolás Reynolds <fauno@kiwwwi.com.ar> | 2012-10-22 11:05:18 -0300 |
commit | 2352f09f581b24fa01f022026728acf919c0335a (patch) | |
tree | 36667ad9212b04db2500f304da5ac4a611cce5c9 /pcr | |
parent | 7e9d319e9575e68d86463b792425fcdba0f195d2 (diff) | |
parent | 99746708edfd2c56f2ba654a14f27e98b1601a43 (diff) |
Merge branch 'master' of ssh://vparabola/home/parabola/abslibre-pre-mips64el
Conflicts:
community-staging/gambas3/PKGBUILD
community-staging/luminancehdr/PKGBUILD
community-staging/luxrays/PKGBUILD
community-staging/luxrender/PKGBUILD
community-staging/performous/PKGBUILD
community-staging/widelands/PKGBUILD
community/chmsee/PKGBUILD
community/flac123/PKGBUILD
community/pam-krb5/PKGBUILD
community/python-pyxattr/PKGBUILD
extra/postgresql/PKGBUILD
extra/pygobject2/PKGBUILD
extra/python-lxml/PKGBUILD
extra/usbview/PKGBUILD
extra/vlc/PKGBUILD
extra/xorg-server/PKGBUILD
multilib/lib32-libpng/PKGBUILD
multilib/lib32-util-linux/PKGBUILD
staging/bzflag/PKGBUILD
staging/calligra/PKGBUILD
staging/enblend-enfuse/PKGBUILD
staging/gegl/PKGBUILD
staging/hugin/PKGBUILD
staging/inkscape/PKGBUILD
testing/btrfs-progs/PKGBUILD
testing/btrfs-progs/initcpio-hook-btrfs
testing/btrfs-progs/initcpio-install-btrfs
testing/cryptsetup/PKGBUILD
testing/cryptsetup/encrypt_hook
testing/empathy/PKGBUILD
testing/evolution/PKGBUILD
testing/glibmm/PKGBUILD
testing/gtkglext/PKGBUILD
testing/ibus/PKGBUILD
testing/kmod/PKGBUILD
testing/udisks2/PKGBUILD
testing/xf86-video-intel/PKGBUILD
Diffstat (limited to 'pcr')
-rw-r--r-- | pcr/etckeeper/PKGBUILD | 43 | ||||
-rw-r--r-- | pcr/etckeeper/etckeeper-archlinux.conf | 38 | ||||
-rw-r--r-- | pcr/etckeeper/etckeeper-pacman.patch | 9 | ||||
-rw-r--r-- | pcr/zoneminder/PKGBUILD | 163 | ||||
-rw-r--r-- | pcr/zoneminder/httpd-zm.conf | 8 | ||||
-rw-r--r-- | pcr/zoneminder/httpd-zoneminder.conf | 20 | ||||
-rw-r--r-- | pcr/zoneminder/zoneminder | 63 | ||||
-rw-r--r-- | pcr/zoneminder/zoneminder.install | 124 | ||||
-rw-r--r-- | pcr/zoneminder/zoneminder.service | 1 |
9 files changed, 391 insertions, 78 deletions
diff --git a/pcr/etckeeper/PKGBUILD b/pcr/etckeeper/PKGBUILD new file mode 100644 index 000000000..163c320db --- /dev/null +++ b/pcr/etckeeper/PKGBUILD @@ -0,0 +1,43 @@ +# Maintainer (Parabola): Luke Shumaker <lukeshu@sbcglobal.net> +# Maintainer (AUR): Buce <dmbuce@gmail.com> +# Contributor: Danie Roux <accounts@danieroux.com> + +# This requires makepkg newer than 4.0.3, which at this time means from git + +pkgname=etckeeper +pkgver=0.64 +pkgdesc="collection of tools to let /etc be stored in a git, hg, bzr or darcs repository." +url="http://kitenet.net/~joey/code/etckeeper/" +license=('GPL2') + +pkgrel=1 +arch=('any') +depends=('inetutils' 'python2') +makedepends=('bzr') # bzr must be there at compile time to have bzr support +optdepends=('git' 'hg' 'bzr' 'darcs') +backup=(etc/etckeeper/etckeeper.conf) +source=("etckeeper-$pkgver::git://git.kitenet.net/etckeeper#tag=${pkgver}" + etckeeper-pacman.patch + etckeeper-archlinux.conf) + +build() { + cd "$srcdir/etckeeper-$pkgver" + + # add pacman support to list-to `list-installed` + patch -p0 -i "$srcdir/etckeeper-pacman.patch" + + # use python2 + sed -i 's@^#!/usr/bin/python$@&2@' etckeeper-bzr/__init__.py + + make CONFFILE="$srcdir/etckeeper-archlinux.conf" build +} + +package() { + cd "$srcdir/etckeeper-$pkgver" + + make CONFFILE="$srcdir/etckeeper-archlinux.conf" DESTDIR=$pkgdir install +} + +md5sums=('SKIP' + 'f1f00bf9331d1ef7f29b0ac29cdfcbda' + '99d8d2838f49fa0f2f21c9e37948100d') diff --git a/pcr/etckeeper/etckeeper-archlinux.conf b/pcr/etckeeper/etckeeper-archlinux.conf new file mode 100644 index 000000000..83e2c577d --- /dev/null +++ b/pcr/etckeeper/etckeeper-archlinux.conf @@ -0,0 +1,38 @@ +# The VCS to use. +#VCS="hg" +VCS="git" +#VCS="bzr" +#VCS="darcs" + +# Options passed to git commit when run by etckeeper. +GIT_COMMIT_OPTIONS="" + +# Options passed to hg commit when run by etckeeper. +HG_COMMIT_OPTIONS="" + +# Options passed to bzr commit when run by etckeeper. +BZR_COMMIT_OPTIONS="" + +# Options passed to darcs record when run by etckeeper. +DARCS_COMMIT_OPTIONS="-a" + +# Uncomment to avoid etckeeper committing existing changes +# to /etc automatically once per day. +#AVOID_DAILY_AUTOCOMMITS=1 + +# Uncomment the following to avoid special file warning +# (the option is enabled automatically by cronjob regardless). +#AVOID_SPECIAL_FILE_WARNING=1 + +# Uncomment to avoid etckeeper committing existing changes to +# /etc before installation. It will cancel the installation, +# so you can commit the changes by hand. +#AVOID_COMMIT_BEFORE_INSTALL=1 + +# The high-level package manager that's being used. +# (apt, pacman-g2, yum etc) +HIGHLEVEL_PACKAGE_MANAGER=pacman + +# The low-level package manager that's being used. +# (dpkg, rpm, pacman-g2, etc) +LOWLEVEL_PACKAGE_MANAGER=pacman diff --git a/pcr/etckeeper/etckeeper-pacman.patch b/pcr/etckeeper/etckeeper-pacman.patch new file mode 100644 index 000000000..1fb4acb62 --- /dev/null +++ b/pcr/etckeeper/etckeeper-pacman.patch @@ -0,0 +1,9 @@ +--- list-installed.d/50list-installed.orig 2012-10-21 23:45:30.000000000 -0400 ++++ list-installed.d/50list-installed 2012-10-21 23:45:39.000000000 -0400 +@@ -7,4 +7,6 @@ + egrep '(ok installed|ok config-files)' | cut -f2,3 + elif [ "$LOWLEVEL_PACKAGE_MANAGER" = rpm ]; then + rpm -qa --qf "%|epoch?{%{epoch}}:{0}|:%{name}-%{version}-%{release}.%{arch}\n" | sort ++elif [ "$LOWLEVEL_PACKAGE_MANAGER" = pacman ]; then ++ { pacman -Qd|sed 's/.*/& (dep)/'; pacman -Qe|sed 's/.*/& (explicit)/'; } |sort + fi diff --git a/pcr/zoneminder/PKGBUILD b/pcr/zoneminder/PKGBUILD index bb850eec2..e5e54537b 100644 --- a/pcr/zoneminder/PKGBUILD +++ b/pcr/zoneminder/PKGBUILD @@ -8,58 +8,118 @@ pkgname=zoneminder pkgver=1.25.0 -pkgrel=17 +pkgrel=20 pkgdesc='Capture, analyse, record and monitor video security cameras' -arch=(i686 x86_64 mips64el) -backup=(etc/zm.conf etc/httpd/conf/extra/httpd-zm.conf) -url=http://www.$pkgname.com -license=(GPL) +arch=( + i686 + x86_64 + mips64el +) +backup=( + etc/zm.conf +) +url="http://www.$pkgname.com" +license=( + GPL +) depends=( - apache cambozola ffmpeg-static gnutls mysql perl-archive-zip perl-date-manip - perl-dbd-mysql perl-dbi perl-expect perl-libwww perl-mime-lite - perl-mime-tools perl-php-serialization perl-net-sftp-foreign perl-sys-mmap - perl-time-modules perl-x10 php php-apache php-gd php-mcrypt + apache + cambozola + ffmpeg-static + gnutls + mysql + perl-archive-zip + perl-date-manip + perl-dbd-mysql + perl-dbi + perl-expect + perl-libwww + perl-mime-lite + perl-mime-tools + perl-php-serialization + perl-net-sftp-foreign + perl-sys-mmap + perl-time-modules + perl-x10 + php + php-apache + php-gd + php-mcrypt +) +makedepends=( + netpbm +) +optdepends=( + netpbm ) -makedepends=(netpbm) install=$pkgname.install source=( http://www.$pkgname.com/downloads/ZoneMinder-$pkgver.tar.gz - httpd-zm.conf - zm.rc.d + httpd-$pkgname.conf + $pkgname $pkgname.service patch-ffmpeg-0.11.patch ) -md5sums=( - eaefa14befd482154970541252aa1a39 - 25ad042b501aaad98cbe4e05ca0a96c2 - 034b61cda8849fc3001849e76ef26041 - 7487cc72ead82aea0bc78f2e4106ae1a - 81c8be870260142e2633eedf73c72040 +sha512sums=( + 3e18993b0539729491052c97d8c94227ccc089eb40277c2f07682f30049033303c7cfe9734fdac6d33ae67df29c76eb72bf7fbb5dae8227e8831fa603b61c375 + 4ce0d8eba9d006d258f5b8a83920fc17f1f602b96518d37b7a47cd9b6eb84ef2587641a6ba839a469c3f0e33b46475866187279ae3f8be0d4054b074ee5d6b08 + ab4e1d5ddaf4d9cd53d6ca59d7965902afd6a2dc830fbbafa270736c52c2b3563075fee860bb0276466f96e9dbfb71b259ac45a4ae2e4ead8eaec154a0159eb0 + cfb0eb87a989236c72741a496ddc6a73aa2696e5beaaca4836d3c231ddb24c7ef5e9f65e7afa49674f2115cbfa4a07c75486e1947ce294c816ddbb875f3b99cf + 382799ad6add1632d934544230520f942dae37913b58cfa19e0cb2b11e7002267b1fdb9aa535f2217bcccf0c85c4d754f316dc3980a3ca267e5b3f5500536024 ) + build() { cd $srcdir/ZoneMinder-$pkgver - export CPPFLAGS=-D__STDC_CONSTANT_MACROS \ - ZM_SSL_LIB=gnutls + # ZM_RUNDIR need change to run dir + export CPPFLAGS=-D__STDC_CONSTANT_MACROS\ + ZM_LOGDIR=/var/log/$pkgname\ + ZM_RUNDIR=/tmp/$pkgname\ + ZM_SSL_LIB=gnutls\ + ZM_TMPDIR=/tmp/$pkgname # Patch for GCC 4.7.x - sed -i -e 's/^#include <errno.h>/#include <errno.h>\n#include <unistd.h>/' src/zm_logger.cpp - sed -i -e 's/^#include <pthread.h>/#include <pthread.h>\n#include <unistd.h>/' src/zm_thread.h + sed -i -e 's/^#include <errno.h>/#include <errno.h>\n#include <unistd.h>/'\ + src/zm_logger.cpp || read + sed -i -e 's/^#include <pthread.h>/#include <pthread.h>\n#include <unistd.h>/'\ + src/zm_thread.h || read + + # Patch for automake 1.12 + sed -i -e '/am__api_version=/ s/1.11/1.12/'\ + configure || read # Patch for disable ZM_CHECK_FOR_UPDATES - sed -i -e '/ZM_CHECK_FOR_UPDATES/,+1 s/yes/no/' scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in + sed -i -e '/ZM_CHECK_FOR_UPDATES/,+1 s/yes/no/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read # Patch for support html5 video and flv sed -i -e '/ZM_MPEG_LIVE_FORMAT/,+1 s/swf/webm/;/ZM_MPEG_REPLAY_FORMAT/,+1 s/swf/webm/; /ZM_FFMPEG_FORMATS/,+1 s/mpg mpeg wmv asf avi\* mov swf 3gp\*\*/mpg mpeg wmv asf avi\* mov flv swf 3gp\*\* webm ogg h254/'\ - scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for change path run dir + sed -i -e '/ZM_PATH_SOCKS/,+1 s/TMP/RUN/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for change ZM name to ZoneMinder + sed -i -e '/ZM_WEB_TITLE_PREFIX/,+1 s/"ZM"/"ZoneMinder"/'\ + scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + + # Patch for v4l1 compat support + sed -i -e "s/$ENV{SHELL} = \'\/bin\/sh\' if exists $ENV{SHELL};/$ENV{SHELL} = \'\/bin\/sh\' if exists $ENV{SHELL};\n$ENV{LD_PRELOAD} = \'\/usr\/lib\/libv4l\/v4l1compat.so\' ;/"\ + scripts/zmdc.pl.in || read + + # Patch for add more socket tries + sed -i -e '/$max_socket_tries/ s/3/15/'\ + web/ajax/stream.php || read # Patch for wrong "suppported" - sed -i -e 's/suppported/supported/' src/zm_local_camera.cpp + sed -i -e 's/suppported/supported/'\ + src/zm_local_camera.cpp || read # Patch for type cast in linux-libre kernel 3.5 sed -i -e 's/enum v4l2_buf_type type = v4l2_data.fmt.type;/enum v4l2_buf_type type = (v4l2_buf_type)v4l2_data.fmt.type;/'\ - src/zm_local_camera.cpp + src/zm_local_camera.cpp || read # Patch for drop custom perl install paths sed -i -e '/# Slight hack for non-standard perl install paths/,+10 d; @@ -93,22 +153,22 @@ build() { / ( cd $(DESTDIR)$(sysconfdir); chown $(webuser):$(webgroup) $(sysconf_DATA); chmod 600 $(sysconf_DATA) )/d; / ( if ! test -e $(ZM_RUNDIR); then mkdir -p $(ZM_RUNDIR); fi; if test "$(ZM_RUNDIR)" != "\/var\/run"; then chown $(webuser):$(webgroup) $(ZM_RUNDIR); chmod u+w $(ZM_RUNDIR); fi )/d; / ( if ! test -e $(ZM_TMPDIR); then mkdir -m 700 -p $(ZM_TMPDIR); fi; if test "$(ZM_TMPDIR)" != "\/tmp"; then chown $(webuser):$(webgroup) $(ZM_TMPDIR); chmod u+w $(ZM_TMPDIR); fi )/d; - / ( if ! test -e $(ZM_LOGDIR); then mkdir -p $(ZM_LOGDIR); fi; if test "$(ZM_LOGDIR)" != "\/var\/log"; then chown $(webuser):$(webgroup) $(ZM_LOGDIR); chmod u+w $(ZM_LOGDIR); fi )/,+1 d' \ + / ( if ! test -e $(ZM_LOGDIR); then mkdir -p $(ZM_LOGDIR); fi; if test "$(ZM_LOGDIR)" != "\/var\/log"; then chown $(webuser):$(webgroup) $(ZM_LOGDIR); chmod u+w $(ZM_LOGDIR); fi )/,+1 d'\ Makefile.{am,in} - ./configure --prefix=/usr \ - --build \ - --enable-crashtrace=no \ - --enable-debug=no \ - --enable-mmap=yes \ - --sysconfdir=/etc \ - --with-cgidir=/usr/lib/$pkgname/cgi-bin \ - --with-ffmpeg=/usr \ - --with-libarch=lib \ - --with-mysql=/usr \ - --with-webdir=/usr/share/$pkgname/www \ - --with-webgroup=http \ - --with-webhost=localhost \ + ./configure --prefix=/usr\ + --enable-crashtrace=no\ + --enable-debug=no\ + --enable-mmap=yes\ + --sysconfdir=/etc\ + --with-cgidir=/srv/http/cgi-bin\ + --with-extralibs='-L/usr/lib -L/usr/lib/mysql'\ + --with-ffmpeg=/usr\ + --with-libarch=lib\ + --with-mysql=/usr\ + --with-webdir=/srv/http/$pkgname\ + --with-webgroup=http\ + --with-webhost=localhost\ --with-webuser=http make V=0 @@ -119,21 +179,22 @@ package() { make DESTDIR=$pkgdir install - mkdir -p $pkgdir/{etc/{httpd/conf/extra,rc.d},usr/{lib/{systemd/system,$pkgname/cgi-bin},share/{license/$pkgname,$pkgname/{db,www}}},var/{cache/$pkgname,log/zm}} + mkdir -p $pkgdir/{etc/{httpd/conf/extra,rc.d},srv/http/{cgi-bin,$pkgname},usr/{lib/systemd/system,share/{license/$pkgname,$pkgname/db}},var/{cache/$pkgname,log/$pkgname}} - chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgname,log/zm}} + chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgname,log/$pkgname}} + chmod 0700 $pkgdir/etc/zm.conf for i in events images temp; do - mv $pkgdir/usr/share/$pkgname/www/$i $pkgdir/var/cache/$pkgname/$i - ln -s /var/cache/$pkgname/$i $pkgdir/usr/share/$pkgname/www/$i + mv $pkgdir/srv/http/$pkgname/$i $pkgdir/var/cache/$pkgname/$i + ln -s /var/cache/$pkgname/$i $pkgdir/srv/http/$pkgname/$i done - ln -s /usr/lib/$pkgname/cgi-bin $pkgdir/usr/share/$pkgname/www - ln -s /usr/share/cambozola/cambozola.jar $pkgdir/usr/share/$pkgname/www + ln -s /srv/http/cgi-bin $pkgdir/srv/http/$pkgname + ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgname - install -D -m 644 $srcdir/httpd-zm.conf $pkgdir/etc/httpd/conf/extra - install -D -m 644 $srcdir/zm.rc.d $pkgdir/etc/rc.d/zm - install -D -m 644 $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system - install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgname - install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgname/db + install -D -m 644 $srcdir/httpd-$pkgname.conf $pkgdir/etc/httpd/conf/extra + install -D -m 644 $srcdir/$pkgname $pkgdir/etc/rc.d + install -D -m 644 $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system + install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgname + install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgname/db } diff --git a/pcr/zoneminder/httpd-zm.conf b/pcr/zoneminder/httpd-zm.conf index 8c6356aec..aeb089bc1 100644 --- a/pcr/zoneminder/httpd-zm.conf +++ b/pcr/zoneminder/httpd-zm.conf @@ -1,8 +1,8 @@ # /etc/httpd/conf/extra/httpd-zm.conf # Config for zoneminder web app -Alias /zm "/usr/share/zoneminder/www" -<Directory "/usr/share/zoneminder/www"> +Alias /zm "/srv/http/zoneminder" +<Directory "/srv/http/zoneminder"> Options -Indexes MultiViews FollowSymLinks AllowOverride None Order allow,deny @@ -11,8 +11,8 @@ Alias /zm "/usr/share/zoneminder/www" php_value short_open_tag On </Directory> -ScriptAlias /zm/cgi-bin "/usr/lib/zoneminder/cgi-bin" -<Directory "/usr/lib/zoneminder/cgi-bin"> +ScriptAlias /cgi-bin "/srv/http/cgi-bin" +<Directory "/srv/http/cgi-bin"> AllowOverride None Options ExecCGI FollowSymLinks Order allow,deny diff --git a/pcr/zoneminder/httpd-zoneminder.conf b/pcr/zoneminder/httpd-zoneminder.conf new file mode 100644 index 000000000..aeb089bc1 --- /dev/null +++ b/pcr/zoneminder/httpd-zoneminder.conf @@ -0,0 +1,20 @@ +# /etc/httpd/conf/extra/httpd-zm.conf +# Config for zoneminder web app + +Alias /zm "/srv/http/zoneminder" +<Directory "/srv/http/zoneminder"> + Options -Indexes MultiViews FollowSymLinks + AllowOverride None + Order allow,deny + Allow from all + # The code unfortunately uses short tags in many places + php_value short_open_tag On +</Directory> + +ScriptAlias /cgi-bin "/srv/http/cgi-bin" +<Directory "/srv/http/cgi-bin"> + AllowOverride None + Options ExecCGI FollowSymLinks + Order allow,deny + Allow from all +</Directory> diff --git a/pcr/zoneminder/zoneminder b/pcr/zoneminder/zoneminder new file mode 100644 index 000000000..c4cbf4d3f --- /dev/null +++ b/pcr/zoneminder/zoneminder @@ -0,0 +1,63 @@ +#!/bin/bash + +daemon_name=zm + +. /etc/rc.conf +. /etc/rc.d/functions + +case "$1" in + start) + stat_busy "Starting Zoneminder" + /usr/bin/zmfix -a + if /usr/bin/zmpkg.pl start >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping Zoneminder" + if /usr/bin/zmpkg.pl stop >/dev/null ; then + rm_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + reload) + stat_busy "Reloading Zoneminder" + if /usr/bin/zmpkg.pl graceful >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + restart) + stat_busy "Restarting Zoneminder" + if /usr/bin/zmpkg.pl restart >/dev/null ; then + add_daemon $daemon_name + stat_done + else + stat_fail + exit 1 + fi + ;; + + status) + stat_busy "Checking Zoneminder status"; + ck_status $daemon_name + ;; + + *) + echo "usage: $0 {start|stop|reload|restart|status}" +esac + +exit 0 diff --git a/pcr/zoneminder/zoneminder.install b/pcr/zoneminder/zoneminder.install index 922aaad9b..899e2a5d1 100644 --- a/pcr/zoneminder/zoneminder.install +++ b/pcr/zoneminder/zoneminder.install @@ -1,14 +1,14 @@ pre_install() { set -e abort=false - if [ -L /usr/share/zoneminder/www/events ]; then - l=$(readlink /usr/share/zoneminder/www/events) + if [ -L /srv/http/zoneminder/events ]; then + l=$(readlink /srv/http/zoneminder/events) if [ $l != /var/cache/zoneminder/events ]; then abort=true fi fi - if [ -L /usr/share/zoneminder/www/images ]; then - l=$(readlink /usr/share/zoneminder/www/images ) + if [ -L /srv/http/zoneminder/images ]; then + l=$(readlink /srv/http/zoneminder/images) if [ $l != /var/cache/zoneminder/images ]; then abort=true fi @@ -16,7 +16,7 @@ pre_install() { if [ $abort = true ]; then cat >&2 << EOF Aborting installation of zoneminder due to non-default symlinks in -/usr/share/zoneminder/www for the images and/or events directory, which could +/srv/http/zoneminder for the images and/or events directory, which could result in loss of data. Please move your data in each of these directories to /var/cache/zoneminder before installing zoneminder from the package. EOF @@ -26,18 +26,73 @@ EOF } post_install() { - mkdir /usr/share/zoneminder/www/backup - mkdir /usr/share/zoneminder/www/socks + if [[ -d /var/log/zoneminder ]]; then + chmod 0755 /var/log/zoneminder + chown http.http /var/log/zoneminder + else + mkdir -m 0755 /var/log/zoneminder + chown http.http /var/log/zoneminder + fi + if [[ -d /tmp/zoneminder ]]; then + chmod 0700 /tmp/zoneminder + chown http.http /tmp/zoneminder + else + mkdir -m 0700 /tmp/zoneminder + chown http.http /tmp/zoneminder + fi + sed -i -e ' + /^;extension=mysql.so/ s/^;//; + /^#extension=mysql.so/ s/^#//; + /^;extension=mysqli.so/ s/^;//; + /^#extension=mysqli.so/ s/^#//; + /^;extension=gd.so/ s/^;//; + /^#extension=gd.so/ s/^#//; + /^;extension=gettext.so/ s/^;//; + /^#extension=gettext.so/ s/^#//; + /^;extension=mcrypt.so/ s/^;//; + /^#extension=mcrypt.so/ s/^#//; + /^;extension=session.so/ s/^;//; + /^#extension=session.so/ s/^#//; + /^;extension=sockets.so/ s/^;//; + /^#extension=sockets.so/ s/^#//; + /^;extension=openssl.so/ s/^;//; + /^#extension=openssl.so/ s/^#//; + /^;extension=ftp.so/ s/^;//; + /^#extension=ftp.so/ s/^#//; + /^;extension=zip.so/ s/^;//; + /^#extension=zip.so/ s/^#//; + /^;open_basedir/ s/^;//; + /^#open_basedir/ s/^#//; + /^open_basedir/ s/:\/etc//; + /^open_basedir/ s/:\/etc\///; + /^open_basedir/ s/$/:\/etc/; + /^open_basedir/ s/:\/srv\/http\/zoneminder//; + /^open_basedir/ s/:\/srv\/http\/zoneminder\///; + /^open_basedir/ s/$/:\/srv\/http\/zoneminder/; + ' /etc/php/php.ini || read + sed -i -e ' + /^LoadModule php5_module modules\/libphp5.so/d; + /^LoadModule rewrite_module modules\/mod_rewrite.so/ s/$/\nLoadModule php5_module modules\/libphp5.so/; + /^# PHP 5/d; + /^# ZoneMinder/d; + /^Include \/etc\/httpd\/conf\/extra\/php5_module.conf/d; + /^Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; + /^Include conf\/extra\/httpd-default.conf/ s/$/\n\n# PHP 5\n\Include \/etc\/httpd\/conf\/extra\/php5_module.conf\n\n# ZoneMinder\nInclude \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/; + ' /etc/httpd/conf/httpd.conf || read cat << EOF -Note: +Note for mysql: ==> To run Zoneminder, you must install the database running mysql service (as root): ==> "rc.d start mysqld" (in initscripts) or "systemctl start mysqld.service" (in systemd) -==> and add Zoneminder database typing: +==> and add Zoneminder database typing (with passsword): ==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f reload" ==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf -p" ==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" +==> (or without passsword): +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f reload" +==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf" +==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" -Note: +Note for php: ==> You must uncomment that line in /etc/php/php.ini: ==> "extension=mysql.so" ==> check and make sure these are uncommented: @@ -47,39 +102,59 @@ Note: ==> "extension=mysqli.so" ==> "extension=session.so" ==> "extension=sockets.so" +==> "extension=openssl.so" +==> "extension=ftp.so" +==> "extension=zip.so" +==> check and add to open_basedir "/etc" and +==> "/srv/http/zoneminder" like so +==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/srv/http/zoneminder" +==> and set your timezone in php.ini: +==> "date.timezone = <your_country>/<your_city>" -==> You must edit /etc/php/php.ini and add to open_basedir "/etc" and -==> "/usr/share/zoneminder" like so -==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/usr/share/zoneminder/www" -==> Otherwise ZoneMinder will be unable to read /etc/zm.conf -==> or display its own web directory - -Note: +Note for apache: ==> You must edit /etc/httpd/conf/httpd.conf and add the line: ==> "LoadModule php5_module modules/libphp5.so" ==> and: ==> "Include /etc/httpd/conf/extra/php5_module.conf" -==> "Include /etc/httpd/conf/extra/httpd-zm.conf" +==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf" EOF } post_upgrade() { + post_install /usr/bin/zmupdate.pl -f >/dev/null } post_remove() { + if [[ -d /tmp/zoneminder ]]; then + rm -vr /tmp/zoneminder + fi + sed -i -e ' + /^open_basedir/ s/:\/srv\/http\/zoneminder//; + /^open_basedir/ s/:\/srv\/http\/zoneminder\///; + ' /etc/php/php.ini || read + sed -i -e ' + /^# ZoneMinder/d; + /Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; + ' /etc/httpd/conf/httpd.conf || read cat << EOF Note: -==> To clean Zoneminder mysql database, run as root: +==> To clean Zoneminder mysql database, run as root (with password): ==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" ==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf -p mysql" ==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f drop zm" +==> (or without password): +==> "echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" +==> "echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" +==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -f drop zm" ==> Disable http with php if it isn't needed with others servers, ==> comment or remove that lines in /etc/httpd/conf/httpd.conf: ==> "LoadModule php5_module modules/libphp5.so" ==> "Include /etc/httpd/conf/extra/php5_module.conf" -==> "Include /etc/httpd/conf/extra/httpd-zm.conf" + +==> Remove line in /etc/httpd/conf/httpd.conf: +==> "Include /etc/httpd/conf/extra/httpd-zoneminder.conf" ==> Disable php with mysql if it isn't needed with others servers, ==> comment that lines in /etc/php/php.ini: @@ -90,8 +165,13 @@ Note: ==> "extension=mysqli.so" ==> "extension=session.so" ==> "extension=sockets.so" +==> "date.timezone = <my_country>/<my_city>" + +==> Edit /etc/php/php.ini and remove "/etc" and "/srv/http/zoneminder" +==> in the "open_basedir". + +==> Remove log files and "zonemider" directory in "/var/log/zoneminder". -==> edit /etc/php/php.ini and remove "/etc" and "/usr/share/zoneminder/www" -==> in the open_basedir. +==> Backup and remove "events", "images" and "temp" dirs in "/var/cache/zoneminder". EOF } diff --git a/pcr/zoneminder/zoneminder.service b/pcr/zoneminder/zoneminder.service index ba41e8926..05cae6f91 100644 --- a/pcr/zoneminder/zoneminder.service +++ b/pcr/zoneminder/zoneminder.service @@ -5,7 +5,6 @@ Required=mysqld.service [Service] Type=forking -PIDFile=/run/zm.pid ExecStart=/usr/bin/zmpkg.pl start ExecRestart=/usr/bin/zmpkg.pl restart ExecStop=/usr/bin/zmpkg.pl stop |