diff options
Diffstat (limited to 'pcr')
-rw-r--r-- | pcr/zoneminder-libav/PKGBUILD | 195 | ||||
-rw-r--r-- | pcr/zoneminder-libav/httpd-zoneminder.conf | 20 | ||||
-rw-r--r-- | pcr/zoneminder-libav/zoneminder | 63 | ||||
-rw-r--r-- | pcr/zoneminder-libav/zoneminder.install | 185 | ||||
-rw-r--r-- | pcr/zoneminder-libav/zoneminder.service | 13 | ||||
-rw-r--r-- | pcr/zoneminder-lts/PKGBUILD | 210 | ||||
-rw-r--r-- | pcr/zoneminder-lts/httpd-zoneminder.conf | 20 | ||||
-rw-r--r-- | pcr/zoneminder-lts/patch-ffmpeg-0.11.patch | 60 | ||||
-rw-r--r-- | pcr/zoneminder-lts/zoneminder | 63 | ||||
-rw-r--r-- | pcr/zoneminder-lts/zoneminder.install | 185 | ||||
-rw-r--r-- | pcr/zoneminder-lts/zoneminder.service | 13 | ||||
-rw-r--r-- | pcr/zoneminder/PKGBUILD | 77 | ||||
-rw-r--r-- | pcr/zoneminder/patch-ffmpeg-0.11.patch | 60 |
13 files changed, 35 insertions, 1129 deletions
diff --git a/pcr/zoneminder-libav/PKGBUILD b/pcr/zoneminder-libav/PKGBUILD deleted file mode 100644 index fc8787a81..000000000 --- a/pcr/zoneminder-libav/PKGBUILD +++ /dev/null @@ -1,195 +0,0 @@ -# Maintainer: Vojtech Aschenbrenner <v@asch.cz> -# Contributor: Jason Gardner <buhrietoe@gmail.com> -# Contributor: Ross melin <rdmelin@gmail.com> -# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -# Contributor (Parabola): André Silva <emulatorman@lavabit.com> - -# based of debian squeeze package - -pkgbase=zoneminder -pkgname=zoneminder-libav -pkgver=1.25.0 -pkgrel=2 -pkgdesc='Capture, analyse, record and monitor video security cameras' -arch=( - i686 - x86_64 - mips64el -) -backup=( - etc/zm.conf -) -url="http://www.$pkgbase.com" -license=( - GPL -) -depends=( - apache - cambozola - libav-static - gnutls - mariadb - 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 -) -provides=( - $pkgbase=$pkgver -) -conflicts=( - $pkgbase -) -install=$pkgbase.install -source=( - http://www.$pkgbase.com/downloads/ZoneMinder-$pkgver.tar.gz - httpd-$pkgbase.conf - $pkgbase - $pkgbase.service -) -sha512sums=( - 3e18993b0539729491052c97d8c94227ccc089eb40277c2f07682f30049033303c7cfe9734fdac6d33ae67df29c76eb72bf7fbb5dae8227e8831fa603b61c375 - 4ce0d8eba9d006d258f5b8a83920fc17f1f602b96518d37b7a47cd9b6eb84ef2587641a6ba839a469c3f0e33b46475866187279ae3f8be0d4054b074ee5d6b08 - ab4e1d5ddaf4d9cd53d6ca59d7965902afd6a2dc830fbbafa270736c52c2b3563075fee860bb0276466f96e9dbfb71b259ac45a4ae2e4ead8eaec154a0159eb0 - cfb0eb87a989236c72741a496ddc6a73aa2696e5beaaca4836d3c231ddb24c7ef5e9f65e7afa49674f2115cbfa4a07c75486e1947ce294c816ddbb875f3b99cf -) - -build() { - cd $srcdir/ZoneMinder-$pkgver - - # ZM_RUNDIR need change to run dir - export CPPFLAGS=-D__STDC_CONSTANT_MACROS\ - ZM_LOGDIR=/var/log/$pkgbase\ - ZM_RUNDIR=/tmp/$pkgbase\ - ZM_SSL_LIB=gnutls\ - ZM_TMPDIR=/tmp/$pkgbase - - # Patch for GCC 4.7.x - 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 || 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 || 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 v4l2 convert 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\/v4l2convert.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 || 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 || read - - # Patch for drop custom perl install paths - sed -i -e '/# Slight hack for non-standard perl install paths/,+10 d; - s/^AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")/AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")\n\nEXTRA_PERL_LIB="# Include from system perl paths only"\nPERL_MM_PARMS="INSTALLDIRS=vendor"/'\ - configure.ac - - # Patch for support ffmpeg with <libavutil/mathematics.h> and C library - sed -i -e 's/^extern "C" {/extern "C" {\n#ifdef _STDINT_H\n#undef _STDINT_H\n#endif\n#include <stdint.h>/ - s/^#include <libavutil\/avutil.h>/#include <libavutil\/avutil.h>\n#include <libavutil\/mathematics.h>/'\ - src/zm_ffmpeg.h - sed -i -e 's/^AM_CONFIG_HEADER(config.h)/AM_CONFIG_HEADER(config.h)\n\nAC_SUBST([AM_CXXFLAGS], [-D__STDC_CONSTANT_MACROS])/; - s/^AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)/AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)\nAC_LANG_PUSH([C])/; - s/^AC_CHECK_HEADERS(libswscale\/swscale.h,,,)/AC_CHECK_HEADERS(libswscale\/swscale.h,,,)\nAC_LANG_POP([C])/'\ - configure.ac - - # Patch for wrong install run, tmp and log dir - sed -i -e '/ install-data-hook/d;/install-data-hook:/d;/# Yes, you are correct. This is a HACK!/d; - / ( 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'\ - Makefile.{am,in} - - ./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=/opt/libav-static\ - --with-libarch=lib\ - --with-mysql=/usr\ - --with-webdir=/srv/http/$pkgbase\ - --with-webgroup=http\ - --with-webhost=localhost\ - --with-webuser=http - - make V=0 -} - -package() { - cd $srcdir/ZoneMinder-$pkgver - - make DESTDIR=$pkgdir install - - mkdir -p $pkgdir/{etc/{httpd/conf/extra,rc.d},srv/http/{cgi-bin,$pkgbase},usr/{lib/systemd/system,share/{license/$pkgbase,$pkgbase/db}},var/{cache/$pkgbase,log/$pkgbase}} - - chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgbase,log/$pkgbase}} - chmod 0700 $pkgdir/etc/zm.conf - - for i in events images temp; do - mv $pkgdir/srv/http/$pkgbase/$i $pkgdir/var/cache/$pkgbase/$i - ln -s /var/cache/$pkgbase/$i $pkgdir/srv/http/$pkgbase/$i - chown -h http.http $pkgdir/srv/http/$pkgbase/$i - done - - ln -s /srv/http/cgi-bin $pkgdir/srv/http/$pkgbase - chown -h http.http $pkgdir/srv/http/{cgi-bin,$pkgbase,$pkgbase/cgi-bin} - - ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgbase - - install -D -m 644 $srcdir/httpd-$pkgbase.conf $pkgdir/etc/httpd/conf/extra - install -D -m 644 $srcdir/$pkgbase $pkgdir/etc/rc.d - install -D -m 644 $srcdir/$pkgbase.service $pkgdir/usr/lib/systemd/system - install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgbase - install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgbase/db -} diff --git a/pcr/zoneminder-libav/httpd-zoneminder.conf b/pcr/zoneminder-libav/httpd-zoneminder.conf deleted file mode 100644 index aeb089bc1..000000000 --- a/pcr/zoneminder-libav/httpd-zoneminder.conf +++ /dev/null @@ -1,20 +0,0 @@ -# /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-libav/zoneminder b/pcr/zoneminder-libav/zoneminder deleted file mode 100644 index c4cbf4d3f..000000000 --- a/pcr/zoneminder-libav/zoneminder +++ /dev/null @@ -1,63 +0,0 @@ -#!/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-libav/zoneminder.install b/pcr/zoneminder-libav/zoneminder.install deleted file mode 100644 index ecacf6437..000000000 --- a/pcr/zoneminder-libav/zoneminder.install +++ /dev/null @@ -1,185 +0,0 @@ -pre_install() { - set -e - abort=false - 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 /srv/http/zoneminder/images ]; then - l=$(readlink /srv/http/zoneminder/images) - if [ $l != /var/cache/zoneminder/images ]; then - abort=true - fi - fi - if [ $abort = true ]; then - cat >&2 << EOF -Aborting installation of zoneminder due to non-default symlinks in -/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 - exit 1 - fi - exit 0 -} - -post_install() { - 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/; - /^open_basedir/ s/:\/var\/cache\/zoneminder//; - /^open_basedir/ s/:\/var\/cache\/zoneminder\///; - /^open_basedir/ s/$/:\/var\/cache\/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 - gpasswd -a http video - cat << EOF -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 (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 for php: -==> You must uncomment that line in /etc/php/php.ini: -==> "extension=mysql.so" -==> check and make sure these are uncommented: -==> "extension=gd.so" -==> "extension=gettext.so" -==> "extension=mcrypt.so" -==> "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", -==> "/srv/http/zoneminder" and "/var/cache/zoneminder" like so -==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/srv/http/zoneminder:/var/cache/zoneminder" -==> and set your timezone in php.ini: -==> "date.timezone = <your_zone>/<your_city>" - -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-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\///; - /^open_basedir/ s/:\/var\/cache\/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 (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" - -==> 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: -==> "extension=mysql.so" -==> "extension=gd.so" -==> "extension=gettext.so" -==> "extension=mcrypt.so" -==> "extension=mysqli.so" -==> "extension=session.so" -==> "extension=sockets.so" -==> "date.timezone = <my_zone>/<my_city>" - -==> Drop http user on video group if it isn't needed with others servers: -==> gpasswd -d http video - -==> Edit /etc/php/php.ini and remove "/etc", "/srv/http/zoneminder" and "/var/cache/zoneminder" -==> in the "open_basedir". - -==> Remove log files and "zonemider" directory in "/var/log/zoneminder". - -==> Backup and remove "events", "images" and "temp" dirs in "/var/cache/zoneminder". -EOF -} diff --git a/pcr/zoneminder-libav/zoneminder.service b/pcr/zoneminder-libav/zoneminder.service deleted file mode 100644 index 05cae6f91..000000000 --- a/pcr/zoneminder-libav/zoneminder.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=Capture, analyse, record and monitor video security cameras -After=network.target remote-fs.target -Required=mysqld.service - -[Service] -Type=forking -ExecStart=/usr/bin/zmpkg.pl start -ExecRestart=/usr/bin/zmpkg.pl restart -ExecStop=/usr/bin/zmpkg.pl stop - -[Install] -WantedBy=multi-user.target diff --git a/pcr/zoneminder-lts/PKGBUILD b/pcr/zoneminder-lts/PKGBUILD deleted file mode 100644 index 77784357a..000000000 --- a/pcr/zoneminder-lts/PKGBUILD +++ /dev/null @@ -1,210 +0,0 @@ -# Maintainer: Vojtech Aschenbrenner <v@asch.cz> -# Contributor: Jason Gardner <buhrietoe@gmail.com> -# Contributor: Ross melin <rdmelin@gmail.com> -# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> -# Contributor (Parabola): André Silva <emulatorman@lavabit.com> - -# based of debian squeeze package - -pkgbase=zoneminder -pkgname=zoneminder-lts -pkgver=1.24.4 -pkgrel=2 -pkgdesc='Capture, analyse, record and monitor video security cameras' -arch=( - i686 - x86_64 - mips64el -) -backup=( - etc/zm.conf -) -url="http://www.$pkgbase.com" -license=( - GPL -) -depends=( - apache - cambozola - ffmpeg-static - gnutls - mariadb - 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 -) -provides=( - $pkgbase -) -conflicts=( - $pkgbase -) -install=$pkgbase.install -source=( - http://www.$pkgbase.com/downloads/ZoneMinder-$pkgver.tar.gz - httpd-$pkgbase.conf - $pkgbase - $pkgbase.service - patch-ffmpeg-0.11.patch -) -sha512sums=( - 8bf01f029a8fbc140bfb73f3909057ee09c2439397773953da143218fe13d137b6fae61e3f46e3cbf6824ffe39329bba59eec767e57278e2dfbfbc630772ef5d - 4ce0d8eba9d006d258f5b8a83920fc17f1f602b96518d37b7a47cd9b6eb84ef2587641a6ba839a469c3f0e33b46475866187279ae3f8be0d4054b074ee5d6b08 - ab4e1d5ddaf4d9cd53d6ca59d7965902afd6a2dc830fbbafa270736c52c2b3563075fee860bb0276466f96e9dbfb71b259ac45a4ae2e4ead8eaec154a0159eb0 - cfb0eb87a989236c72741a496ddc6a73aa2696e5beaaca4836d3c231ddb24c7ef5e9f65e7afa49674f2115cbfa4a07c75486e1947ce294c816ddbb875f3b99cf - 382799ad6add1632d934544230520f942dae37913b58cfa19e0cb2b11e7002267b1fdb9aa535f2217bcccf0c85c4d754f316dc3980a3ca267e5b3f5500536024 -) - -build() { - cd $srcdir/ZoneMinder-$pkgver - - # ZM_RUNDIR need change to run dir - export CPPFLAGS=-D__STDC_CONSTANT_MACROS\ - ZM_LOGDIR=/var/log/$pkgbase\ - ZM_RUNDIR=/tmp/$pkgbase\ - ZM_SSL_LIB=gnutls\ - ZM_TMPDIR=/tmp/$pkgbase - - # Patch for GCC 4.7.x - #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 || 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 || 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 v4l2 convert 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\/v4l2convert.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 || 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 || read - - # Patch for drop custom perl install paths - sed -i -e '/# Slight hack for non-standard perl install paths/,+10 d; - s/^AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")/AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")\n\nEXTRA_PERL_LIB="# Include from system perl paths only"\nPERL_MM_PARMS="INSTALLDIRS=vendor"/'\ - configure.ac - - # Patch for support new ffmpeg - patch -p1 < $srcdir/patch-ffmpeg-0.11.patch -# sed -i -e 's/if ( av_open_input_file( \&mFormatContext, mPath.c_str(), NULL, 0, NULL ) !=0 )/if ( avformat_open_input( \&mFormatContext, mPath.c_str(), NULL, NULL ) !=0 )/; -# s/if ( avcodec_open( mCodecContext, mCodec ) < 0 )/if ( avcodec_open2( mCodecContext, mCodec, NULL ) < 0 )/'\ -# src/zm_ffmpeg_camera.cpp -# sed -i -e 's/if ( av_set_parameters(ofc, NULL) < 0 )/\/\*\n \* Removed in last ffmpeg\n \* if ( av_set_parameters(ofc, NULL) < 0 )/; -# /Panic( "Invalid output format parameters" );/,+1 s/}/}\*/; -# /if ( avio_open(&ofc->pb, filename, URL_WRONLY) < 0 )/ s/URL_WRONLY/AVIO_FLAG_WRITE/; -# s/av_write_header(ofc);/avformat_write_header(ofc, NULL);/'\ -# src/zm_mpeg.cpp - sed -i -e 's/avcodec_init/avcodec_open/'\ - configure{,.ac} - - # Patch for support ffmpeg with <libavutil/mathematics.h> and C library - sed -i -e 's/^extern "C" {/extern "C" {\n#ifdef _STDINT_H\n#undef _STDINT_H\n#endif\n#include <stdint.h>/ - s/^#include <libavutil\/avutil.h>/#include <libavutil\/avutil.h>\n#include <libavutil\/mathematics.h>/'\ - src/zm_ffmpeg.h - sed -i -e 's/^AM_CONFIG_HEADER(config.h)/AM_CONFIG_HEADER(config.h)\n\nAC_SUBST([AM_CXXFLAGS], [-D__STDC_CONSTANT_MACROS])/; - s/^AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)/AC_CHECK_HEADERS(mysql\/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)\nAC_LANG_PUSH([C])/; - s/^AC_CHECK_HEADERS(libswscale\/swscale.h,,,)/AC_CHECK_HEADERS(libswscale\/swscale.h,,,)\nAC_LANG_POP([C])/'\ - configure.ac - - # Patch for wrong install run, tmp and log dir - sed -i -e '/ install-data-hook/d;/install-data-hook:/d;/# Yes, you are correct. This is a HACK!/d; - / ( 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'\ - Makefile.{am,in} - - ./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/$pkgbase\ - --with-webgroup=http\ - --with-webhost=localhost\ - --with-webuser=http - - make V=0 -} - -package() { - cd $srcdir/ZoneMinder-$pkgver - - make DESTDIR=$pkgdir install - - mkdir -p $pkgdir/{etc/{httpd/conf/extra,rc.d},srv/http/{cgi-bin,$pkgbase},usr/{lib/systemd/system,share/{license/$pkgbase,$pkgbase/db}},var/{cache/$pkgbase,log/$pkgbase}} - - chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgbase,log/$pkgbase}} - chmod 0700 $pkgdir/etc/zm.conf - - for i in events images temp; do - mv $pkgdir/srv/http/$pkgbase/$i $pkgdir/var/cache/$pkgbase/$i - ln -s /var/cache/$pkgbase/$i $pkgdir/srv/http/$pkgbase/$i - chown -h http.http $pkgdir/srv/http/$pkgbase/$i - done - - ln -s /srv/http/cgi-bin $pkgdir/srv/http/$pkgbase - chown -h http.http $pkgdir/srv/http/{cgi-bin,$pkgbase,$pkgbase/cgi-bin} - - ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgbase - - install -D -m 644 $srcdir/httpd-$pkgbase.conf $pkgdir/etc/httpd/conf/extra - install -D -m 644 $srcdir/$pkgbase $pkgdir/etc/rc.d - install -D -m 644 $srcdir/$pkgbase.service $pkgdir/usr/lib/systemd/system - install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgbase - install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgbase/db -} diff --git a/pcr/zoneminder-lts/httpd-zoneminder.conf b/pcr/zoneminder-lts/httpd-zoneminder.conf deleted file mode 100644 index aeb089bc1..000000000 --- a/pcr/zoneminder-lts/httpd-zoneminder.conf +++ /dev/null @@ -1,20 +0,0 @@ -# /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-lts/patch-ffmpeg-0.11.patch b/pcr/zoneminder-lts/patch-ffmpeg-0.11.patch deleted file mode 100644 index ac56e4c69..000000000 --- a/pcr/zoneminder-lts/patch-ffmpeg-0.11.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff --git a/src/zm_ffmpeg_camera.cpp b/src/zm_ffmpeg_camera.cpp
-index 42927f6..61df606 100644
---- a/src/zm_ffmpeg_camera.cpp
-+++ b/src/zm_ffmpeg_camera.cpp
-@@ -91,7 +91,7 @@ int FfmpegCamera::PrimeCapture()
- Info( "Priming capture from %s", mPath.c_str() );
-
- // Open the input, not necessarily a file
-- if ( av_open_input_file( &mFormatContext, mPath.c_str(), NULL, 0, NULL ) !=0 )
-+ if ( avformat_open_input( &mFormatContext, mPath.c_str(), NULL, NULL ) !=0 )
- Fatal( "Unable to open input %s due to: %s", mPath.c_str(), strerror(errno) );
-
- // Locate stream info from input
-@@ -122,7 +122,7 @@ int FfmpegCamera::PrimeCapture()
- Fatal( "Can't find codec for video stream from %s", mPath.c_str() );
-
- // Open the codec
-- if ( avcodec_open( mCodecContext, mCodec ) < 0 )
-+ if ( avcodec_open2( mCodecContext, mCodec, NULL ) < 0 )
- Fatal( "Unable to open codec for video stream from %s", mPath.c_str() );
-
- // Allocate space for the native video frame
-
-diff --git a/src/zm_mpeg.cpp b/src/zm_mpeg.cpp
-index f5de2a4..d614346 100644
---- a/src/zm_mpeg.cpp
-+++ b/src/zm_mpeg.cpp
-@@ -130,10 +130,12 @@ void VideoStream::SetParameters()
- {
- /* set the output parameters (must be done even if no
- parameters). */
-- if ( av_set_parameters(ofc, NULL) < 0 )
-+ /*
-+ * Removed in last ffmpeg
-+ * if ( av_set_parameters(ofc, NULL) < 0 )
- {
- Panic( "Invalid output format parameters" );
-- }
-+ }*/
- //dump_format(ofc, 0, filename, 1);
- }
-
-@@ -222,7 +224,7 @@ void VideoStream::OpenStream()
- if ( !(of->flags & AVFMT_NOFILE) )
- {
- #if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51,2,1)
-- if ( avio_open(&ofc->pb, filename, URL_WRONLY) < 0 )
-+ if ( avio_open(&ofc->pb, filename, AVIO_FLAG_WRITE) < 0 )
- #else
- if ( url_fopen(&ofc->pb, filename, URL_WRONLY) < 0 )
- #endif
-@@ -241,7 +243,7 @@ void VideoStream::OpenStream()
- }
-
- /* write the stream header, if any */
-- av_write_header(ofc);
-+ avformat_write_header(ofc, NULL);
- }
-
- VideoStream::VideoStream( const char *filename, const char *format, int bitrate, double frame_rate, int colours, int subpixelorder, int width, int height )
diff --git a/pcr/zoneminder-lts/zoneminder b/pcr/zoneminder-lts/zoneminder deleted file mode 100644 index c4cbf4d3f..000000000 --- a/pcr/zoneminder-lts/zoneminder +++ /dev/null @@ -1,63 +0,0 @@ -#!/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-lts/zoneminder.install b/pcr/zoneminder-lts/zoneminder.install deleted file mode 100644 index ecacf6437..000000000 --- a/pcr/zoneminder-lts/zoneminder.install +++ /dev/null @@ -1,185 +0,0 @@ -pre_install() { - set -e - abort=false - 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 /srv/http/zoneminder/images ]; then - l=$(readlink /srv/http/zoneminder/images) - if [ $l != /var/cache/zoneminder/images ]; then - abort=true - fi - fi - if [ $abort = true ]; then - cat >&2 << EOF -Aborting installation of zoneminder due to non-default symlinks in -/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 - exit 1 - fi - exit 0 -} - -post_install() { - 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/; - /^open_basedir/ s/:\/var\/cache\/zoneminder//; - /^open_basedir/ s/:\/var\/cache\/zoneminder\///; - /^open_basedir/ s/$/:\/var\/cache\/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 - gpasswd -a http video - cat << EOF -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 (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 for php: -==> You must uncomment that line in /etc/php/php.ini: -==> "extension=mysql.so" -==> check and make sure these are uncommented: -==> "extension=gd.so" -==> "extension=gettext.so" -==> "extension=mcrypt.so" -==> "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", -==> "/srv/http/zoneminder" and "/var/cache/zoneminder" like so -==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/srv/http/zoneminder:/var/cache/zoneminder" -==> and set your timezone in php.ini: -==> "date.timezone = <your_zone>/<your_city>" - -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-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\///; - /^open_basedir/ s/:\/var\/cache\/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 (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" - -==> 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: -==> "extension=mysql.so" -==> "extension=gd.so" -==> "extension=gettext.so" -==> "extension=mcrypt.so" -==> "extension=mysqli.so" -==> "extension=session.so" -==> "extension=sockets.so" -==> "date.timezone = <my_zone>/<my_city>" - -==> Drop http user on video group if it isn't needed with others servers: -==> gpasswd -d http video - -==> Edit /etc/php/php.ini and remove "/etc", "/srv/http/zoneminder" and "/var/cache/zoneminder" -==> in the "open_basedir". - -==> Remove log files and "zonemider" directory in "/var/log/zoneminder". - -==> Backup and remove "events", "images" and "temp" dirs in "/var/cache/zoneminder". -EOF -} diff --git a/pcr/zoneminder-lts/zoneminder.service b/pcr/zoneminder-lts/zoneminder.service deleted file mode 100644 index 05cae6f91..000000000 --- a/pcr/zoneminder-lts/zoneminder.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=Capture, analyse, record and monitor video security cameras -After=network.target remote-fs.target -Required=mysqld.service - -[Service] -Type=forking -ExecStart=/usr/bin/zmpkg.pl start -ExecRestart=/usr/bin/zmpkg.pl restart -ExecStop=/usr/bin/zmpkg.pl stop - -[Install] -WantedBy=multi-user.target diff --git a/pcr/zoneminder/PKGBUILD b/pcr/zoneminder/PKGBUILD index 9e65ba88a..236ceca01 100644 --- a/pcr/zoneminder/PKGBUILD +++ b/pcr/zoneminder/PKGBUILD @@ -6,9 +6,10 @@ # based of debian squeeze package +pkgbase=zoneminder pkgname=zoneminder pkgver=1.25.0 -pkgrel=23 +pkgrel=24 pkgdesc='Capture, analyse, record and monitor video security cameras' arch=( i686 @@ -18,14 +19,14 @@ arch=( backup=( etc/zm.conf ) -url="http://www.$pkgname.com" +url="http://www.$pkgbase.com" license=( GPL ) depends=( apache cambozola - ffmpeg-static + libav-static gnutls mariadb perl-archive-zip @@ -52,20 +53,18 @@ makedepends=( optdepends=( netpbm ) -install=$pkgname.install +install=$pkgbase.install source=( - http://www.$pkgname.com/downloads/ZoneMinder-$pkgver.tar.gz - httpd-$pkgname.conf - $pkgname - $pkgname.service - patch-ffmpeg-0.11.patch + http://www.$pkgbase.com/downloads/ZoneMinder-$pkgver.tar.gz + httpd-$pkgbase.conf + $pkgbase + $pkgbase.service ) sha512sums=( 3e18993b0539729491052c97d8c94227ccc089eb40277c2f07682f30049033303c7cfe9734fdac6d33ae67df29c76eb72bf7fbb5dae8227e8831fa603b61c375 4ce0d8eba9d006d258f5b8a83920fc17f1f602b96518d37b7a47cd9b6eb84ef2587641a6ba839a469c3f0e33b46475866187279ae3f8be0d4054b074ee5d6b08 ab4e1d5ddaf4d9cd53d6ca59d7965902afd6a2dc830fbbafa270736c52c2b3563075fee860bb0276466f96e9dbfb71b259ac45a4ae2e4ead8eaec154a0159eb0 cfb0eb87a989236c72741a496ddc6a73aa2696e5beaaca4836d3c231ddb24c7ef5e9f65e7afa49674f2115cbfa4a07c75486e1947ce294c816ddbb875f3b99cf - 382799ad6add1632d934544230520f942dae37913b58cfa19e0cb2b11e7002267b1fdb9aa535f2217bcccf0c85c4d754f316dc3980a3ca267e5b3f5500536024 ) build() { @@ -73,10 +72,12 @@ build() { # ZM_RUNDIR need change to run dir export CPPFLAGS=-D__STDC_CONSTANT_MACROS\ - ZM_LOGDIR=/var/log/$pkgname\ - ZM_RUNDIR=/tmp/$pkgname\ + OPT_FFMPEG=yes\ + PATH_FFMPEG=/usr/bin/avconv-static\ + ZM_LOGDIR=/var/log/$pkgbase\ + ZM_RUNDIR=/tmp/$pkgbase\ ZM_SSL_LIB=gnutls\ - ZM_TMPDIR=/tmp/$pkgname + ZM_TMPDIR=/tmp/$pkgbase # Patch for GCC 4.7.x sed -i -e 's/^#include <errno.h>/#include <errno.h>\n#include <unistd.h>/'\ @@ -94,9 +95,14 @@ build() { # 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/'\ + /ZM_FFMPEG_FORMATS/,+1 s/mpg mpeg wmv asf avi\* mov swf 3gp\*\*/mpg mpeg wmv asf avi\* mov flv swf 3gp\*\* webm ogg h264/'\ scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read + # Patch for enable video export + #sed -i -e '/ZM_OPT_FFMPEG/,+1 s/@OPT_FFMPEG@/yes/; + # /ZM_PATH_FFMPEG/,+1 s/@PATH_FFMPEG@/\/usr\/bin\/avconv-static/'\ + # 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 @@ -126,19 +132,6 @@ build() { s/^AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")/AC_SUBST(ZM_CONFIG,"$SYSCONFDIR\/zm.conf")\n\nEXTRA_PERL_LIB="# Include from system perl paths only"\nPERL_MM_PARMS="INSTALLDIRS=vendor"/'\ configure.ac - # Patch for support new ffmpeg - patch -p1 < $srcdir/patch-ffmpeg-0.11.patch -# sed -i -e 's/if ( av_open_input_file( \&mFormatContext, mPath.c_str(), NULL, 0, NULL ) !=0 )/if ( avformat_open_input( \&mFormatContext, mPath.c_str(), NULL, NULL ) !=0 )/; -# s/if ( avcodec_open( mCodecContext, mCodec ) < 0 )/if ( avcodec_open2( mCodecContext, mCodec, NULL ) < 0 )/'\ -# src/zm_ffmpeg_camera.cpp -# sed -i -e 's/if ( av_set_parameters(ofc, NULL) < 0 )/\/\*\n \* Removed in last ffmpeg\n \* if ( av_set_parameters(ofc, NULL) < 0 )/; -# /Panic( "Invalid output format parameters" );/,+1 s/}/}\*/; -# /if ( avio_open(&ofc->pb, filename, URL_WRONLY) < 0 )/ s/URL_WRONLY/AVIO_FLAG_WRITE/; -# s/av_write_header(ofc);/avformat_write_header(ofc, NULL);/'\ -# src/zm_mpeg.cpp - sed -i -e 's/avcodec_init/avcodec_open/'\ - configure{,.ac} - # Patch for support ffmpeg with <libavutil/mathematics.h> and C library sed -i -e 's/^extern "C" {/extern "C" {\n#ifdef _STDINT_H\n#undef _STDINT_H\n#endif\n#include <stdint.h>/ s/^#include <libavutil\/avutil.h>/#include <libavutil\/avutil.h>\n#include <libavutil\/mathematics.h>/'\ @@ -163,10 +156,10 @@ build() { --sysconfdir=/etc\ --with-cgidir=/srv/http/cgi-bin\ --with-extralibs='-L/usr/lib -L/usr/lib/mysql'\ - --with-ffmpeg=/usr\ + --with-ffmpeg=/opt/libav-static\ --with-libarch=lib\ --with-mysql=/usr\ - --with-webdir=/srv/http/$pkgname\ + --with-webdir=/srv/http/$pkgbase\ --with-webgroup=http\ --with-webhost=localhost\ --with-webuser=http @@ -179,25 +172,25 @@ package() { make DESTDIR=$pkgdir install - 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}} + mkdir -p $pkgdir/{etc/{httpd/conf/extra,rc.d},srv/http/{cgi-bin,$pkgbase},usr/{lib/systemd/system,share/{license/$pkgbase,$pkgbase/db}},var/{cache/$pkgbase,log/$pkgbase}} - chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgname,log/$pkgname}} + chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgbase,log/$pkgbase}} chmod 0700 $pkgdir/etc/zm.conf for i in events images temp; do - mv $pkgdir/srv/http/$pkgname/$i $pkgdir/var/cache/$pkgname/$i - ln -s /var/cache/$pkgname/$i $pkgdir/srv/http/$pkgname/$i - chown -h http.http $pkgdir/srv/http/$pkgname/$i + mv $pkgdir/srv/http/$pkgbase/$i $pkgdir/var/cache/$pkgbase/$i + ln -s /var/cache/$pkgbase/$i $pkgdir/srv/http/$pkgbase/$i + chown -h http.http $pkgdir/srv/http/$pkgbase/$i done - ln -s /srv/http/cgi-bin $pkgdir/srv/http/$pkgname - chown -h http.http $pkgdir/srv/http/{cgi-bin,$pkgname,$pkgname/cgi-bin} + ln -s /srv/http/cgi-bin $pkgdir/srv/http/$pkgbase + chown -h http.http $pkgdir/srv/http/{cgi-bin,$pkgbase,$pkgbase/cgi-bin} - ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgname + ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgbase - 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 + install -D -m 644 $srcdir/httpd-$pkgbase.conf $pkgdir/etc/httpd/conf/extra + install -D -m 644 $srcdir/$pkgbase $pkgdir/etc/rc.d + install -D -m 644 $srcdir/$pkgbase.service $pkgdir/usr/lib/systemd/system + install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgbase + install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgbase/db } diff --git a/pcr/zoneminder/patch-ffmpeg-0.11.patch b/pcr/zoneminder/patch-ffmpeg-0.11.patch deleted file mode 100644 index ac56e4c69..000000000 --- a/pcr/zoneminder/patch-ffmpeg-0.11.patch +++ /dev/null @@ -1,60 +0,0 @@ -diff --git a/src/zm_ffmpeg_camera.cpp b/src/zm_ffmpeg_camera.cpp
-index 42927f6..61df606 100644
---- a/src/zm_ffmpeg_camera.cpp
-+++ b/src/zm_ffmpeg_camera.cpp
-@@ -91,7 +91,7 @@ int FfmpegCamera::PrimeCapture()
- Info( "Priming capture from %s", mPath.c_str() );
-
- // Open the input, not necessarily a file
-- if ( av_open_input_file( &mFormatContext, mPath.c_str(), NULL, 0, NULL ) !=0 )
-+ if ( avformat_open_input( &mFormatContext, mPath.c_str(), NULL, NULL ) !=0 )
- Fatal( "Unable to open input %s due to: %s", mPath.c_str(), strerror(errno) );
-
- // Locate stream info from input
-@@ -122,7 +122,7 @@ int FfmpegCamera::PrimeCapture()
- Fatal( "Can't find codec for video stream from %s", mPath.c_str() );
-
- // Open the codec
-- if ( avcodec_open( mCodecContext, mCodec ) < 0 )
-+ if ( avcodec_open2( mCodecContext, mCodec, NULL ) < 0 )
- Fatal( "Unable to open codec for video stream from %s", mPath.c_str() );
-
- // Allocate space for the native video frame
-
-diff --git a/src/zm_mpeg.cpp b/src/zm_mpeg.cpp
-index f5de2a4..d614346 100644
---- a/src/zm_mpeg.cpp
-+++ b/src/zm_mpeg.cpp
-@@ -130,10 +130,12 @@ void VideoStream::SetParameters()
- {
- /* set the output parameters (must be done even if no
- parameters). */
-- if ( av_set_parameters(ofc, NULL) < 0 )
-+ /*
-+ * Removed in last ffmpeg
-+ * if ( av_set_parameters(ofc, NULL) < 0 )
- {
- Panic( "Invalid output format parameters" );
-- }
-+ }*/
- //dump_format(ofc, 0, filename, 1);
- }
-
-@@ -222,7 +224,7 @@ void VideoStream::OpenStream()
- if ( !(of->flags & AVFMT_NOFILE) )
- {
- #if LIBAVUTIL_VERSION_INT >= AV_VERSION_INT(51,2,1)
-- if ( avio_open(&ofc->pb, filename, URL_WRONLY) < 0 )
-+ if ( avio_open(&ofc->pb, filename, AVIO_FLAG_WRITE) < 0 )
- #else
- if ( url_fopen(&ofc->pb, filename, URL_WRONLY) < 0 )
- #endif
-@@ -241,7 +243,7 @@ void VideoStream::OpenStream()
- }
-
- /* write the stream header, if any */
-- av_write_header(ofc);
-+ avformat_write_header(ofc, NULL);
- }
-
- VideoStream::VideoStream( const char *filename, const char *format, int bitrate, double frame_rate, int colours, int subpixelorder, int width, int height )
|