Merge branch 'storageareas' of github.com:ZoneMinder/ZoneMinder into storageareas
This commit is contained in:
commit
a2d92300b3
|
@ -63,7 +63,6 @@ src/zma
|
||||||
src/zmc
|
src/zmc
|
||||||
src/zmf
|
src/zmf
|
||||||
src/zms
|
src/zms
|
||||||
src/zmstreamer
|
|
||||||
src/zmu
|
src/zmu
|
||||||
web/includes/config.php
|
web/includes/config.php
|
||||||
zm.conf
|
zm.conf
|
||||||
|
|
14
.travis.yml
14
.travis.yml
|
@ -1,4 +1,6 @@
|
||||||
language: cpp
|
language: cpp
|
||||||
|
sudo: required
|
||||||
|
dist: trusty
|
||||||
notifications:
|
notifications:
|
||||||
irc: "chat.freenode.net#zoneminder-dev"
|
irc: "chat.freenode.net#zoneminder-dev"
|
||||||
branches:
|
branches:
|
||||||
|
@ -17,14 +19,14 @@ env:
|
||||||
- CXXFLAGS="$CFLAGS"
|
- CXXFLAGS="$CFLAGS"
|
||||||
matrix:
|
matrix:
|
||||||
- ZM_BUILDMETHOD=cmake
|
- ZM_BUILDMETHOD=cmake
|
||||||
- ZM_BUILDMETHOD=autotools
|
|
||||||
compiler:
|
compiler:
|
||||||
- gcc
|
- gcc
|
||||||
|
- clang
|
||||||
before_install:
|
before_install:
|
||||||
- sudo apt-get update -qq
|
- sudo apt-get update -qq
|
||||||
- sudo apt-get install -y -qq libpolkit-gobject-1-dev zlib1g-dev apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf cmake libjpeg-turbo8-dev apache2-mpm-prefork libapache2-mod-php5 php5-cli libtheora-dev libvorbis-dev libvpx-dev libx264-dev libvlccore-dev libvlc-dev libvlccore5 libvlc5 2>&1 > /dev/null
|
- sudo apt-get install -y -qq libpolkit-gobject-1-dev zlib1g-dev apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf cmake libjpeg-turbo8-dev apache2-mpm-prefork libapache2-mod-php5 php5-cli libtheora-dev libvorbis-dev libvpx-dev libx264-dev libvlccore-dev libvlc-dev 2>&1 > /dev/null
|
||||||
install:
|
install:
|
||||||
- git clone -b n2.8.1 --depth=1 git://source.ffmpeg.org/ffmpeg.git
|
- git clone -b n3.0 --depth=1 git://source.ffmpeg.org/ffmpeg.git
|
||||||
- cd ffmpeg
|
- cd ffmpeg
|
||||||
- ./configure --enable-shared --enable-swscale --enable-gpl --enable-libx264 --enable-libvpx --enable-libvorbis --enable-libtheora
|
- ./configure --enable-shared --enable-swscale --enable-gpl --enable-libx264 --enable-libvpx --enable-libvorbis --enable-libtheora
|
||||||
- make -j `grep processor /proc/cpuinfo|wc -l`
|
- make -j `grep processor /proc/cpuinfo|wc -l`
|
||||||
|
@ -32,16 +34,10 @@ install:
|
||||||
- sudo make install-libs
|
- sudo make install-libs
|
||||||
before_script:
|
before_script:
|
||||||
- cd $TRAVIS_BUILD_DIR
|
- cd $TRAVIS_BUILD_DIR
|
||||||
- if [ "$ZM_BUILDMETHOD" = "autotools" ]; then libtoolize -v --force; fi
|
|
||||||
- if [ "$ZM_BUILDMETHOD" = "autotools" ]; then aclocal -I m4; fi
|
|
||||||
- if [ "$ZM_BUILDMETHOD" = "autotools" ]; then autoheader; fi
|
|
||||||
- if [ "$ZM_BUILDMETHOD" = "autotools" ]; then automake --force-missing --add-missing; fi
|
|
||||||
- if [ "$ZM_BUILDMETHOD" = "autotools" ]; then autoconf; fi
|
|
||||||
- mysql -uroot -e "CREATE DATABASE IF NOT EXISTS zm"
|
- mysql -uroot -e "CREATE DATABASE IF NOT EXISTS zm"
|
||||||
- mysql -uroot -e "GRANT ALL ON zm.* TO 'zmuser'@'localhost' IDENTIFIED BY 'zmpass'";
|
- mysql -uroot -e "GRANT ALL ON zm.* TO 'zmuser'@'localhost' IDENTIFIED BY 'zmpass'";
|
||||||
- mysql -uroot -e "FLUSH PRIVILEGES"
|
- mysql -uroot -e "FLUSH PRIVILEGES"
|
||||||
script:
|
script:
|
||||||
- if [ "$ZM_BUILDMETHOD" = "autotools" ]; then ./configure --prefix=/usr --with-libarch=lib/$DEB_HOST_GNU_TYPE --host=$DEB_HOST_GNU_TYPE --build=$DEB_BUILD_GNU_TYPE --with-mysql=/usr --with-ffmpeg=/usr --with-webdir=/usr/share/zoneminder/www --with-cgidir=/usr/libexec/zoneminder/cgi-bin --with-webuser=www-data --with-webgroup=www-data --enable-crashtrace=yes --disable-debug --enable-mmap=yes ZM_SSL_LIB=openssl; fi
|
|
||||||
- if [ "$ZM_BUILDMETHOD" = "cmake" ]; then cmake -DCMAKE_INSTALL_PREFIX="/usr"; fi
|
- if [ "$ZM_BUILDMETHOD" = "cmake" ]; then cmake -DCMAKE_INSTALL_PREFIX="/usr"; fi
|
||||||
- make
|
- make
|
||||||
- sudo make install
|
- sudo make install
|
||||||
|
|
|
@ -133,9 +133,9 @@ set(ZM_NO_CURL "OFF" CACHE BOOL
|
||||||
"Set to ON to skip cURL checks and force building ZM without cURL. default: OFF")
|
"Set to ON to skip cURL checks and force building ZM without cURL. default: OFF")
|
||||||
set(ZM_NO_X10 "OFF" CACHE BOOL
|
set(ZM_NO_X10 "OFF" CACHE BOOL
|
||||||
"Set to ON to build ZoneMinder without X10 support. default: OFF")
|
"Set to ON to build ZoneMinder without X10 support. default: OFF")
|
||||||
set(ZM_ONVIF "OFF" CACHE BOOL
|
set(ZM_ONVIF "ON" CACHE BOOL
|
||||||
"Set to ON to enable basic ONVIF support. This is EXPERIMENTAL and may not
|
"Set to ON to enable basic ONVIF support. This is EXPERIMENTAL and may not
|
||||||
work with all cameras claiming to be ONVIF compliant. default: OFF")
|
work with all cameras claiming to be ONVIF compliant. default: ON")
|
||||||
set(ZM_PERL_MM_PARMS INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 CACHE STRING
|
set(ZM_PERL_MM_PARMS INSTALLDIRS=vendor NO_PACKLIST=1 NO_PERLLOCAL=1 CACHE STRING
|
||||||
"By default, ZoneMinder's Perl modules are installed into the Vendor folders,
|
"By default, ZoneMinder's Perl modules are installed into the Vendor folders,
|
||||||
as defined by your installation of Perl. You can change that here. Consult Perl's
|
as defined by your installation of Perl. You can change that here. Consult Perl's
|
||||||
|
@ -182,6 +182,17 @@ elseif(ZM_TARGET_DISTRO STREQUAL "OS13")
|
||||||
set(ZM_WEB_GROUP "www")
|
set(ZM_WEB_GROUP "www")
|
||||||
set(ZM_WEBDIR "/srv/www/htdocs/zoneminder")
|
set(ZM_WEBDIR "/srv/www/htdocs/zoneminder")
|
||||||
set(ZM_CGIDIR "/srv/www/cgi-bin")
|
set(ZM_CGIDIR "/srv/www/cgi-bin")
|
||||||
|
elseif(ZM_TARGET_DISTRO STREQUAL "FreeBSD")
|
||||||
|
set(ZM_RUNDIR "/var/run/zm")
|
||||||
|
set(ZM_SOCKDIR "/var/run/zm")
|
||||||
|
set(ZM_TMPDIR "/var/tmp/zm")
|
||||||
|
set(ZM_CONTENTDIR "/usr/local/var/lib/zoneminder")
|
||||||
|
set(ZM_WEB_USER "www")
|
||||||
|
set(ZM_WEB_GROUP "www")
|
||||||
|
set(ZM_CONFIG_DIR "/usr/local/etc/zm")
|
||||||
|
set(ZM_WEBDIR "/usr/local/share/zoneminder/www")
|
||||||
|
set(ZM_CGIDIR "/usr/local/libexec/zoneminder/cgi-bin")
|
||||||
|
set(ZM_PERL_MM_PARMS "INSTALLDIRS=site")
|
||||||
endif((ZM_TARGET_DISTRO STREQUAL "f22") OR (ZM_TARGET_DISTRO STREQUAL "f23"))
|
endif((ZM_TARGET_DISTRO STREQUAL "f22") OR (ZM_TARGET_DISTRO STREQUAL "f23"))
|
||||||
|
|
||||||
# Required for certain checks to work
|
# Required for certain checks to work
|
||||||
|
@ -205,7 +216,7 @@ if (HAVE_EXECINFO_H)
|
||||||
if (NOT HAVE_DECL_BACKTRACE)
|
if (NOT HAVE_DECL_BACKTRACE)
|
||||||
find_library (EXECINFO_LIBRARY NAMES execinfo)
|
find_library (EXECINFO_LIBRARY NAMES execinfo)
|
||||||
if (EXECINFO_LIBRARY)
|
if (EXECINFO_LIBRARY)
|
||||||
list(APPEND ZM_BIN_LIBS "-l${EXECINFO_LIBRARY}")
|
list(APPEND ZM_BIN_LIBS "-lexecinfo")
|
||||||
endif (EXECINFO_LIBRARY)
|
endif (EXECINFO_LIBRARY)
|
||||||
endif (NOT HAVE_DECL_BACKTRACE)
|
endif (NOT HAVE_DECL_BACKTRACE)
|
||||||
check_function_exists("backtrace_symbols" HAVE_DECL_BACKTRACE_SYMBOLS)
|
check_function_exists("backtrace_symbols" HAVE_DECL_BACKTRACE_SYMBOLS)
|
||||||
|
@ -390,6 +401,59 @@ else(MYSQLCLIENT_LIBRARIES)
|
||||||
"ZoneMinder requires mysqlclient but it was not found on your system")
|
"ZoneMinder requires mysqlclient but it was not found on your system")
|
||||||
endif(MYSQLCLIENT_LIBRARIES)
|
endif(MYSQLCLIENT_LIBRARIES)
|
||||||
|
|
||||||
|
# x264 (using find_library and find_path)
|
||||||
|
find_library(X264_LIBRARIES x264)
|
||||||
|
if(X264_LIBRARIES)
|
||||||
|
set(HAVE_LIBX264 1)
|
||||||
|
list(APPEND ZM_BIN_LIBS "${X264_LIBRARIES}")
|
||||||
|
find_path(X264_INCLUDE_DIR x264.h)
|
||||||
|
if(X264_INCLUDE_DIR)
|
||||||
|
include_directories("${X264_INCLUDE_DIR}")
|
||||||
|
set(CMAKE_REQUIRED_INCLUDES "${X264_INCLUDE_DIR}")
|
||||||
|
endif(X264_INCLUDE_DIR)
|
||||||
|
mark_as_advanced(FORCE X264_LIBRARIES X264_INCLUDE_DIR)
|
||||||
|
check_include_files("stdint.h;x264.h" HAVE_X264_H)
|
||||||
|
set(optlibsfound "${optlibsfound} x264")
|
||||||
|
else(X264_LIBRARIES)
|
||||||
|
set(optlibsnotfound "${optlibsnotfound} x264")
|
||||||
|
endif(X264_LIBRARIES)
|
||||||
|
|
||||||
|
# mp4v2 (using find_library and find_path)
|
||||||
|
find_library(MP4V2_LIBRARIES mp4v2)
|
||||||
|
if(MP4V2_LIBRARIES)
|
||||||
|
set(HAVE_LIBMP4V2 1)
|
||||||
|
list(APPEND ZM_BIN_LIBS "${MP4V2_LIBRARIES}")
|
||||||
|
|
||||||
|
# mp4v2/mp4v2.h
|
||||||
|
find_path(MP4V2_INCLUDE_DIR mp4v2/mp4v2.h)
|
||||||
|
if(MP4V2_INCLUDE_DIR)
|
||||||
|
include_directories("${MP4V2_INCLUDE_DIR}")
|
||||||
|
set(CMAKE_REQUIRED_INCLUDES "${MP4V2_INCLUDE_DIR}")
|
||||||
|
endif(MP4V2_INCLUDE_DIR)
|
||||||
|
check_include_file("mp4v2/mp4v2.h" HAVE_MP4V2_MP4V2_H)
|
||||||
|
|
||||||
|
# mp4v2.h
|
||||||
|
find_path(MP4V2_INCLUDE_DIR mp4v2.h)
|
||||||
|
if(MP4V2_INCLUDE_DIR)
|
||||||
|
include_directories("${MP4V2_INCLUDE_DIR}")
|
||||||
|
set(CMAKE_REQUIRED_INCLUDES "${MP4V2_INCLUDE_DIR}")
|
||||||
|
endif(MP4V2_INCLUDE_DIR)
|
||||||
|
check_include_file("mp4v2.h" HAVE_MP4V2_H)
|
||||||
|
|
||||||
|
# mp4.h
|
||||||
|
find_path(MP4V2_INCLUDE_DIR mp4.h)
|
||||||
|
if(MP4V2_INCLUDE_DIR)
|
||||||
|
include_directories("${MP4V2_INCLUDE_DIR}")
|
||||||
|
set(CMAKE_REQUIRED_INCLUDES "${MP4V2_INCLUDE_DIR}")
|
||||||
|
endif(MP4V2_INCLUDE_DIR)
|
||||||
|
check_include_file("mp4.h" HAVE_MP4_H)
|
||||||
|
|
||||||
|
mark_as_advanced(FORCE MP4V2_LIBRARIES MP4V2_INCLUDE_DIR)
|
||||||
|
set(optlibsfound "${optlibsfound} mp4v2")
|
||||||
|
else(MP4V2_LIBRARIES)
|
||||||
|
set(optlibsnotfound "${optlibsnotfound} mp4v2")
|
||||||
|
endif(MP4V2_LIBRARIES)
|
||||||
|
|
||||||
set(PATH_FFMPEG "")
|
set(PATH_FFMPEG "")
|
||||||
set(OPT_FFMPEG "no")
|
set(OPT_FFMPEG "no")
|
||||||
# Do not check for ffmpeg if ZM_NO_FFMPEG is on
|
# Do not check for ffmpeg if ZM_NO_FFMPEG is on
|
||||||
|
|
40
Makefile.am
40
Makefile.am
|
@ -1,40 +0,0 @@
|
||||||
AUTOMAKE_OPTIONS = foreign
|
|
||||||
ACLOCAL_AMFLAGS = -I m4
|
|
||||||
|
|
||||||
# And these to the user and group of your webserver
|
|
||||||
webuser = @WEB_USER@
|
|
||||||
webgroup = @WEB_GROUP@
|
|
||||||
zmconfigdir = @ZM_CONFIG_DIR@
|
|
||||||
|
|
||||||
zmconfig_DATA = \
|
|
||||||
zm.conf
|
|
||||||
|
|
||||||
if COND_ONVIF
|
|
||||||
MAYBE_ONVIF = onvif
|
|
||||||
endif
|
|
||||||
|
|
||||||
SUBDIRS = \
|
|
||||||
src \
|
|
||||||
web \
|
|
||||||
scripts \
|
|
||||||
db \
|
|
||||||
misc \
|
|
||||||
$(MAYBE_ONVIF)
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
|
||||||
zm.conf.in \
|
|
||||||
zmconfgen.pl.in
|
|
||||||
|
|
||||||
# Yes, you are correct. This is a HACK!
|
|
||||||
install-data-hook:
|
|
||||||
( cd $(DESTDIR)$(zmconfigdir); chown $(webuser):$(webgroup) $(zmconfig_DATA); chmod 600 $(zmconfig_DATA) )
|
|
||||||
( if ! test -e $(DESTDIR)$(ZM_RUNDIR); then mkdir -p $(DESTDIR)$(ZM_RUNDIR); fi; if test "$(DESTDIR)$(ZM_RUNDIR)" != "/var/run"; then chown $(webuser):$(webgroup) $(DESTDIR)$(ZM_RUNDIR); chmod u+w $(DESTDIR)$(ZM_RUNDIR); fi )
|
|
||||||
( if ! test -e $(DESTDIR)$(ZM_SOCKDIR); then mkdir -p $(DESTDIR)$(ZM_SOCKDIR); fi; if test "$(DESTDIR)$(ZM_SOCKDIR)" != "/var/run"; then chown $(webuser):$(webgroup) $(DESTDIR)$(ZM_SOCKDIR); chmod u+w $(DESTDIR)$(ZM_SOCKDIR); fi )
|
|
||||||
( if ! test -e $(DESTDIR)$(ZM_TMPDIR); then mkdir -m 700 -p $(DESTDIR)$(ZM_TMPDIR); fi; if test "$(DESTDIR)$(ZM_TMPDIR)" != "/tmp" && test "$(DESTDIR)$(ZM_TMPDIR)" != "/var/tmp"; then chown $(webuser):$(webgroup) $(DESTDIR)$(ZM_TMPDIR); chmod u+w $(DESTDIR)$(ZM_TMPDIR); fi )
|
|
||||||
|
|
||||||
uninstall-hook:
|
|
||||||
@-( cd $(DESTDIR)$(webdir); rm -rf events graphics images sounds temp )
|
|
||||||
@-( if test "$(DESTDIR)$(ZM_RUNDIR)" != "/var/run"; then rm -rf $(DESTDIR)$(ZM_RUNDIR); fi )
|
|
||||||
@-( if test "$(DESTDIR)$(ZM_SOCKDIR)" != "/var/run"; then rm -rf $(DESTDIR)$(ZM_SOCKDIR); fi )
|
|
||||||
@-( if test "$(DESTDIR)$(ZM_TMPDIR)" != "/tmp" && test "$(DESTDIR)$(ZM_TMPDIR)" != "/var/tmp"; then rm -rf $(DESTDIR)$(ZM_TMPDIR); fi )
|
|
||||||
@-( if test "$(DESTDIR)$(ZM_LOGDIR)" != "/var/log"; then rm -rf $(DESTDIR)$(ZM_LOGDIR); fi )
|
|
217
README.md
217
README.md
|
@ -1,9 +1,21 @@
|
||||||
ZoneMinder
|
ZoneMinder H264 Patch
|
||||||
==========
|
|
||||||
|
|
||||||
[![Build Status](https://travis-ci.org/ZoneMinder/ZoneMinder.png)](https://travis-ci.org/ZoneMinder/ZoneMinder) [![Bountysource](https://api.bountysource.com/badge/team?team_id=204&style=bounties_received)](https://www.bountysource.com/teams/zoneminder/issues?utm_source=ZoneMinder&utm_medium=shield&utm_campaign=bounties_received)
|
[![Build Status](https://travis-ci.org/ZoneMinder/ZoneMinder.png?branch=feature-h264-videostorage)](https://travis-ci.org/ZoneMinder/ZoneMinder) [![Bountysource](https://api.bountysource.com/badge/team?team_id=204&style=bounties_received)](https://www.bountysource.com/teams/zoneminder/issues?utm_source=ZoneMinder&utm_medium=shield&utm_campaign=bounties_received)
|
||||||
|
|
||||||
All documentation for ZoneMinder is now online at http://www.zoneminder.com/wiki/index.php/Documentation
|
##Feature-h264-videostorage Branch Details
|
||||||
|
This branch supports direct recording of h264 cameras into MP4 format uisng the h264 Passthrough option, but only with FFMPEG Monitors currently. It also provides h264 encoding for any other monitor type. If you encounter any issues, please open an issue on GitHub and attach it to the h264 milestone. But do remember this is bleeding edge so it will have problems.
|
||||||
|
Thanks to @chriswiggins and @mastertheknife for their work, @SteveGilvarry is now maintaining this branch and welcomes any assistance.
|
||||||
|
|
||||||
|
**The following SQL changes are required, these will be merged to zmupdate once we are ready to merge this branch to master.**
|
||||||
|
```
|
||||||
|
ALTER TABLE `Monitors` ADD `SaveJPEGs` TINYINT NOT NULL DEFAULT '3' AFTER `Deinterlacing` ,
|
||||||
|
ADD `VideoWriter` TINYINT NOT NULL DEFAULT '0' AFTER `SaveJPEGs` ,
|
||||||
|
ADD `EncoderParameters` TEXT NOT NULL AFTER `VideoWriter` ;
|
||||||
|
|
||||||
|
ALTER TABLE `Events` ADD `DefaultVideo` VARCHAR( 64 ) NOT NULL AFTER `AlarmFrames` ;
|
||||||
|
```
|
||||||
|
|
||||||
|
All documentation for ZoneMinder is now online at https://zoneminder.readthedocs.org
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
|
@ -42,7 +54,7 @@ When building a package, it is best to do this work in a separate environment, d
|
||||||
|
|
||||||
Lastly, if you desire to build a development snapshot from the master branch, it is recommended you first build your package using an official release of ZoneMinder. This will help identify whether any problems you may encounter are caused by the build process or is a new issue in the master branch.
|
Lastly, if you desire to build a development snapshot from the master branch, it is recommended you first build your package using an official release of ZoneMinder. This will help identify whether any problems you may encounter are caused by the build process or is a new issue in the master branch.
|
||||||
|
|
||||||
What follows are instructions for various distros to build ZoneMinder into a package.
|
Please visit our [ReadtheDocs site](https://zoneminder.readthedocs.org/en/stable/installationguide/index.html) for distro specific instructions.
|
||||||
|
|
||||||
### Package Maintainers
|
### Package Maintainers
|
||||||
Many of the ZoneMinder configration variable default values are not configurable at build time through autotools or cmake. A new tool called *zmeditconfigdata.sh* has been added to allow package maintainers to manipulate any variable stored in ConfigData.pm without patching the source.
|
Many of the ZoneMinder configration variable default values are not configurable at build time through autotools or cmake. A new tool called *zmeditconfigdata.sh* has been added to allow package maintainers to manipulate any variable stored in ConfigData.pm without patching the source.
|
||||||
|
@ -54,201 +66,6 @@ For example, let's say I have created a new ZoneMinder package that contains the
|
||||||
|
|
||||||
Note that zmeditconfigdata.sh is intended to be called, from the root build folder, prior to running cmake or configure.
|
Note that zmeditconfigdata.sh is intended to be called, from the root build folder, prior to running cmake or configure.
|
||||||
|
|
||||||
#### Ubuntu
|
|
||||||
|
|
||||||
A fresh build based on master branch running Ubuntu 1204 LTS. Will likely work for other versions as well.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
root@host:~# aptitude install -y apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf libjpeg8-dev libjpeg8 apache2-mpm-prefork libapache2-mod-php5 php5-cli libphp-serialization-perl libgnutls-dev libjpeg8-dev libavcodec-dev libavformat-dev libswscale-dev libavutil-dev libv4l-dev libtool ffmpeg libnetpbm10-dev libavdevice-dev libmime-lite-perl dh-autoreconf dpatch;
|
|
||||||
|
|
||||||
root@host:~# git clone https://github.com/ZoneMinder/ZoneMinder.git zoneminder;
|
|
||||||
root@host:~# cd zoneminder;
|
|
||||||
root@host:~# ln -s distros/ubuntu1204 debian;
|
|
||||||
root@host:~# dpkg-checkbuilddeps;
|
|
||||||
root@host:~# dpkg-buildpackage;
|
|
||||||
```
|
|
||||||
|
|
||||||
One level above you'll now find a deb package matching the architecture of the build host:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
root@host:~# ls -1 ~/zoneminder*;
|
|
||||||
/root/zoneminder_1.26.4-1_amd64.changes
|
|
||||||
/root/zoneminder_1.26.4-1_amd64.deb
|
|
||||||
/root/zoneminder_1.26.4-1.dsc
|
|
||||||
/root/zoneminder_1.26.4-1.tar.gz
|
|
||||||
```
|
|
||||||
|
|
||||||
The dpkg command itself does not resolve dependencies. That's what high-level interfaces like aptitude and apt-get are normally for. Unfortunately, unlike RPM, there's no easy way to install a separate deb package not contained with any repository.
|
|
||||||
|
|
||||||
To overcome this "limitation" we'll use dpkg only to install the zoneminder package and apt-get to fetch all needed dependencies afterwards. Running dpkg-reconfigure in the end will ensure that the setup scripts e.g. for database provisioning were executed.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
root@host:~# dpkg -i /root/zoneminder_1.26.4-1_amd64.deb; apt-get install -f;
|
|
||||||
root@host:~# dpkg-reconfigure zoneminder;
|
|
||||||
```
|
|
||||||
Alternatively you may also use gdebi to automatically resolve dependencies during installation:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
root@host:~# aptitude install -y gdebi;
|
|
||||||
root@host:~# gdebi /root/zoneminder_1.26.4-1_amd64.deb;
|
|
||||||
```
|
|
||||||
```bash
|
|
||||||
sudo apt-get install apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev \
|
|
||||||
libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 \
|
|
||||||
libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf libjpeg-turbo8-dev libjpeg-turbo8 \
|
|
||||||
apache2-mpm-prefork libapache2-mod-php5 php5-cli
|
|
||||||
```
|
|
||||||
|
|
||||||
#### Debian
|
|
||||||
|
|
||||||
A fresh build based on master branch running Debian 7 (wheezy):
|
|
||||||
|
|
||||||
```bash
|
|
||||||
root@host:~# aptitude install -y apache2 mysql-server php5 php5-mysql build-essential libmysqlclient-dev libssl-dev libbz2-dev libpcre3-dev libdbi-perl libarchive-zip-perl libdate-manip-perl libdevice-serialport-perl libmime-perl libpcre3 libwww-perl libdbd-mysql-perl libsys-mmap-perl yasm automake autoconf libjpeg8-dev libjpeg8 apache2-mpm-prefork libapache2-mod-php5 php5-cli libphp-serialization-perl libgnutls-dev libjpeg8-dev libavcodec-dev libavformat-dev libswscale-dev libavutil-dev libv4l-dev libtool ffmpeg libnetpbm10-dev libavdevice-dev libmime-lite-perl dh-autoreconf dpatch;
|
|
||||||
|
|
||||||
root@host:~# git clone https://github.com/ZoneMinder/ZoneMinder.git zoneminder;
|
|
||||||
root@host:~# cd zoneminder;
|
|
||||||
root@host:~# ln -s distros/debian;
|
|
||||||
root@host:~# dpkg-checkbuilddeps;
|
|
||||||
root@host:~# dpkg-buildpackage;
|
|
||||||
```
|
|
||||||
|
|
||||||
One level above you'll now find a deb package matching the architecture of the build host:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
root@host:~# ls -1 ~/zoneminder*;
|
|
||||||
/root/zoneminder_1.26.4-1_amd64.changes
|
|
||||||
/root/zoneminder_1.26.4-1_amd64.deb
|
|
||||||
/root/zoneminder_1.26.4-1.dsc
|
|
||||||
/root/zoneminder_1.26.4-1.tar.gz
|
|
||||||
```
|
|
||||||
|
|
||||||
The dpkg command itself does not resolve dependencies. That's what high-level interfaces like aptitude and apt-get are normally for. Unfortunately, unlike RPM, there's no easy way to install a separate deb package not contained with any repository.
|
|
||||||
|
|
||||||
To overcome this "limitation" we'll use dpkg only to install the zoneminder package and apt-get to fetch all needed dependencies afterwards. Running dpkg-reconfigure in the end will ensure that the setup scripts e.g. for database provisioning were executed.
|
|
||||||
|
|
||||||
```bash
|
|
||||||
root@host:~# dpkg -i /root/zoneminder_1.26.4-1_amd64.deb; apt-get install -f;
|
|
||||||
root@host:~# dpkg-reconfigure zoneminder;
|
|
||||||
```
|
|
||||||
Alternatively you may also use gdebi to automatically resolve dependencies during installation:
|
|
||||||
|
|
||||||
```bash
|
|
||||||
root@host:~# aptitude install -y gdebi;
|
|
||||||
root@host:~# gdebi /root/zoneminder_1.26.4-1_amd64.deb;
|
|
||||||
```
|
|
||||||
|
|
||||||
#### Fedora / CentOS / RHEL
|
|
||||||
|
|
||||||
##### Background
|
|
||||||
The following method documents how to build ZoneMinder into an RPM package, compatible with Fedora, Redhat, CentOS, and other compatible clones. This is exactly how the RPMS in zmrepo are built.
|
|
||||||
|
|
||||||
The method documented below was chosen because:
|
|
||||||
- All of ZoneMinder's dependencies are downloaded and installed automatically
|
|
||||||
- Cross platform capable. The build host does not have to be the same distro or release version as the target.
|
|
||||||
- Once your build environment is set up, few steps are required to run the build again in the future.
|
|
||||||
- Troubleshooting becomes easier if we are all building ZoneMinder the same way.
|
|
||||||
|
|
||||||
The build instructions below make use of a custom script called "buildzm.sh". Advanced users are encouraged to view the contents of this script. Notice that the script doesn't really do a whole lot. The goal of the script is to simply make the process a little easier for the first time user. Once you become familar with the build process, you can issue the mock commands found in the buildzm.sh script yourself if you so desire.
|
|
||||||
|
|
||||||
***IMPORTANT***
|
|
||||||
Certain commands in these instructions require root privileges while other commands do not. Pay close attention to this. If the instructions below state to issue a command without a “sudo” prefix, then you should *not* be root while issuing the command. Getting this incorrect will result in a failed build.
|
|
||||||
|
|
||||||
##### Set Up Your Environment
|
|
||||||
Before you begin, set up an rpmbuild environment by following [this guide](http://wiki.centos.org/HowTos/SetupRpmBuildEnvironment) by the CentOS developers.
|
|
||||||
|
|
||||||
Next, navigate to [Zmrepo](http://zmrepo.zoneminder.com/), and follow the instructions to enable zmrepo on your system.
|
|
||||||
|
|
||||||
With zmrepo enabled, issue the following command:
|
|
||||||
````bash
|
|
||||||
sudo yum install zmrepo-mock-configs mock
|
|
||||||
```
|
|
||||||
|
|
||||||
Add your user account to the group mock:
|
|
||||||
```bash
|
|
||||||
sudo gpasswd -a {your account name} mock
|
|
||||||
```
|
|
||||||
|
|
||||||
Your build environment is now set up.
|
|
||||||
|
|
||||||
##### Build from SRPM
|
|
||||||
To continue, you need a ZoneMinder SRPM. For starters, let's use one of the SRPMS from zmrepo. Go browse the [Zmrepo](http://zmrepo.zoneminder.com/) site and choose an appropriate SRPM and place it into the ~/rpmbuild/SRPMS folder.
|
|
||||||
|
|
||||||
For CentOS 7, I have chosen the following SRPM:
|
|
||||||
```bash
|
|
||||||
wget -P ~/rpmbuild/SRPMS http://zmrepo.zoneminder.com/el/7/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm
|
|
||||||
```
|
|
||||||
|
|
||||||
Now comes the fun part. To build ZoneMinder, issue the following command:
|
|
||||||
```bash
|
|
||||||
buildzm.sh zmrepo-el7-x86_64 ~/rpmbuild/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm
|
|
||||||
```
|
|
||||||
|
|
||||||
Want to build ZoneMinder for Fedora, instead of CentOS, from the same host? Once you download the Fedora SRPM, issue the following:
|
|
||||||
```bash
|
|
||||||
buildzm.sh zmrepo-f21-x86_64 ~/rpmbuild/SRPMS/zoneminder-1.28.1-1.fc21.src.rpm
|
|
||||||
```
|
|
||||||
Notice that the buildzm.sh tool requires the following parameters:
|
|
||||||
```bash
|
|
||||||
buildzm.sh MOCKCONFIG ZONEMINDER_SRPM
|
|
||||||
```
|
|
||||||
The list of available Mock config files are available here:
|
|
||||||
```bash
|
|
||||||
ls /etc/mock/zmrepo*.cfg
|
|
||||||
```
|
|
||||||
|
|
||||||
You choose the config file based on the desired distro (e.g. el6, el7, f20, f21) and basearch (e.g. x86, x86_64, arhmhfp). Notice that, when specifying the Mock config as a commandline parameter, you should leave off the ".cfg" filename extension.
|
|
||||||
|
|
||||||
##### Installation
|
|
||||||
Once the build completes, you will be presented with a folder containing the RPM's that were built. Copy the newly built ZoneMinder RPM to the desired system, enable zmrepo per the instruction on the [Zmrepo](http://zmrepo.zoneminder.com/) website, and then install the rpm by issuing the appropriate yum install command. Finish the installation by following the zoneminder setup instructions in the distro specific readme file, named README.{distroname}, which will be installed into the /usr/share/doc/zoneminder* folder.
|
|
||||||
|
|
||||||
Finally, you may want to consider editing the zmrepo repo file under /etc/yum.repos.d and placing an “exclude=zoneminder*” line into the config file. This will prevent your system from overwriting your manually built RPM with the ZoneMinder RPM found in the repo.
|
|
||||||
|
|
||||||
##### How to Modify the Source Prior to Build
|
|
||||||
** UNFINISHED **
|
|
||||||
|
|
||||||
Before attempting this part of the instructions, make sure and follow the previous instructions for building one of the unmodified SRPMS from zmrepo. Knowing this part works will assist in troubleshooting should something go wrong.
|
|
||||||
|
|
||||||
These instructions may vary depending on what exactly you want to do. The following example assumes you want to build a development snapshot from the master branch.
|
|
||||||
|
|
||||||
From the previous instructions, we downloaded a CentOS 7 ZoneMinder SRPM and placed it into ~/rpmbuild/SRPMS. For this example, install it onto your system:
|
|
||||||
```bash
|
|
||||||
rpm -Uvh ~/rpmbuild/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm
|
|
||||||
```
|
|
||||||
|
|
||||||
IMPORTANT: This operation must be done with your normal user account. Do *not* perform this command as root.
|
|
||||||
|
|
||||||
Make sure you have git installed:
|
|
||||||
```bash
|
|
||||||
sudo yum install git
|
|
||||||
```
|
|
||||||
|
|
||||||
Now clone the ZoneMinder git repository:
|
|
||||||
```bash
|
|
||||||
git clone https://github.com/ZoneMinder/ZoneMinder
|
|
||||||
```
|
|
||||||
This will create a sub-folder called ZoneMinder, which will contain the latest development.
|
|
||||||
|
|
||||||
We want to turn this into a tarball, but first we need to figure out what to name it. Look here:
|
|
||||||
```bash
|
|
||||||
ls ~/rpmbuild/SOURCES
|
|
||||||
```
|
|
||||||
The tarball from the previsouly installed SRPM should be there. This is the name we will use. For this example, the name is ZoneMinder-1.28.1.tar.gz. From one folder above the local ZoneMinder git repository, execute the following:
|
|
||||||
```bash
|
|
||||||
mv ZoneMinder ZoneMinder-1.28.1
|
|
||||||
tar -cvzf ~/rpmbuild/SOURCES/ZoneMinder-1.28.1.tar.gz ZoneMinder-1.28.1/*
|
|
||||||
```
|
|
||||||
The trailing "/*" leaves off the hidden dot "." file and folders from the git repo, which is what we want.
|
|
||||||
Note that we are overwriting the original tarball. If you wish to keep the original tarball then create a copy prior to creating the new tarball.
|
|
||||||
|
|
||||||
Now build a new src.rpm:
|
|
||||||
```bash
|
|
||||||
rpmbuild -bs --nodeps ~/rpmbuild/SPECS/zoneminder.el7.spec
|
|
||||||
```
|
|
||||||
This step will overwrite the SRPM you originally downloaded, so you may want to back it up prior to completing this step. Note that the name of the specfile will vary slightly depending on what distro you are building for.
|
|
||||||
|
|
||||||
You should now have a a new SRPM under ~/rpmbuild/SRPMS. In our example, the SRPM is called zoneminder-1.28.1-2.el7.centos.src.rpm. Now follow the previous instructions that describe how to use the buildzm script, using ~/rpmbuild/SRPMS/zoneminder-1.28.1-2.el7.centos.src.rpm as the path to your SRPM.
|
|
||||||
|
|
||||||
#### Docker
|
#### Docker
|
||||||
|
|
||||||
Docker is a system to run applications inside isolated containers. ZoneMinder, and the ZM webserver, will run using the
|
Docker is a system to run applications inside isolated containers. ZoneMinder, and the ZM webserver, will run using the
|
||||||
|
|
74
acinclude.m4
74
acinclude.m4
|
@ -1,74 +0,0 @@
|
||||||
AC_DEFUN([AC_DEFINE_DIR], [
|
|
||||||
prefix_NONE=
|
|
||||||
exec_prefix_NONE=
|
|
||||||
test "x$prefix" = xNONE && prefix_NONE=yes && prefix=$ac_default_prefix
|
|
||||||
test "x$exec_prefix" = xNONE && exec_prefix_NONE=yes && exec_prefix=$prefix
|
|
||||||
dnl In Autoconf 2.60, ${datadir} refers to ${datarootdir}, which in turn
|
|
||||||
dnl refers to ${prefix}. Thus we have to use `eval' twice.
|
|
||||||
eval ac_define_dir="\"[$]$2\""
|
|
||||||
eval ac_define_dir="\"$ac_define_dir\""
|
|
||||||
AC_SUBST($1, "$ac_define_dir")
|
|
||||||
AC_DEFINE_UNQUOTED($1, "$ac_define_dir", [$3])
|
|
||||||
test "$prefix_NONE" && prefix=NONE
|
|
||||||
test "$exec_prefix_NONE" && exec_prefix=NONE
|
|
||||||
])
|
|
||||||
|
|
||||||
AC_DEFUN([AC_PROG_PERL_VERSION],[dnl
|
|
||||||
# Make sure we have perl
|
|
||||||
if test -z "$PERL"; then
|
|
||||||
AC_CHECK_PROG(PERL,perl,perl)
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Check if version of Perl is sufficient
|
|
||||||
ac_perl_version="$1"
|
|
||||||
|
|
||||||
if test "x$PERL" != "x"; then
|
|
||||||
AC_MSG_CHECKING(for perl version greater than or equal to $ac_perl_version)
|
|
||||||
# NB: It would be nice to log the error if there is one, but we cannot rely
|
|
||||||
# on autoconf internals
|
|
||||||
$PERL -e "use $ac_perl_version;" > /dev/null 2>&1
|
|
||||||
if test $? -ne 0; then
|
|
||||||
AC_MSG_RESULT(no);
|
|
||||||
$3
|
|
||||||
else
|
|
||||||
AC_MSG_RESULT(ok);
|
|
||||||
$2
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
AC_MSG_WARN(could not find perl)
|
|
||||||
fi
|
|
||||||
])dnl
|
|
||||||
|
|
||||||
AC_DEFUN([AC_PROG_PERL_MODULES],[dnl
|
|
||||||
ac_perl_modules="$1"
|
|
||||||
# Make sure we have perl
|
|
||||||
if test -z "$PERL"; then
|
|
||||||
AC_CHECK_PROG(PERL,perl,perl)
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "x$PERL" != x; then
|
|
||||||
ac_perl_modules_failed=0
|
|
||||||
for ac_perl_module in $ac_perl_modules; do
|
|
||||||
AC_MSG_CHECKING(for perl module $ac_perl_module)
|
|
||||||
|
|
||||||
# Would be nice to log result here, but can't rely on autoconf internals
|
|
||||||
$PERL "-M$ac_perl_module" -e exit > /dev/null 2>&1
|
|
||||||
if test $? -ne 0; then
|
|
||||||
AC_MSG_RESULT(no);
|
|
||||||
ac_perl_modules_failed=1
|
|
||||||
else
|
|
||||||
AC_MSG_RESULT(ok);
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
# Run optional shell commands
|
|
||||||
if test "$ac_perl_modules_failed" = 0; then
|
|
||||||
:
|
|
||||||
$2
|
|
||||||
else
|
|
||||||
:
|
|
||||||
$3
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
AC_MSG_WARN(could not find perl)
|
|
||||||
fi])dnl
|
|
|
@ -1,5 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
aclocal -I m4
|
|
||||||
autoheader
|
|
||||||
automake --add-missing
|
|
||||||
autoconf
|
|
509
configure.ac
509
configure.ac
|
@ -1,509 +0,0 @@
|
||||||
#
|
|
||||||
# Building ZoneMinder via Autotools will be depreciated soon
|
|
||||||
# For instructions on building with cmake, please see INSTALL
|
|
||||||
#
|
|
||||||
AC_PREREQ(2.59)
|
|
||||||
AC_INIT(zm,1.30.2,[http://www.zoneminder.com/forums/ - Please check FAQ first],zoneminder,http://www.zoneminder.com/downloads.html)
|
|
||||||
AM_INIT_AUTOMAKE
|
|
||||||
AC_CONFIG_SRCDIR(src/zm.h)
|
|
||||||
AC_CONFIG_HEADERS(config.h)
|
|
||||||
AC_CONFIG_MACRO_DIR([m4])
|
|
||||||
|
|
||||||
AC_SUBST([AM_CXXFLAGS], [-D__STDC_CONSTANT_MACROS])
|
|
||||||
|
|
||||||
AC_SUBST(VERSION)
|
|
||||||
#
|
|
||||||
# Platform specific setup
|
|
||||||
#
|
|
||||||
#############################
|
|
||||||
AC_CANONICAL_HOST
|
|
||||||
# Check for which host we are on and setup a few things
|
|
||||||
# specifically based on the host
|
|
||||||
case $host_os in
|
|
||||||
darwin* )
|
|
||||||
# Do something specific for mac
|
|
||||||
HOST_OS='darwin'
|
|
||||||
;;
|
|
||||||
linux*)
|
|
||||||
# Do something specific for linux
|
|
||||||
HOST_OS='linux'
|
|
||||||
;;
|
|
||||||
*BSD*)
|
|
||||||
# Do something specific for BSD
|
|
||||||
HOST_OS='BSD'
|
|
||||||
AC_DEFINE(BSD,1,"This is a BSD system")
|
|
||||||
;;
|
|
||||||
*bsd*)
|
|
||||||
# Do something specific for BSD
|
|
||||||
HOST_OS='BSD'
|
|
||||||
AC_DEFINE(BSD,1,"This is a BSD system")
|
|
||||||
;;
|
|
||||||
*solaris*)
|
|
||||||
# Do something specific for Solaris
|
|
||||||
HOST_OS='solaris'
|
|
||||||
AC_DEFINE(SOLARIS,1,"We are running a Solaroid OS [tested on OmniOS]")
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
#Default Case
|
|
||||||
AC_MSG_ERROR([Your platform is not currently supported])
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
AC_SUBST(HOST_OS)
|
|
||||||
|
|
||||||
AC_ARG_VAR(ZM_DB_TYPE,[Type of the ZoneMinder database, default mysql])
|
|
||||||
AC_ARG_VAR(ZM_DB_HOST,[Hostname where ZoneMinder database located, default localhost])
|
|
||||||
AC_ARG_VAR(ZM_DB_NAME,[Name of ZoneMinder database, default zm])
|
|
||||||
AC_ARG_VAR(ZM_DB_USER,[Name of ZoneMinder database user, default zmuser])
|
|
||||||
AC_ARG_VAR(ZM_DB_PASS,[Password of ZoneMinder database user, default zmpass])
|
|
||||||
AC_ARG_VAR(ZM_SSL_LIB,[Library to use for ssl functions, default gnutls])
|
|
||||||
AC_ARG_VAR(ZM_MYSQL_ENGINE,[MySQL engine to use with database, default InnoDB])
|
|
||||||
AC_ARG_VAR(ZM_RUNDIR,[Location of transient process files, default /var/run/zm])
|
|
||||||
AC_ARG_VAR(ZM_SOCKDIR,[Location of Unix domain socket files, default /var/run/zm])
|
|
||||||
AC_ARG_VAR(ZM_TMPDIR,[Location of temporary files, default /var/tmp/zm])
|
|
||||||
AC_ARG_VAR(ZM_LOGDIR,[Location of generated log files, default /var/log/zm])
|
|
||||||
AC_ARG_VAR(ZM_CONFIG_DIR,[Location of ZoneMinder configuration, default system config directory])
|
|
||||||
|
|
||||||
if test "$ZM_DB_TYPE" == ""; then
|
|
||||||
AC_SUBST(ZM_DB_TYPE,[mysql])
|
|
||||||
fi
|
|
||||||
if test "$ZM_DB_HOST" == ""; then
|
|
||||||
AC_SUBST(ZM_DB_HOST,[localhost])
|
|
||||||
fi
|
|
||||||
if test "$ZM_DB_NAME" == ""; then
|
|
||||||
AC_SUBST(ZM_DB_NAME,[zm])
|
|
||||||
fi
|
|
||||||
if test "$ZM_DB_USER" == ""; then
|
|
||||||
AC_SUBST(ZM_DB_USER,[zmuser])
|
|
||||||
fi
|
|
||||||
if test "$ZM_DB_PASS" == ""; then
|
|
||||||
AC_SUBST(ZM_DB_PASS,[zmpass])
|
|
||||||
fi
|
|
||||||
if test "$ZM_SSL_LIB" == ""; then
|
|
||||||
AC_SUBST(ZM_SSL_LIB,gnutls)
|
|
||||||
fi
|
|
||||||
if test "$ZM_MYSQL_ENGINE" == ""; then
|
|
||||||
AC_SUBST(ZM_MYSQL_ENGINE,InnoDB)
|
|
||||||
fi
|
|
||||||
if test "$ZM_RUNDIR" == ""; then
|
|
||||||
AC_SUBST(ZM_RUNDIR,[/var/run/zm])
|
|
||||||
fi
|
|
||||||
if test "$ZM_SOCKDIR" == ""; then
|
|
||||||
AC_SUBST(ZM_SOCKDIR,[/var/run/zm])
|
|
||||||
fi
|
|
||||||
if test "$ZM_TMPDIR" == ""; then
|
|
||||||
AC_SUBST(ZM_TMPDIR,[/tmp/zm])
|
|
||||||
fi
|
|
||||||
if test "$ZM_LOGDIR" == ""; then
|
|
||||||
AC_SUBST(ZM_LOGDIR,[/var/log/zm])
|
|
||||||
fi
|
|
||||||
AC_DEFINE_DIR([SYSCONFDIR],[sysconfdir],[Expanded configuration directory])
|
|
||||||
if test "$ZM_CONFIG_DIR" == ""; then
|
|
||||||
AC_SUBST(ZM_CONFIG_DIR,[$SYSCONFDIR])
|
|
||||||
fi
|
|
||||||
|
|
||||||
LIB_ARCH=lib
|
|
||||||
AC_ARG_WITH(libarch,
|
|
||||||
[ --with-libarch=<lib> architecture library path to use, default lib],
|
|
||||||
[LIB_ARCH=$with_libarch],
|
|
||||||
AC_MSG_WARN([You can call configure with the --with-libarch option.
|
|
||||||
This tells configure where to find architecture specific libraries.
|
|
||||||
The default of 'lib' is usually ok but 64 bit machines may require lib64.
|
|
||||||
e.g. --with-libarch=lib or --with-libarch=lib64])
|
|
||||||
)
|
|
||||||
AC_SUBST(LIB_ARCH)
|
|
||||||
|
|
||||||
LDFLAGS="-L/usr/lib/${build_alias} ${LDFLAGS}"
|
|
||||||
|
|
||||||
MYSQL_PREFIX=/usr
|
|
||||||
AC_ARG_WITH(mysql,
|
|
||||||
[ --with-mysql=<path> prefix of MySQL installation, default /usr],
|
|
||||||
[MYSQL_PREFIX=$with_mysql],
|
|
||||||
AC_MSG_WARN([You can call configure with the --with-mysql option.
|
|
||||||
This tells configure where to find the MySql C library and headers if configure cannot
|
|
||||||
locate them automatically.
|
|
||||||
e.g. --with-mysql=/usr/local or --with-mysql=/usr])
|
|
||||||
)
|
|
||||||
AC_SUBST(MYSQL_PREFIX)
|
|
||||||
MYSQL_LIBS="-L${MYSQL_PREFIX}/${LIB_ARCH}/mysql"
|
|
||||||
MYSQL_CFLAGS="-I${MYSQL_PREFIX}/include"
|
|
||||||
AC_SUBST(MYSQL_LIBS)
|
|
||||||
AC_SUBST(MYSQL_CFLAGS)
|
|
||||||
LDFLAGS="$LDFLAGS ${MYSQL_LIBS}"
|
|
||||||
|
|
||||||
|
|
||||||
MARIADB_PREFIX=/usr
|
|
||||||
AC_ARG_WITH(mariadb,
|
|
||||||
[ --with-mariadb=<path> prefix of MariaDB installation, default /usr],
|
|
||||||
[MYSQL_PREFIX=$with_mariadb],
|
|
||||||
AC_MSG_WARN([You can call configure with the --with-mariadb option.
|
|
||||||
This tells configure where to find the mariaDB C library and headers if configure cannot
|
|
||||||
locate them automatically.
|
|
||||||
e.g. --with-mariadb=/usr/local or --with-mariadb=/usr])
|
|
||||||
)
|
|
||||||
AC_SUBST(MARIADB_PREFIX)
|
|
||||||
MARIADB_LIBS="-L${MARIADB_PREFIX}/${LIB_ARCH}/mariadb"
|
|
||||||
MARIADB_CFLAGS="-I${MARIADB_PREFIX}/include"
|
|
||||||
AC_SUBST(MARIADB_LIBS)
|
|
||||||
AC_SUBST(MARIADB_CFLAGS)
|
|
||||||
LDFLAGS="$LDFLAGS ${MARIADB_LIBS}"
|
|
||||||
|
|
||||||
POLKIT_PREFIX=/usr
|
|
||||||
AC_ARG_WITH(polkit,
|
|
||||||
[ --with-polkit=<path> prefix of polkit root directory, default /usr],
|
|
||||||
[POLKIT_PREFIX=$with_polkit],
|
|
||||||
AC_MSG_WARN([You can call configure with the --with-polkit option.
|
|
||||||
This tells configure where to place the polkit policy files.])
|
|
||||||
)
|
|
||||||
AC_SUBST(POLKIT_PREFIX)
|
|
||||||
PKG_CHECK_MODULES(POLKIT, polkit-gobject-1)
|
|
||||||
|
|
||||||
FFMPEG_PREFIX=/usr
|
|
||||||
AC_ARG_WITH(ffmpeg,
|
|
||||||
[ --with-ffmpeg=<path> prefix of ffmpeg root directory for libavcodec etc, default /usr],
|
|
||||||
[FFMPEG_PREFIX=$with_ffmpeg],
|
|
||||||
AC_MSG_WARN([You can call configure with the --with-ffmpeg option.
|
|
||||||
This tells configure where to find the ffmpeg root directory within which are the libavcodec
|
|
||||||
and libavformat files that can be used to build true MPEG streaming into ZoneMinder. Ensure that
|
|
||||||
your copy of ffmpeg has installed libraries as well as binaries (use 'make installlib'). If you
|
|
||||||
are using a local install of ffmpeg you may have to remove or rename a previous real installation
|
|
||||||
as the headers and libraries from that will probably be picked up before your local copy.
|
|
||||||
e.g. --with-ffmpeg=/usr/local])
|
|
||||||
)
|
|
||||||
AC_SUBST(FFMPEG_PREFIX)
|
|
||||||
FFMPEG_LIBS="-L${FFMPEG_PREFIX}/${LIB_ARCH}"
|
|
||||||
FFMPEG_CFLAGS="-I${FFMPEG_PREFIX}/include -D__STDC_CONSTANT_MACROS"
|
|
||||||
AC_SUBST(FFMPEG_LIBS)
|
|
||||||
AC_SUBST(FFMPEG_CFLAGS)
|
|
||||||
|
|
||||||
LDFLAGS="${FFMPEG_LIBS} $LDFLAGS"
|
|
||||||
CFLAGS="${FFMPEG_CFLAGS} $CFLAGS"
|
|
||||||
CPPFLAGS="${FFMPEG_CFLAGS} $CPPFLAGS"
|
|
||||||
|
|
||||||
EXTRA_LIBS=
|
|
||||||
AC_ARG_WITH(extralibs,
|
|
||||||
[ --with-extralibs="<libs>" string containing extra libraries to pass to link, default empty],
|
|
||||||
[EXTRA_LIBS=$with_extralibs],
|
|
||||||
AC_MSG_WARN([You can call configure with the --with-extralibs option.
|
|
||||||
Ordinarily you will need to use this option only when your copy of ffmpeg has been built
|
|
||||||
with support for additional formats and you would use this option to detail which additional
|
|
||||||
libraries ffmpeg was built with so that it is able to link successfully with ZoneMinder.
|
|
||||||
You will need to wrap this option in quotes if it contains any spaces.
|
|
||||||
e.g. --with-extralibs="-lmp3lame"])
|
|
||||||
)
|
|
||||||
AC_SUBST(EXTRA_LIBS)
|
|
||||||
|
|
||||||
LDFLAGS="$LDFLAGS ${EXTRA_LIBS}"
|
|
||||||
|
|
||||||
AC_ARG_WITH(webdir,
|
|
||||||
[ --with-webdir=<path> prefix of web directory],
|
|
||||||
[WEB_PREFIX=$with_webdir],
|
|
||||||
AC_MSG_ERROR([You must call configure with the --with-webdir option.
|
|
||||||
This tells configure where to install PHP and web files and scripts.
|
|
||||||
e.g. --with-webdir=/var/www/html or --with-webdir=/www/vhtdocs/<site>])
|
|
||||||
)
|
|
||||||
AC_SUBST(WEB_PREFIX)
|
|
||||||
|
|
||||||
AC_ARG_WITH(cgidir,
|
|
||||||
[ --with-cgidir=<path> prefix of cgi directory],
|
|
||||||
[CGI_PREFIX=$with_cgidir],
|
|
||||||
AC_MSG_ERROR([You must call configure with the --with-cgidir option.
|
|
||||||
This tells configure where to install cgi files and scripts.
|
|
||||||
e.g. --with-cgidir=/var/www/cgi-bin or --with-webdir=/www/vhtdocs/<site>/cgi-bin])
|
|
||||||
)
|
|
||||||
AC_SUBST(CGI_PREFIX)
|
|
||||||
|
|
||||||
WEB_USER=apache
|
|
||||||
AC_ARG_WITH(webuser,
|
|
||||||
[ --with-webuser=<user> name of web user, default apache],
|
|
||||||
[WEB_USER=$with_webuser],
|
|
||||||
AC_MSG_WARN([You can call configure with the --with-webuser option.
|
|
||||||
This tells configure what the user name of the web user is if it is not the default of 'apache'.
|
|
||||||
e.g. --with-webuser=apache or --with-webuser=web])
|
|
||||||
)
|
|
||||||
AC_SUBST(WEB_USER)
|
|
||||||
|
|
||||||
WEB_GROUP=apache
|
|
||||||
AC_ARG_WITH(webgroup,
|
|
||||||
[ --with-webgroup=<group> name of web group, default apache],
|
|
||||||
[WEB_GROUP=$with_webgroup],
|
|
||||||
AC_MSG_WARN([You can call configure with the --with-webgroup option.
|
|
||||||
This tells configure what the group name of the web group is if it is not the default of 'apache'.
|
|
||||||
e.g. --with-webgroup=apache or --with-webgroup=web])
|
|
||||||
)
|
|
||||||
AC_SUBST(WEB_GROUP)
|
|
||||||
|
|
||||||
WEB_HOST=zm.local
|
|
||||||
AC_ARG_WITH(webhost,
|
|
||||||
[ --with-webhost=<hostname> name of web hostname, default zm.local],
|
|
||||||
[WEB_HOST=$with_webhost],
|
|
||||||
AC_MSG_WARN([You can call configure with the --with-webhost option.
|
|
||||||
This tells configure what the host name is for name based virtual hosting. This is only used to populate the sample web/zmHttpd.conf file.
|
|
||||||
e.g. --with-webhost=zm.localdomain])
|
|
||||||
)
|
|
||||||
AC_SUBST(WEB_HOST)
|
|
||||||
|
|
||||||
ENABLE_DEBUG=yes
|
|
||||||
AC_ARG_ENABLE(debug,
|
|
||||||
[ --enable-debug=<yes|no> enable or disable debug, default enabled],
|
|
||||||
[ENABLE_DEBUG=$enable_debug],
|
|
||||||
AC_MSG_WARN([You can call configure with the --enable-debug=<yes|no> or --disable-debug option.
|
|
||||||
This tells configure whether to compile ZoneMinder with debug included. Although debug is included
|
|
||||||
by default it is not output unless explicitly switched on elsewhere. These checks may induce a
|
|
||||||
small penalty on performance and if you are after squeezing the maximum possible performance out
|
|
||||||
of ZoneMinder you may use this switch to prevent debug from being compiled in.
|
|
||||||
e.g. --enable-debug=yes or --disable-debug])
|
|
||||||
)
|
|
||||||
if test "$ENABLE_DEBUG" != "yes"; then
|
|
||||||
AC_DEFINE(ZM_DBG_OFF,1,"Whether debug is switched off and compiled out")
|
|
||||||
fi
|
|
||||||
|
|
||||||
ENABLE_MMAP=yes
|
|
||||||
AC_ARG_ENABLE(mmap,
|
|
||||||
[ --enable-mmap=<yes|no> enable or disabled mapped memory versus shared memory, default mapped],
|
|
||||||
[ENABLE_MMAP=$enable_mmap],
|
|
||||||
AC_MSG_WARN([You can call configure with the --enable-mmap=<yes|no> or --disable-mmap option.
|
|
||||||
This tells configure whether to compile ZoneMinder with mmap support rather than IPC shared
|
|
||||||
memory. This is a feature that uses memory mapped into files which all processes can share.
|
|
||||||
Memory mapping requires less configuration and is more flexible than shared memory but may
|
|
||||||
slow down your system unless the mapped files are configured to reside on a fast or RAM based
|
|
||||||
filesystem which will normally be the case by default.
|
|
||||||
e.g. --enable-mmap=yes or --disable-mmap])
|
|
||||||
)
|
|
||||||
if test "$ENABLE_MMAP" == "yes"; then
|
|
||||||
AC_DEFINE(ZM_MEM_MAPPED,1,"Whether to use mapped rather than shared memory")
|
|
||||||
else
|
|
||||||
AC_DEFINE(ZM_MEM_MAPPED,0,"Whether to use mapped rather than shared memory")
|
|
||||||
fi
|
|
||||||
AC_SUBST(ENABLE_MMAP)
|
|
||||||
|
|
||||||
ENABLE_ONVIF=no
|
|
||||||
AC_ARG_ENABLE(onvif,
|
|
||||||
[ --enable-onvif=<yes|no> enable or disable basic onvif support, default disabled],
|
|
||||||
[ENABLE_ONVIF=$enable_onvif],
|
|
||||||
AC_MSG_WARN([You can call configure with the --enable-onvif=<yes|no> or --enable-onvif option.
|
|
||||||
This tells configure whether to compile ZoneMinder with basic ONVIF support. This feature will
|
|
||||||
probe for ONVIF compliant cameras on your network and allow you the option to auto-configure them as
|
|
||||||
monitors in zoneminder. This option is EXPERIMENTAL and may not work with all cameras that claim to
|
|
||||||
be ONVIF compliant.
|
|
||||||
e.g. --enable-onvif=yes or --disable-onvif])
|
|
||||||
)
|
|
||||||
AM_CONDITIONAL([COND_ONVIF], [test "$enable_onvif" = yes])
|
|
||||||
|
|
||||||
# Compiler
|
|
||||||
AC_LANG_CPLUSPLUS
|
|
||||||
if test "$ENABLE_ONVIF" == "yes"; then
|
|
||||||
AC_SUBST(ZM_HAS_ONVIF,1)
|
|
||||||
else
|
|
||||||
AC_SUBST(ZM_HAS_ONVIF,0)
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Checks for programs.
|
|
||||||
AC_PROG_CXX
|
|
||||||
AC_PROG_CC
|
|
||||||
AC_PROG_INSTALL
|
|
||||||
AC_PROG_LN_S
|
|
||||||
AC_PROG_RANLIB
|
|
||||||
AC_PROG_MAKE_SET
|
|
||||||
|
|
||||||
# Checks for typedefs, structures, and compiler characteristics.
|
|
||||||
AC_HEADER_STDBOOL
|
|
||||||
AC_C_CONST
|
|
||||||
AC_TYPE_UID_T
|
|
||||||
AC_C_INLINE
|
|
||||||
AC_TYPE_MODE_T
|
|
||||||
AC_TYPE_SIZE_T
|
|
||||||
AC_HEADER_TIME
|
|
||||||
AC_STRUCT_TM
|
|
||||||
AC_TYPE_SIGNAL
|
|
||||||
|
|
||||||
AC_CHECK_TYPES(siginfo_t,,,[#include <signal.h>])
|
|
||||||
AC_CHECK_TYPES(ucontext_t,,,[#include <signal.h>])
|
|
||||||
|
|
||||||
# Checks for library functions.
|
|
||||||
AC_PROG_GCC_TRADITIONAL
|
|
||||||
AC_FUNC_MALLOC
|
|
||||||
AC_FUNC_MMAP
|
|
||||||
AC_FUNC_SELECT_ARGTYPES
|
|
||||||
AC_FUNC_STAT
|
|
||||||
AC_FUNC_STRFTIME
|
|
||||||
AC_FUNC_STRTOD
|
|
||||||
AC_FUNC_VPRINTF
|
|
||||||
AC_CHECK_FUNCS([gethostbyname gethostname gettimeofday memmove memset mkdir munmap posix_memalign putenv select sendfile socket sqrt strcasecmp strchr strcspn strerror strncasecmp strrchr strspn strstr strtol strtoull])
|
|
||||||
AC_CHECK_FUNCS([syscall sleep usleep ioctl ioctlsocket sigaction])
|
|
||||||
# this is required for freebsd to compile. Look for it in m4/ac_check_sendfile.m4
|
|
||||||
AC_CHECK_SENDFILE
|
|
||||||
# Other programs
|
|
||||||
AC_CHECK_PROG(OPT_FFMPEG,ffmpeg,yes,no)
|
|
||||||
AC_PATH_PROG(PATH_FFMPEG,ffmpeg)
|
|
||||||
|
|
||||||
# Checks for libraries.
|
|
||||||
AC_CHECK_LIB(rt,clock_gettime,,AC_MSG_ERROR(zm requires librt))
|
|
||||||
AC_SEARCH_LIBS(mysql_init,[mysqlclient mariadbclient],,AC_MSG_ERROR(zm requires libmysqlclient.a or libmariadbclient.a))
|
|
||||||
AC_CHECK_LIB(jpeg,jpeg_start_compress,,AC_MSG_ERROR(zm requires libjpeg.a))
|
|
||||||
AC_CHECK_LIB(pthread,pthread_create,,AC_MSG_ERROR(zm requires libpthread.a))
|
|
||||||
if test "$BSD" == "0"; then
|
|
||||||
AC_CHECK_LIB(dl,dlsym,,AC_MSG_ERROR(zm requires libdl.a))
|
|
||||||
fi
|
|
||||||
if test "$ZM_SSL_LIB" == "openssl"; then
|
|
||||||
AC_CHECK_HEADERS(openssl/md5.h,,AC_MSG_WARN(zm requires openssl/md5.h header to be installed for openssl),)
|
|
||||||
AC_CHECK_LIB(crypto,MD5,,AC_MSG_WARN([libcrypto.a is required for authenticated streaming - use ZM_SSL_LIB option to select gnutls instead]))
|
|
||||||
else
|
|
||||||
AC_CHECK_HEADERS(gnutls/openssl.h,AC_SUBST(ZM_HAS_GNUTLS_OPENSSL,1),AC_SUBST(ZM_HAS_GNUTLS_OPENSSL,0),)
|
|
||||||
AC_CHECK_HEADERS(gnutls/gnutls.h,AC_SUBST(ZM_HAS_GNUTLS,1),AC_SUBST(ZM_HAS_GNUTLS,0),)
|
|
||||||
if test "$ZM_HAS_GNUTLS_OPENSSL" == "0" && test "$ZM_HAS_GNUTLS" == "0"; then
|
|
||||||
AC_MSG_WARN(gnutls is required for authenticated streaming - use ZM_SSL_LIB option to select openssl instead)
|
|
||||||
fi
|
|
||||||
AC_CHECK_HEADERS(gcrypt.h,,AC_MSG_WARN(zm requires libgcrypt headers to be installed for gnutls),)
|
|
||||||
AC_CHECK_LIB(gcrypt,gcry_check_version,,AC_MSG_WARN([libgcrypt.a is required for authenticated streaming - use ZM_SSL_LIB option to select openssl instead]))
|
|
||||||
AC_CHECK_LIB(gnutls,gnutls_fingerprint,,AC_MSG_WARN([libgnutls.a is required for authenticated streaming - use ZM_SSL_LIB option to select openssl instead]))
|
|
||||||
if test "$ZM_HAS_GNUTLS_OPENSSL" == "1"; then
|
|
||||||
AC_CHECK_LIB(gnutls-openssl,MD5,,AC_MSG_WARN([libgnutls.a is required for authenticated streaming - use ZM_SSL_LIB option to select openssl instead]))
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
AC_CHECK_LIB(pcre,pcre_compile,,AC_MSG_WARN(libpcre.a may be required for remote/network camera support))
|
|
||||||
AC_CHECK_LIB(z,zlibVersion)
|
|
||||||
AC_CHECK_LIB(x264,x264_predict_16x16_init)
|
|
||||||
AC_CHECK_LIB(avutil,av_malloc,,AC_MSG_WARN(libavutil.a may be required for MPEG streaming))
|
|
||||||
# Don't bother to warn about this one
|
|
||||||
AC_CHECK_LIB(avcore,av_image_copy,,)
|
|
||||||
AC_CHECK_LIB(avcodec,avcodec_version,,AC_MSG_WARN(libavcodec.a is required for MPEG streaming))
|
|
||||||
AC_CHECK_LIB(avformat,avformat_version,,AC_MSG_WARN(libavformat.a is required for MPEG streaming))
|
|
||||||
#AC_CHECK_LIB(avcodec,avcodec_open,,AC_MSG_WARN(libavcodec.a is required for MPEG streaming))
|
|
||||||
#AC_CHECK_LIB(avformat,av_new_stream,,AC_MSG_WARN(libavformat.a is required for MPEG streaming))
|
|
||||||
AC_CHECK_LIB(avdevice,avdevice_register_all,,AC_MSG_WARN(libavdevice.a may be required for MPEG streaming))
|
|
||||||
AC_CHECK_LIB(swscale,sws_scale,,,-lswscale)
|
|
||||||
AC_CHECK_LIB(vlc,libvlc_new,,AC_MSG_WARN(libvlc.a may be required for streaming))
|
|
||||||
AC_CHECK_LIB(bz2,BZ2_bzCompress,,AC_MSG_WARN(zm requires libbz2.a for recent versions of ffmpeg))
|
|
||||||
AC_CHECK_LIB(z,compress,,)
|
|
||||||
AC_CHECK_LIB(curl,curl_global_init,,)
|
|
||||||
|
|
||||||
# Checks for header files.
|
|
||||||
AC_FUNC_ALLOCA
|
|
||||||
AC_HEADER_STDC
|
|
||||||
AC_CHECK_HEADERS([fcntl.h limits.h memory.h stddef.h stdlib.h string.h strings.h sys/param.h sys/time.h syslog.h unistd.h values.h])
|
|
||||||
AC_CHECK_HEADERS([netdb.h netinet/in.h arpa/inet.h sys/ioctl.h sys/socket.h sys/un.h glob.h sys/sendfile.h])
|
|
||||||
AC_CHECK_HEADERS(execinfo.h,,,)
|
|
||||||
AC_CHECK_HEADERS(ucontext.h,,,)
|
|
||||||
AC_CHECK_HEADERS(sys/syscall.h,,,)
|
|
||||||
AC_CHECK_HEADERS(pthread.h,,,)
|
|
||||||
|
|
||||||
# Check for Video for Linux 1 Header Files
|
|
||||||
ZM_HAS_V4L1=0
|
|
||||||
AC_CHECK_HEADERS([libv4l1-videodev.h linux/videodev.h],[ZM_HAS_V4L1=1; break;],,)
|
|
||||||
AC_SUBST(ZM_HAS_V4L1)
|
|
||||||
|
|
||||||
# Check for Video for Linux 2 Header Files
|
|
||||||
ZM_HAS_V4L2=0
|
|
||||||
AC_CHECK_HEADERS(linux/videodev2.h,ZM_HAS_V4L2=1,,)
|
|
||||||
AC_SUBST(ZM_HAS_V4L2)
|
|
||||||
|
|
||||||
# Set global Video for Linux flag
|
|
||||||
ZM_HAS_V4L=0
|
|
||||||
if test "$ZM_HAS_V4L1" == "1" || test "$ZM_HAS_V4L2" == "1"; then
|
|
||||||
ZM_HAS_V4L=1
|
|
||||||
else
|
|
||||||
AC_MSG_WARN(zm requires Video4Linux or Video4Linux2 to be installed for analog or USB camera support)
|
|
||||||
fi
|
|
||||||
AC_SUBST(ZM_HAS_V4L)
|
|
||||||
|
|
||||||
AC_CHECK_HEADERS(jpeglib.h,,AC_MSG_ERROR(zm requires libjpeg headers to be installed),)
|
|
||||||
AC_CHECK_HEADERS(mysql/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)
|
|
||||||
AC_LANG_PUSH([C])
|
|
||||||
AC_CHECK_HEADERS(libavutil/avutil.h,,,)
|
|
||||||
AC_CHECK_HEADERS(libavcodec/avcodec.h,,,)
|
|
||||||
AC_CHECK_HEADERS(libavformat/avformat.h,,,)
|
|
||||||
AC_CHECK_HEADERS(libswscale/swscale.h,,,)
|
|
||||||
AC_LANG_POP([C])
|
|
||||||
AC_CHECK_HEADERS(pcre/pcre.h,AC_SUBST(ZM_PCRE,"1"),,)
|
|
||||||
AC_CHECK_HEADERS(pcre.h,AC_SUBST(ZM_PCRE,"1"),,)
|
|
||||||
if test "$ENABLE_MMAP" == "yes"; then
|
|
||||||
AC_CHECK_HEADERS(sys/mman.h,,,)
|
|
||||||
AC_CHECK_HEADERS(fcntl.h,,,)
|
|
||||||
else
|
|
||||||
AC_CHECK_HEADERS(sys/ipc.h,,,)
|
|
||||||
AC_CHECK_HEADERS(sys/shm.h,,,)
|
|
||||||
fi
|
|
||||||
AC_CHECK_HEADERS(zlib.h,,,)
|
|
||||||
AC_CHECK_HEADERS(vlc/vlc.h,,,)
|
|
||||||
AC_CHECK_HEADERS(curl/curl.h,,,)
|
|
||||||
|
|
||||||
if test "$ZM_SSL_LIB" == "openssl"; then
|
|
||||||
AC_CHECK_DECLS(MD5,,AC_MSG_ERROR([zm requires openssl/md5.h - use ZM_SSL_LIB option to select gnutls instead]),[#include <stdlib.h>
|
|
||||||
#include <openssl/md5.h>])
|
|
||||||
else
|
|
||||||
if test "$ZM_HAS_GNUTLS_OPENSSL" == "1"; then
|
|
||||||
AC_CHECK_DECLS(MD5,,AC_MSG_ERROR([zm requires gnutls/openssl.h - use ZM_SSL_LIB option to select openssl instead]),[#include <stdlib.h>
|
|
||||||
#include <gnutls/openssl.h>])
|
|
||||||
else
|
|
||||||
AC_CHECK_DECLS(gnutls_fingerprint,,AC_MSG_ERROR([zm requires gnutls/gnutls.h - use ZM_SSL_LIB option to select openssl instead]),[#include <stdlib.h>
|
|
||||||
#include <gnutls/gnutls.h>])
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
AC_CHECK_DECLS(backtrace,,,[#include <execinfo.h>])
|
|
||||||
AC_CHECK_DECLS(backtrace_symbols,,,[#include <execinfo.h>])
|
|
||||||
AC_CHECK_LIB(execinfo,backtrace)
|
|
||||||
|
|
||||||
AC_SUBST(LDFLAGS)
|
|
||||||
|
|
||||||
AC_PROG_PERL_VERSION(5.6.0)
|
|
||||||
|
|
||||||
# Compulsory perl modules
|
|
||||||
AC_PROG_PERL_MODULES(Sys::Syslog,,AC_MSG_ERROR(zm requires SYS:Syslog))
|
|
||||||
AC_PROG_PERL_MODULES(DBI,,AC_MSG_ERROR(zm requires DBI))
|
|
||||||
AC_PROG_PERL_MODULES(DBD::mysql,,AC_MSG_ERROR(zm requires DBD::mysql))
|
|
||||||
AC_PROG_PERL_MODULES(Getopt::Long,,AC_MSG_ERROR(zm requires Getopt::Long))
|
|
||||||
AC_PROG_PERL_MODULES(Time::HiRes,,AC_MSG_ERROR(zm requires Time::HiRes))
|
|
||||||
AC_PROG_PERL_MODULES(Date::Manip,,AC_MSG_ERROR(zm requires Date::Manip))
|
|
||||||
AC_PROG_PERL_MODULES(LWP::UserAgent,,AC_MSG_ERROR(zm requires LWP::UserAgent))
|
|
||||||
AC_PROG_PERL_MODULES(ExtUtils::MakeMaker,,AC_MSG_ERROR(zm requires ExtUtils::MakeMaker))
|
|
||||||
if test "$ENABLE_MMAP" == "yes"; then
|
|
||||||
AC_PROG_PERL_MODULES(Sys::Mmap,,AC_MSG_ERROR(zm requires Sys::Mmap for mapped memory - set --enable-mmap=no to use IPC shared memory instead))
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Optional perl modules
|
|
||||||
AC_PROG_PERL_MODULES(Module::Load,,AC_MSG_WARN(Module::Load is required for PTZ camera control))
|
|
||||||
AC_PROG_PERL_MODULES(Device::SerialPort,,AC_MSG_WARN(Device::SerialPort is required for RS232/RS485 PTZ camera control))
|
|
||||||
AC_PROG_PERL_MODULES(Net::FTP,,AC_MSG_WARN(Net::FTP is required for automatic event uploading using ftp))
|
|
||||||
AC_PROG_PERL_MODULES(Net::SFTP::Foreign,,AC_MSG_WARN(Net::SFTP::Foreign is required for automatic event uploading using sftp))
|
|
||||||
AC_PROG_PERL_MODULES(Expect,,AC_MSG_WARN(Expect is required for automatic event uploading using sftp))
|
|
||||||
AC_PROG_PERL_MODULES(Archive::Tar,,AC_MSG_WARN(Archive::Tar may be required for automatic event uploading))
|
|
||||||
AC_PROG_PERL_MODULES(Archive::Zip,,AC_MSG_WARN(Archive::Zip may be required for automatic event uploading))
|
|
||||||
AC_PROG_PERL_MODULES(Net::SMTP,,AC_MSG_WARN(Net::SMTP may be required for automatic event email notification))
|
|
||||||
AC_PROG_PERL_MODULES(MIME::Lite,,AC_MSG_WARN(MIME::Lite may be required for automatic event email notification))
|
|
||||||
AC_PROG_PERL_MODULES(MIME::Entity,,AC_MSG_WARN(MIME::Entity may be required for automatic event email notification))
|
|
||||||
AC_PROG_PERL_MODULES(X10::ActiveHome,,AC_MSG_WARN(X10::ActiveHome is required for X.10 support))
|
|
||||||
|
|
||||||
AC_DEFINE_DIR([BINDIR],[bindir],[Expanded binary directory])
|
|
||||||
AC_DEFINE_DIR([LIBDIR],[libdir],[Expanded library directory])
|
|
||||||
AC_DEFINE_DIR([DATADIR],[datadir],[Expanded data directory])
|
|
||||||
AC_SUBST(PKGDATADIR,"$DATADIR/$PACKAGE")
|
|
||||||
AC_SUBST(ZM_PID,"$ZM_RUNDIR/zm.pid")
|
|
||||||
#AC_DEFINE_DIR([SYSCONFDIR],[sysconfdir],[Expanded configuration directory])
|
|
||||||
#AC_SUBST(ZM_CONFIG,"$SYSCONFDIR/zm.conf")
|
|
||||||
AC_SUBST(ZM_CONFIG,"$ZM_CONFIG_DIR/zm.conf")
|
|
||||||
|
|
||||||
# Slight hack for non-standard perl install paths
|
|
||||||
if test "$prefix" != "NONE"; then
|
|
||||||
PERL_SITE_PREFIX=`perl -V:siteprefix | sed -e "s/.*='\(.*\)';/\1/"`
|
|
||||||
PERL_SITE_LIB=`perl -V:installsitelib | sed -e "s/.*='\(.*\)';/\1/"`
|
|
||||||
PERL_LIB_PATH=`echo $PERL_SITE_LIB | sed -e "s|^$PERL_SITE_PREFIX||"`
|
|
||||||
EXTRA_PERL_LIB="use lib '$prefix$PERL_LIB_PATH'; # Include custom perl install path"
|
|
||||||
PERL_MM_PARMS="\"PREFIX=$prefix INSTALLDIRS=vendor\""
|
|
||||||
else
|
|
||||||
EXTRA_PERL_LIB="# Include from system perl paths only"
|
|
||||||
PERL_MM_PARMS="\"INSTALLDIRS=vendor\""
|
|
||||||
fi
|
|
||||||
AC_SUBST(PERL_MM_PARMS)
|
|
||||||
AC_SUBST(EXTRA_PERL_LIB)
|
|
||||||
|
|
||||||
AC_CONFIG_FILES([Makefile zm.conf zmconfgen.pl db/Makefile db/zm_create.sql misc/Makefile misc/apache.conf misc/logrotate.conf misc/syslog.conf misc/com.zoneminder.systemctl.policy misc/com.zoneminder.systemctl.rules onvif/Makefile onvif/scripts/Makefile scripts/Makefile scripts/zm scripts/zmaudit.pl scripts/zmcontrol.pl scripts/zmdc.pl scripts/zmfilter.pl scripts/zmpkg.pl scripts/zmtrack.pl scripts/zmcamtool.pl scripts/zmsystemctl.pl scripts/zmtrigger.pl scripts/zmupdate.pl scripts/zmvideo.pl scripts/zmwatch.pl scripts/zmx10.pl scripts/zmdbbackup scripts/zmdbrestore scripts/zmeventdump scripts/zmlogrotate.conf scripts/ZoneMinder/lib/ZoneMinder/Base.pm scripts/ZoneMinder/lib/ZoneMinder/Config.pm scripts/ZoneMinder/lib/ZoneMinder/Memory.pm scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm src/Makefile src/zm_config.h web/Makefile web/ajax/Makefile web/css/Makefile web/graphics/Makefile web/includes/Makefile web/includes/config.php web/js/Makefile web/lang/Makefile web/skins/Makefile web/skins/classic/Makefile web/skins/classic/ajax/Makefile web/skins/classic/css/Makefile web/skins/classic/css/classic/Makefile web/skins/classic/css/classic/views/Makefile web/skins/classic/css/dark/Makefile web/skins/classic/css/dark/views/Makefile web/skins/classic/css/flat/Makefile web/skins/classic/css/flat/views/Makefile web/skins/classic/graphics/Makefile web/skins/classic/includes/Makefile web/skins/classic/js/Makefile web/skins/classic/lang/Makefile web/skins/classic/views/Makefile web/skins/classic/views/js/Makefile web/skins/mobile/Makefile web/skins/mobile/ajax/Makefile web/skins/mobile/css/Makefile web/skins/mobile/graphics/Makefile web/skins/mobile/includes/Makefile web/skins/mobile/lang/Makefile web/skins/mobile/views/Makefile web/skins/mobile/views/css/Makefile web/tools/Makefile web/tools/mootools/Makefile web/views/Makefile web/skins/xml/Makefile web/skins/xml/views/Makefile web/skins/xml/includes/Makefile])
|
|
||||||
|
|
||||||
# Create the definitions for compilation and defaults for the database
|
|
||||||
AC_CONFIG_COMMANDS([src/zm_config_defines.h],[perl ./zmconfgen.pl])
|
|
||||||
# Manually generate the perl Makefile maker
|
|
||||||
AC_CONFIG_COMMANDS([scripts/ZoneMinder/Makefile],[(cd scripts/ZoneMinder; echo "perl Makefile.PL $PERL_MM_PARMS"; perl Makefile.PL $PERL_MM_PARMS)],[PERL_MM_PARMS=$PERL_MM_PARMS])
|
|
||||||
AC_CONFIG_COMMANDS([onvif/modules/Makefile],[(cd onvif/modules; echo "perl Makefile.PL $PERL_MM_PARMS"; perl Makefile.PL $PERL_MM_PARMS)],[PERL_MM_PARMS=$PERL_MM_PARMS])
|
|
||||||
AC_CONFIG_COMMANDS([onvif/proxy/Makefile],[(cd onvif/proxy; echo "perl Makefile.PL $PERL_MM_PARMS"; perl Makefile.PL $PERL_MM_PARMS)],[PERL_MM_PARMS=$PERL_MM_PARMS])
|
|
||||||
|
|
||||||
AC_OUTPUT
|
|
|
@ -1,14 +0,0 @@
|
||||||
AUTOMAKE_OPTIONS = foreign
|
|
||||||
|
|
||||||
zmdbdatadir = $(pkgdatadir)/db
|
|
||||||
|
|
||||||
EXTRA_DIST = \
|
|
||||||
zm_create.sql.in \
|
|
||||||
$(dbupgrade_scripts)
|
|
||||||
|
|
||||||
dist_zmdbdata_DATA = \
|
|
||||||
zm_create.sql \
|
|
||||||
$(dbupgrade_scripts)
|
|
||||||
|
|
||||||
dbupgrade_scripts = $(wildcard zm_update-*.sql)
|
|
||||||
|
|
|
@ -193,6 +193,7 @@ CREATE TABLE `Events` (
|
||||||
`Length` decimal(10,2) NOT NULL default '0.00',
|
`Length` decimal(10,2) NOT NULL default '0.00',
|
||||||
`Frames` int(10) unsigned default NULL,
|
`Frames` int(10) unsigned default NULL,
|
||||||
`AlarmFrames` int(10) unsigned default NULL,
|
`AlarmFrames` int(10) unsigned default NULL,
|
||||||
|
`DefaultVideo` VARCHAR( 64 ) NOT NULL,
|
||||||
`TotScore` int(10) unsigned NOT NULL default '0',
|
`TotScore` int(10) unsigned NOT NULL default '0',
|
||||||
`AvgScore` smallint(5) unsigned default '0',
|
`AvgScore` smallint(5) unsigned default '0',
|
||||||
`MaxScore` smallint(5) unsigned default '0',
|
`MaxScore` smallint(5) unsigned default '0',
|
||||||
|
@ -271,7 +272,7 @@ CREATE TABLE `Logs` (
|
||||||
`TimeKey` decimal(16,6) NOT NULL,
|
`TimeKey` decimal(16,6) NOT NULL,
|
||||||
`Component` varchar(32) NOT NULL,
|
`Component` varchar(32) NOT NULL,
|
||||||
`ServerId` int(10) unsigned,
|
`ServerId` int(10) unsigned,
|
||||||
`Pid` smallint(6) DEFAULT NULL,
|
`Pid` int(10) DEFAULT NULL,
|
||||||
`Level` tinyint(3) NOT NULL,
|
`Level` tinyint(3) NOT NULL,
|
||||||
`Code` char(3) NOT NULL,
|
`Code` char(3) NOT NULL,
|
||||||
`Message` text NOT NULL,
|
`Message` text NOT NULL,
|
||||||
|
@ -346,6 +347,10 @@ CREATE TABLE `Monitors` (
|
||||||
`Palette` int(10) unsigned NOT NULL default '0',
|
`Palette` int(10) unsigned NOT NULL default '0',
|
||||||
`Orientation` enum('0','90','180','270','hori','vert') NOT NULL default '0',
|
`Orientation` enum('0','90','180','270','hori','vert') NOT NULL default '0',
|
||||||
`Deinterlacing` int(10) unsigned NOT NULL default '0',
|
`Deinterlacing` int(10) unsigned NOT NULL default '0',
|
||||||
|
`SaveJPEGs` TINYINT NOT NULL DEFAULT '3' ,
|
||||||
|
`VideoWriter` TINYINT NOT NULL DEFAULT '0',
|
||||||
|
`EncoderParameters` TEXT NOT NULL,
|
||||||
|
`RecordAudio` TINYINT NOT NULL DEFAULT '0',
|
||||||
`RTSPDescribe` tinyint(1) unsigned NOT NULL default '0',
|
`RTSPDescribe` tinyint(1) unsigned NOT NULL default '0',
|
||||||
`Brightness` mediumint(7) NOT NULL default '-1',
|
`Brightness` mediumint(7) NOT NULL default '-1',
|
||||||
`Contrast` mediumint(7) NOT NULL default '-1',
|
`Contrast` mediumint(7) NOT NULL default '-1',
|
||||||
|
@ -579,7 +584,7 @@ insert into Users VALUES (NULL,'admin',password('admin'),'',1,'View','Edit','Edi
|
||||||
--
|
--
|
||||||
-- Add a sample filter to purge the oldest 100 events when the disk is 95% full
|
-- Add a sample filter to purge the oldest 100 events when the disk is 95% full
|
||||||
--
|
--
|
||||||
insert into Filters values ('PurgeWhenFull','{"sort_field":"Id","terms":[{"val":0,"attr":"Archived","op":"="},{"cnj":"and","val":95,"attr":"DiskPercent","op":">="}],"limit":100,"sort_asc":1}',0,0,0,0,0,0,'',1,1);
|
insert into Filters values ('PurgeWhenFull','{"sort_field":"Id","terms":[{"val":0,"attr":"Archived","op":"="},{"cnj":"and","val":95,"attr":"DiskPercent","op":">="}],"limit":100,"sort_asc":1}',0,0,0,0,0,0,'',1,1,0);
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Add in some sample control protocol definitions
|
-- Add in some sample control protocol definitions
|
||||||
|
@ -608,6 +613,7 @@ INSERT INTO `Controls` VALUES (NULL,'SunEyes SP-P1802SWPTZ','Libvlc','SPP1802SWP
|
||||||
INSERT INTO `Controls` VALUES (NULL,'Wanscam HW0025','Libvlc','WanscamHW0025', 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 350, 0, 0, 1, 0, 10, 0, 0, 1, 0, 0, 0, 0, 1, 0, 10, 0, 0, 0, 0);
|
INSERT INTO `Controls` VALUES (NULL,'Wanscam HW0025','Libvlc','WanscamHW0025', 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 350, 0, 0, 1, 0, 10, 0, 0, 1, 0, 0, 0, 0, 1, 0, 10, 0, 0, 0, 0);
|
||||||
INSERT INTO `Controls` VALUES (NULL,'IPCC 7210W','Libvlc','IPCC7210W', 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 350, 0, 0, 1, 0, 10, 0, 0, 1, 0, 0, 0, 0, 1, 0, 10, 0, 0, 0, 0);
|
INSERT INTO `Controls` VALUES (NULL,'IPCC 7210W','Libvlc','IPCC7210W', 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 16, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 350, 0, 0, 1, 0, 10, 0, 0, 1, 0, 0, 0, 0, 1, 0, 10, 0, 0, 0, 0);
|
||||||
INSERT INTO `Controls` VALUES (NULL,'Vivotek ePTZ','Remote','Vivotek_ePTZ',0,0,1,1,0,0,0,1,0,0,0,0,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,1,0,5,0,0,1,0,0,0,0,1,0,5,0,0,0,0);
|
INSERT INTO `Controls` VALUES (NULL,'Vivotek ePTZ','Remote','Vivotek_ePTZ',0,0,1,1,0,0,0,1,0,0,0,0,1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,1,1,0,0,0,0,1,0,5,0,0,1,0,0,0,0,1,0,5,0,0,0,0);
|
||||||
|
INSERT INTO `Controls` VALUES (NULL,'Netcat ONVIF','Ffmpeg','Netcat',0,0,1,1,0,0,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,0,0,100,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,100,5,5,0,0,0,1,255,1,1,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0);
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Add some monitor preset values
|
-- Add some monitor preset values
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
--
|
--
|
||||||
-- This updates a 1.28.110 database to 1.28.111
|
-- This updates a 1.29.0 database to 1.29.1
|
||||||
--
|
--
|
||||||
|
|
||||||
SET @s = (SELECT IF(
|
SET @s = (SELECT IF(
|
||||||
|
@ -55,3 +55,6 @@ SET @s = (SELECT IF(
|
||||||
|
|
||||||
PREPARE stmt FROM @s;
|
PREPARE stmt FROM @s;
|
||||||
EXECUTE stmt;
|
EXECUTE stmt;
|
||||||
|
|
||||||
|
-- Increase the size of the Pid field for FreeBSD
|
||||||
|
ALTER TABLE Logs MODIFY Pid int(10);
|
||||||
|
|
|
@ -0,0 +1,73 @@
|
||||||
|
--
|
||||||
|
-- This updates a 1.29.0 database to 1.30.0
|
||||||
|
--
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Monitors'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'SaveJPEGs'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column SaveJPEGs exists in Monitors'",
|
||||||
|
"ALTER TABLE `Monitors` ADD `SaveJPEGs` TINYINT NOT NULL DEFAULT '3' AFTER `Deinterlacing`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Monitors'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'VideoWriter'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column VideoWriter exists in Monitors'",
|
||||||
|
"ALTER TABLE `Monitors` ADD `VideoWriter` TINYINT NOT NULL DEFAULT '0' AFTER `SaveJPEGs`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Monitors'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'EncoderParameters'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column EncoderParameters exists in Monitors'",
|
||||||
|
"ALTER TABLE `Monitors` ADD `EncoderParameters` TEXT NOT NULL AFTER `VideoWriter`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Events'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'DefaultVideo'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column DefaultVideo exists in Events'",
|
||||||
|
"ALTER TABLE `Events` ADD `DefaultVideo` VARCHAR( 64 ) NOT NULL AFTER `AlarmFrames`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Monitors'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'RecordAudio'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column RecordAudio exists in Monitors'",
|
||||||
|
"ALTER TABLE `Monitors` ADD `RecordAudio` TINYINT NOT NULL DEFAULT '0' AFTER `EncoderParameters`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
|
@ -0,0 +1,73 @@
|
||||||
|
--
|
||||||
|
-- This updates a 1.29.0 database to 1.30.0
|
||||||
|
--
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Monitors'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'SaveJPEGs'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column SaveJPEGs exists in Monitors'",
|
||||||
|
"ALTER TABLE `Monitors` ADD `SaveJPEGs` TINYINT NOT NULL DEFAULT '3' AFTER `Deinterlacing`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Monitors'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'VideoWriter'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column VideoWriter exists in Monitors'",
|
||||||
|
"ALTER TABLE `Monitors` ADD `VideoWriter` TINYINT NOT NULL DEFAULT '0' AFTER `SaveJPEGs`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Monitors'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'EncoderParameters'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column EncoderParameters exists in Monitors'",
|
||||||
|
"ALTER TABLE `Monitors` ADD `EncoderParameters` TEXT NOT NULL AFTER `VideoWriter`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Events'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'DefaultVideo'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column DefaultVideo exists in Events'",
|
||||||
|
"ALTER TABLE `Events` ADD `DefaultVideo` VARCHAR( 64 ) NOT NULL AFTER `AlarmFrames`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
||||||
|
|
||||||
|
SET @s = (SELECT IF(
|
||||||
|
(SELECT COUNT(*)
|
||||||
|
FROM INFORMATION_SCHEMA.COLUMNS
|
||||||
|
WHERE table_name = 'Monitors'
|
||||||
|
AND table_schema = DATABASE()
|
||||||
|
AND column_name = 'RecordAudio'
|
||||||
|
) > 0,
|
||||||
|
"SELECT 'Column RecordAudio exists in Monitors'",
|
||||||
|
"ALTER TABLE `Monitors` ADD `RecordAudio` TINYINT NOT NULL DEFAULT '0' AFTER `EncoderParameters`"
|
||||||
|
));
|
||||||
|
|
||||||
|
PREPARE stmt FROM @s;
|
||||||
|
EXECUTE stmt;
|
|
@ -1,5 +0,0 @@
|
||||||
This package uses quilt to manage all modifications to the upstream source.
|
|
||||||
Changes are stored in the source package as diffs in debian/patches and applied
|
|
||||||
during the build.
|
|
||||||
|
|
||||||
See /usr/share/doc/quilt/README.source for a detailed explanation.
|
|
|
@ -1,3 +1,32 @@
|
||||||
|
zoneminder (1.28.108-nmu2015100101) wheezy; urgency=low
|
||||||
|
|
||||||
|
*
|
||||||
|
|
||||||
|
-- Isaac Connor <iconnor@connortechnology.com> Thu, 01 Oct 2015 18:20:29 +0000
|
||||||
|
|
||||||
|
zoneminder (1.28.107-nmu2015092401) wheezy; urgency=low
|
||||||
|
|
||||||
|
*
|
||||||
|
|
||||||
|
-- Isaac Connor <iconnor@connortechnology.com> Thu, 24 Sep 2015 14:15:46 +0000
|
||||||
|
|
||||||
|
zoneminder (1.28.1+106-nmu2015091001) wheezy; urgency=low
|
||||||
|
|
||||||
|
*
|
||||||
|
|
||||||
|
-- Isaac Connor <iconnor@connortechnology.com> Thu, 10 Sep 2015 18:03:43 +0000
|
||||||
|
|
||||||
|
zoneminder (1.28.0-0.1) wheezy; urgency=low
|
||||||
|
|
||||||
|
* Use CMake instead of Autotools to simplify
|
||||||
|
debian/rules and have less build-depends.
|
||||||
|
* Some lintian love in debian/{control,copyright}
|
||||||
|
and perl ZoneMinder modules.
|
||||||
|
* Don't purge database if we use a remote
|
||||||
|
MySQL server.
|
||||||
|
|
||||||
|
-- Cosme Domínguez Díaz <cosme.ddiaz@gmail.com> Sun, 09 Nov 2014 02:20:20 +0100
|
||||||
|
|
||||||
zoneminder (1.28.0-wheezy) wheezy; urgency=medium
|
zoneminder (1.28.0-wheezy) wheezy; urgency=medium
|
||||||
|
|
||||||
* Release
|
* Release
|
||||||
|
|
|
@ -2,12 +2,43 @@ Source: zoneminder
|
||||||
Section: net
|
Section: net
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Maintainer: Isaac Connor <iconnor@connortechnology.com>
|
Maintainer: Isaac Connor <iconnor@connortechnology.com>
|
||||||
Build-Depends: debhelper (>= 9), autoconf, automake, quilt, libphp-serialization-perl, libgnutls-dev|libgnutls28-dev, libmysqlclient-dev | libmariadbclient-dev, libdbd-mysql-perl, libdate-manip-perl, libwww-perl, libjpeg8-dev|libjpeg9-dev|libjpeg62-turbo-dev, libpcre3-dev, libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev, libv4l-dev (>= 0.8.3), libbz2-dev, libtool, libsys-mmap-perl, ffmpeg | libav-tools, libnetpbm10-dev, libavdevice-dev, libdevice-serialport-perl, libarchive-zip-perl, libmime-lite-perl, dh-autoreconf, libvlccore-dev, libvlc-dev, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libgcrypt11-dev|libgcrypt20-dev, libpolkit-gobject-1-dev
|
Build-Depends: debhelper (>= 9), cmake
|
||||||
|
, libphp-serialization-perl
|
||||||
|
, libgnutls28-dev | libgnutls-dev
|
||||||
|
, libmysqlclient-dev | libmariadbclient-dev
|
||||||
|
, libjpeg8-dev
|
||||||
|
, libpcre3-dev
|
||||||
|
, libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev
|
||||||
|
, libv4l-dev (>= 0.8.3)
|
||||||
|
, libbz2-dev
|
||||||
|
, libav-tools
|
||||||
|
, libnetpbm10-dev
|
||||||
|
, libavdevice-dev
|
||||||
|
, libvlccore-dev, libvlc-dev
|
||||||
|
, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev
|
||||||
|
, libgcrypt11-dev, libpolkit-gobject-1-dev
|
||||||
Standards-Version: 3.9.4
|
Standards-Version: 3.9.4
|
||||||
|
|
||||||
Package: zoneminder
|
Package: zoneminder
|
||||||
Architecture: any
|
Architecture: any
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, apache2, libapache2-mod-php5 | libapache2-mod-fcgid, php5, php5-mysql|php5-mysqlnd, libphp-serialization-perl, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl, mariadb-client|mysql-client, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl, libpcre3, ffmpeg | libav-tools, rsyslog | system-log-daemon, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl, netpbm, libavdevice53 | libavdevice55, libjpeg8|libjpeg9|libjpeg62-turbo, zip, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl, libvlccore5 | libvlccore7 | libvlccore8, libvlc5, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libpolkit-gobject-1-0, liburi-encode-perl, php5-gd
|
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}
|
||||||
|
, apache2 | httpd, libapache2-mod-php5 | libapache2-mod-fcgid | php5-fpm
|
||||||
|
, php5-mysqlnd | php5-mysql
|
||||||
|
, mariadb-client | mysql-client
|
||||||
|
, libphp-serialization-perl
|
||||||
|
, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl, libdbd-mysql-perl
|
||||||
|
, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl
|
||||||
|
, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl
|
||||||
|
, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl
|
||||||
|
, libdata-dump-perl, libclass-std-fast-perl, libsoap-wsdl-perl, libio-socket-multicast-perl, libdigest-sha-perl
|
||||||
|
, libsys-cpu-perl, libsys-meminfo-perl
|
||||||
|
, libpcre3
|
||||||
|
, libav-tools, libavdevice53
|
||||||
|
, rsyslog | system-log-daemon
|
||||||
|
, netpbm , libjpeg8
|
||||||
|
, zip
|
||||||
|
, libvlccore5 | libvlccore7, libvlc5
|
||||||
|
, libpolkit-gobject-1-0, php5-gd
|
||||||
Recommends: mysql-server | mariadb-server
|
Recommends: mysql-server | mariadb-server
|
||||||
Description: Video camera security and surveillance solution
|
Description: Video camera security and surveillance solution
|
||||||
ZoneMinder is intended for use in single or multi-camera video security
|
ZoneMinder is intended for use in single or multi-camera video security
|
||||||
|
@ -22,9 +53,9 @@ Description: Video camera security and surveillance solution
|
||||||
via X.10 or other protocols.
|
via X.10 or other protocols.
|
||||||
|
|
||||||
Package: zoneminder-dbg
|
Package: zoneminder-dbg
|
||||||
|
Architecture: any
|
||||||
Section: debug
|
Section: debug
|
||||||
Priority: extra
|
Priority: extra
|
||||||
Architecture: any
|
|
||||||
Depends: zoneminder (= ${binary:Version}), ${misc:Depends}
|
Depends: zoneminder (= ${binary:Version}), ${misc:Depends}
|
||||||
Description: Debugging symbols for zoneminder.
|
Description: Debugging symbols for zoneminder.
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
ZoneMinder is a video camera security and surveillance solution.
|
||||||
|
|
|
@ -20,3 +20,38 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
|
|
||||||
On Debian GNU/Linux systems, the text of the GPL can be found in
|
On Debian GNU/Linux systems, the text of the GPL can be found in
|
||||||
/usr/share/common-licenses/GPL.
|
/usr/share/common-licenses/GPL.
|
||||||
|
|
||||||
|
/usr/share/zoneminder/api/lib/Cake/*:
|
||||||
|
Copyright:
|
||||||
|
|
||||||
|
Copyright (c) 2005-2013, Cake Software Foundation, Inc.
|
||||||
|
|
||||||
|
License:
|
||||||
|
|
||||||
|
CakePHP(tm) : The Rapid Development PHP Framework (http://cakephp.org)
|
||||||
|
|
||||||
|
The MIT License
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
copy of this software and associated documentation files (the "Software"),
|
||||||
|
to deal in the Software without restriction, including without limitation
|
||||||
|
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
|
and/or sell copies of the Software, and to permit persons to whom the
|
||||||
|
Software is furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||||
|
DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
Cake Software Foundation, Inc.
|
||||||
|
1785 E. Sahara Avenue,
|
||||||
|
Suite 490-204
|
||||||
|
Las Vegas, Nevada 89104,
|
||||||
|
United States of America.
|
||||||
|
|
|
@ -3,4 +3,3 @@ var/lib/zm
|
||||||
var/cache/zoneminder/events
|
var/cache/zoneminder/events
|
||||||
var/cache/zoneminder/images
|
var/cache/zoneminder/images
|
||||||
var/cache/zoneminder/temp
|
var/cache/zoneminder/temp
|
||||||
usr/share/zoneminder/db
|
|
||||||
|
|
|
@ -24,12 +24,10 @@ command="$ZM_PATH_BIN/zmpkg.pl"
|
||||||
start() {
|
start() {
|
||||||
echo -n "Starting $prog: "
|
echo -n "Starting $prog: "
|
||||||
export TZ=:/etc/localtime
|
export TZ=:/etc/localtime
|
||||||
mkdir -p $RUNDIR && chown www-data:www-data $RUNDIR
|
mkdir -p $RUNDIR $TMPDIR && chown www-data:www-data $RUNDIR $TMPDIR
|
||||||
mkdir -p $TMPDIR && chown www-data:www-data $TMPDIR
|
|
||||||
$command start
|
$command start
|
||||||
RETVAL=$?
|
RETVAL=$?
|
||||||
[ $RETVAL = 0 ] && echo success
|
[ $RETVAL = 0 ] && echo success || echo failure
|
||||||
[ $RETVAL != 0 ] && echo failure
|
|
||||||
echo
|
echo
|
||||||
[ $RETVAL = 0 ] && touch /var/lock/zm
|
[ $RETVAL = 0 ] && touch /var/lock/zm
|
||||||
return $RETVAL
|
return $RETVAL
|
||||||
|
@ -52,8 +50,7 @@ stop() {
|
||||||
else
|
else
|
||||||
$command stop
|
$command stop
|
||||||
RETVAL=$?
|
RETVAL=$?
|
||||||
[ $RETVAL = 0 ] && echo success
|
[ $RETVAL = 0 ] && echo success || echo failure
|
||||||
[ $RETVAL != 0 ] && echo failure
|
|
||||||
echo
|
echo
|
||||||
[ $RETVAL = 0 ] && rm -f /var/lock/zm
|
[ $RETVAL = 0 ] && rm -f /var/lock/zm
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,12 +1,8 @@
|
||||||
usr/bin
|
usr/bin
|
||||||
usr/lib/cgi-bin
|
usr/lib/zoneminder/cgi-bin
|
||||||
usr/share/man
|
usr/share/man
|
||||||
usr/share/perl5/ZoneMinder
|
usr/share/perl5/ZoneMinder
|
||||||
usr/share/perl5/ZoneMinder.pm
|
usr/share/perl5/ZoneMinder.pm
|
||||||
usr/share/polkit-1/actions
|
usr/share/zoneminder/db
|
||||||
usr/share/polkit-1/rules.d
|
usr/share/zoneminder/www
|
||||||
usr/share/zoneminder
|
|
||||||
etc/zm
|
etc/zm
|
||||||
db/zm_create.sql usr/share/zoneminder/db
|
|
||||||
db/zm_update-*.sql usr/share/zoneminder/db
|
|
||||||
debian/apache.conf etc/zm
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
var/cache/zoneminder/events usr/share/zoneminder/events
|
var/cache/zoneminder/events usr/share/zoneminder/events
|
||||||
var/cache/zoneminder/images usr/share/zoneminder/images
|
var/cache/zoneminder/images usr/share/zoneminder/images
|
||||||
var/cache/zoneminder/temp usr/share/zoneminder/temp
|
var/cache/zoneminder/temp usr/share/zoneminder/temp
|
||||||
usr/lib/cgi-bin usr/share/zoneminder/cgi-bin
|
|
||||||
|
|
|
@ -15,7 +15,7 @@ if [ "$1" = "configure" ]; then
|
||||||
# test if database if already present...
|
# test if database if already present...
|
||||||
if ! $(echo quit | mysql --defaults-file=/etc/mysql/debian.cnf zm > /dev/null 2> /dev/null) ; then
|
if ! $(echo quit | mysql --defaults-file=/etc/mysql/debian.cnf zm > /dev/null 2> /dev/null) ; then
|
||||||
cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/debian.cnf
|
cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/debian.cnf
|
||||||
echo 'grant lock tables, alter,select,insert,update,delete,create,index on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
||||||
fi
|
fi
|
||||||
|
|
||||||
invoke-rc.d zoneminder stop || true
|
invoke-rc.d zoneminder stop || true
|
||||||
|
@ -47,8 +47,6 @@ if [ "$1" = "configure" ]; then
|
||||||
chown www-data:www-data -R /var/cache/zoneminder
|
chown www-data:www-data -R /var/cache/zoneminder
|
||||||
else
|
else
|
||||||
chown www-data:www-data /var/log/zm
|
chown www-data:www-data /var/log/zm
|
||||||
|
|
||||||
echo 'grant lock tables, create, index, alter on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
|
||||||
zmupdate.pl
|
zmupdate.pl
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
# set -e # to be reinstated later
|
set -e
|
||||||
|
|
||||||
if [ "$1" = "purge" ]; then
|
if [ "$1" = "purge" ]; then
|
||||||
|
if [ -e "/etc/init.d/mysql" ]; then
|
||||||
echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
||||||
echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
||||||
mysqladmin --defaults-file=/etc/mysql/debian.cnf -f drop zm
|
mysqladmin --defaults-file=/etc/mysql/debian.cnf -f drop zm
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
#DEBHELPER#
|
#DEBHELPER#
|
||||||
|
|
|
@ -1,66 +1,41 @@
|
||||||
#!/usr/bin/make -f
|
#!/usr/bin/make -f
|
||||||
# -*- makefile -*-
|
# -*- makefile -*-
|
||||||
# Sample debian/rules that uses debhelper.
|
|
||||||
# This file was originally written by Joey Hess and Craig Small.
|
|
||||||
# As a special exception, when this file is copied by dh-make into a
|
|
||||||
# dh-make output file, you may use that output file without restriction.
|
|
||||||
# This special exception was added by Craig Small in version 0.37 of dh-make.
|
|
||||||
|
|
||||||
# Uncomment this to turn on verbose mode.
|
# Uncomment this to turn on verbose mode.
|
||||||
#export DH_VERBOSE=1
|
#export DH_VERBOSE=1
|
||||||
|
|
||||||
# These are used for cross-compiling and for saving the configure script
|
export CFLAGS = -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -pipe
|
||||||
# from having to guess our platform (since we know it already)
|
export CXXFLAGS = -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -pipe
|
||||||
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
|
INSTDIR = debian/tmp
|
||||||
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
|
|
||||||
|
|
||||||
CFLAGS = -Wall -g
|
|
||||||
CPPFLAGS = -D__STDC_CONSTANT_MACROS
|
|
||||||
CXXFLAGS = -DHAVE_LIBCRYPTO
|
|
||||||
|
|
||||||
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
|
|
||||||
CFLAGS += -O0
|
|
||||||
else
|
|
||||||
CFLAGS += -O2
|
|
||||||
endif
|
|
||||||
|
|
||||||
%:
|
|
||||||
dh $@ --with quilt,autoreconf
|
|
||||||
|
|
||||||
override_dh_auto_configure:
|
override_dh_auto_configure:
|
||||||
CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" dh_auto_configure -- --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --sysconfdir=/etc/zm --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --with-mysql=/usr --with-mariadb=/usr --with-webdir=/usr/share/zoneminder --with-ffmpeg=/usr --with-cgidir=/usr/lib/cgi-bin --with-webuser=www-data --with-webgroup=www-data --enable-crashtrace=no --enable-mmap=yes
|
dh_auto_configure -- \
|
||||||
|
-DCMAKE_INSTALL_PREFIX=/usr \
|
||||||
|
-DCMAKE_SKIP_RPATH=ON \
|
||||||
|
-DCMAKE_VERBOSE_MAKEFILE=OFF \
|
||||||
|
-DCMAKE_COLOR_MAKEFILE=ON \
|
||||||
|
-DZM_RUNDIR=/var/run/zm \
|
||||||
|
-DZM_SOCKDIR=/var/run/zm \
|
||||||
|
-DZM_TMPDIR=/var/tmp/zm \
|
||||||
|
-DZM_LOGDIR=/var/log/zm \
|
||||||
|
-DZM_WEBDIR=/usr/share/zoneminder/www \
|
||||||
|
-DZM_CONTENTDIR=/var/cache/zoneminder \
|
||||||
|
-DZM_CGIDIR=/usr/lib/zoneminder/cgi-bin \
|
||||||
|
-DZM_WEB_USER=www-data \
|
||||||
|
-DZM_WEB_GROUP=www-data \
|
||||||
|
-DCMAKE_INSTALL_SYSCONFDIR=etc/zm
|
||||||
|
|
||||||
override_dh_clean:
|
override_dh_auto_install:
|
||||||
# Add here commands to clean up after the build process.
|
dh_auto_install --buildsystem=cmake
|
||||||
[ ! -f Makefile ] || $(MAKE) distclean
|
install -D -m 0644 debian/apache.conf $(INSTDIR)/etc/zm/apache.conf
|
||||||
dh_clean
|
rm $(INSTDIR)/usr/share/zoneminder/api/lib/Cake/LICENSE.txt
|
||||||
|
rm $(INSTDIR)/usr/share/zoneminder/api/.gitignore
|
||||||
override_dh_install:
|
rm -r $(INSTDIR)/usr/share/zoneminder/api/lib/Cake/Test
|
||||||
dh_install --fail-missing
|
|
||||||
#
|
|
||||||
# NOTE: This is a short-term kludge; hopefully changes in the next
|
|
||||||
# upstream version will render this unnecessary.
|
|
||||||
rm -rf debian/zoneminder/usr/share/zoneminder/events
|
|
||||||
rm -rf debian/zoneminder/usr/share/zoneminder/images
|
|
||||||
rm -rf debian/zoneminder/usr/share/zoneminder/temp
|
|
||||||
dh_link var/cache/zoneminder/events usr/share/zoneminder/events
|
|
||||||
dh_link var/cache/zoneminder/images usr/share/zoneminder/images
|
|
||||||
dh_link var/cache/zoneminder/temp usr/share/zoneminder/temp
|
|
||||||
#
|
|
||||||
# This is a slightly lesser kludge; moving the cgi stuff to
|
|
||||||
# /usr/share/zoneminder/cgi-bin breaks one set of behavior,
|
|
||||||
# having it just in /usr/lib/cgi-bin breaks another bit of
|
|
||||||
# behavior.
|
|
||||||
#
|
|
||||||
dh_link usr/lib/cgi-bin usr/share/zoneminder/cgi-bin
|
|
||||||
|
|
||||||
override_dh_fixperms:
|
|
||||||
dh_fixperms
|
|
||||||
chown root:root debian/zoneminder/etc/zm/zm.conf
|
|
||||||
|
|
||||||
override_dh_auto_test:
|
override_dh_auto_test:
|
||||||
# do not run tests...
|
# do not run tests...
|
||||||
|
|
||||||
.PHONY: override_dh_strip
|
|
||||||
override_dh_strip:
|
override_dh_strip:
|
||||||
dh_strip --dbg-package=zoneminder-dbg
|
dh_strip --dbg-package=zoneminder-dbg
|
||||||
|
|
||||||
|
%:
|
||||||
|
dh $@ --buildsystem=cmake --parallel
|
||||||
|
|
|
@ -1,51 +0,0 @@
|
||||||
zoneminder for Debian
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
There is one manual step to get the web interface working.
|
|
||||||
You need to link /etc/zm/apache.conf to /etc/apache2/conf.d/zoneminder.conf,
|
|
||||||
then reload the apache config (i.e. /etc/init.d/apache2 reload)
|
|
||||||
|
|
||||||
Changing the location for images and events
|
|
||||||
-------------------------------------------
|
|
||||||
|
|
||||||
Zoneminder, in its upstream form, stores data in /usr/share/zoneminder/. This
|
|
||||||
package modifies that by changing /usr/share/zoneminder/images and
|
|
||||||
/usr/share/zoneminder/events to symlinks to directories under
|
|
||||||
/var/cache/zoneminder.
|
|
||||||
|
|
||||||
There are numerous places these could be put and ways to do it. But, at the
|
|
||||||
moment, if you change this, an upgrade will fail with a warning about these
|
|
||||||
locations having changed (the reason for this was that previously, an upgrade
|
|
||||||
would silently revert the changes and cause event loss - refer
|
|
||||||
bug #608793).
|
|
||||||
|
|
||||||
If you do want to change the location, here are a couple of suggestions.
|
|
||||||
|
|
||||||
These lines would mount /dev/sdX1 to /video_storage, and then 'link' /video_storage
|
|
||||||
to the locations that ZoneMinder expects them to be at.
|
|
||||||
|
|
||||||
/dev/sdX1 /video_storage ext4 defaults 0 2
|
|
||||||
/video_storage/zoneminder/images /var/cache/zoneminder/images none bind 0 2
|
|
||||||
/video_storage/zoneminder/events /var/cache/zoneminder/events none bind 0 2
|
|
||||||
|
|
||||||
or if you have a separate partition for each:
|
|
||||||
|
|
||||||
/dev/sdX1 /var/cache/zoneminder/images ext4 defaults 0 2
|
|
||||||
/dev/sdX2 /var/cache/zoneminder/events ext4 defaults 0 2
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Peter Howard <pjh@northern-ridge.com.au>, Sun, 16 Jan 2010 01:35:51 +1100
|
|
||||||
|
|
||||||
Access to /dev/video*
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
For cameras which require access to /dev/video*, zoneminder may need the
|
|
||||||
www-data user added to the video group in order to see those cameras:
|
|
||||||
|
|
||||||
adduser www-data video
|
|
||||||
|
|
||||||
Note that all web applications running on the zoneminder server will then have
|
|
||||||
access to all video devices on the system.
|
|
||||||
|
|
||||||
-- Vagrant Cascadian <vagrant@debian.org> Sun, 27 Mar 2011 13:06:56 -0700
|
|
|
@ -1,20 +0,0 @@
|
||||||
# Remember to enable cgi mod (i.e. "a2enmod cgi").
|
|
||||||
ScriptAlias /zm/cgi-bin "/usr/lib/zoneminder/cgi-bin"
|
|
||||||
<Directory "/usr/lib/zoneminder/cgi-bin">
|
|
||||||
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
|
|
||||||
AllowOverride All
|
|
||||||
Require all granted
|
|
||||||
</Directory>
|
|
||||||
|
|
||||||
Alias /zm /usr/share/zoneminder/www
|
|
||||||
<Directory /usr/share/zoneminder/www>
|
|
||||||
php_flag register_globals off
|
|
||||||
Options Indexes FollowSymLinks
|
|
||||||
<IfModule mod_dir.c>
|
|
||||||
DirectoryIndex index.php
|
|
||||||
</IfModule>
|
|
||||||
</Directory>
|
|
||||||
|
|
||||||
<Directory /usr/share/zoneminder/www/api>
|
|
||||||
AllowOverride All
|
|
||||||
</Directory>
|
|
|
@ -1,41 +0,0 @@
|
||||||
zoneminder (1.28.0+nmu1) testing; urgency=medium
|
|
||||||
|
|
||||||
* Non-maintainer upload
|
|
||||||
* Split the debian package into several packages
|
|
||||||
* Switch to native source format
|
|
||||||
|
|
||||||
-- Emmanuel Papin <manupap01@gmail.com> Thu, 15 Jan 2015 20:00:08 +0100
|
|
||||||
|
|
||||||
zoneminder (1.28.0-0.2) testing; urgency=medium
|
|
||||||
|
|
||||||
* Non-maintainer upload.
|
|
||||||
* Upstream release for debian jessie
|
|
||||||
* Package dependencies updated
|
|
||||||
* debhelper version upgraded
|
|
||||||
* Standards-Version upgraded
|
|
||||||
* Use debhelper commands instead of standard commands
|
|
||||||
* Install man pages in /usr/share/man (patch added)
|
|
||||||
* Switch to quilt
|
|
||||||
* Switch to systemd
|
|
||||||
* Some lintian fixes
|
|
||||||
|
|
||||||
-- Emmanuel Papin <manupap01@gmail.com> Wed, 26 Nov 2014 00:26:01 +0100
|
|
||||||
|
|
||||||
zoneminder (1.28.0-0.1) stable; urgency=medium
|
|
||||||
|
|
||||||
* Release
|
|
||||||
|
|
||||||
-- Isaac Connor <iconnor@connortechnology.com> Fri, 17 Oct 2014 09:27:22 -0400
|
|
||||||
|
|
||||||
zoneminder (1.27.99+1-testing-SNAPSHOT2014072901) testing; urgency=medium
|
|
||||||
|
|
||||||
* improve error messages
|
|
||||||
* Make zmupdate re-run the most recent patch so that people running the daily builds get their db updates
|
|
||||||
|
|
||||||
-- Isaac Connor <iconnor@connortechnology.com> Tue, 29 Jul 2014 14:50:20 -0400
|
|
||||||
|
|
||||||
zoneminder (1.27.0+1-testing-v4ltomonitor-1) testing; urgency=high
|
|
||||||
|
|
||||||
* Snapshot release -
|
|
||||||
|
|
||||||
-- Isaac Connor <iconnor@connortechnology.com> Wed, 09 Jul 2014 21:35:29 -0400
|
|
|
@ -1 +0,0 @@
|
||||||
9
|
|
|
@ -1,122 +0,0 @@
|
||||||
Source: zoneminder
|
|
||||||
Section: net
|
|
||||||
Priority: optional
|
|
||||||
Maintainer: Isaac Connor <iconnor@connortechnology.com>
|
|
||||||
Build-Depends: debhelper (>= 9), po-debconf (>= 1.0), dh-systemd (>= 1.5), autoconf, automake, libphp-serialization-perl, libgnutls28-dev, libmysqlclient-dev | libmariadbclient-dev, libdbd-mysql-perl, libdate-manip-perl, libwww-perl, libjpeg8-dev | libjpeg9-dev | libjpeg62-turbo-dev, libpcre3-dev, libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev, libv4l-dev (>= 0.8.3), libbz2-dev, libtool, libsys-mmap-perl, libnetpbm10-dev, libavdevice-dev, libdevice-serialport-perl, libarchive-zip-perl, libmime-lite-perl, dh-autoreconf, libvlccore-dev, libvlc-dev, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libgcrypt11-dev | libgcrypt20-dev, libpolkit-gobject-1-dev, libdbi-perl, libnet-sftp-foreign-perl, libexpect-perl, libmime-tools-perl
|
|
||||||
Standards-Version: 3.9.6
|
|
||||||
|
|
||||||
Package: zoneminder
|
|
||||||
Section: metapackages
|
|
||||||
Architecture: all
|
|
||||||
Depends: ${misc:Depends},
|
|
||||||
libzoneminder-perl (>= ${source:Version}),
|
|
||||||
zoneminder-database (>= ${source:Version}),
|
|
||||||
zoneminder-core (>= ${binary:Version}),
|
|
||||||
zoneminder-ui-base (>= ${source:Version}),
|
|
||||||
zoneminder-ui-classic (>= ${source:Version}),
|
|
||||||
zoneminder-ui-mobile (>= ${source:Version}),
|
|
||||||
zoneminder-ui-xml (>= ${source:Version})
|
|
||||||
Description: Video camera security and surveillance solution (metapackage)
|
|
||||||
ZoneMinder is intended for use in single or multi-camera video security
|
|
||||||
applications, including commercial or home CCTV, theft prevention and child
|
|
||||||
or family member or home monitoring and other care scenarios. It
|
|
||||||
supports capture, analysis, recording, and monitoring of video data coming
|
|
||||||
from one or more video or network cameras attached to a Linux system.
|
|
||||||
ZoneMinder also support web and semi-automatic control of Pan/Tilt/Zoom
|
|
||||||
cameras using a variety of protocols. It is suitable for use as a home
|
|
||||||
video security system and for commercial or professional video security
|
|
||||||
and surveillance. It can also be integrated into a home automation system
|
|
||||||
via X.10 or other protocols.
|
|
||||||
|
|
||||||
Package: libzoneminder-perl
|
|
||||||
Section: perl
|
|
||||||
Architecture: all
|
|
||||||
Depends: ${misc:Depends}, ${perl:Depends}, libdbi-perl,
|
|
||||||
libdevice-serialport-perl, libimage-info-perl, libjson-any-perl,
|
|
||||||
libsys-mmap-perl, liburi-encode-perl, libwww-perl
|
|
||||||
Description: Perl libraries for ZoneMinder
|
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
|
||||||
.
|
|
||||||
This package provides the libraries for the perl scripts, it can be used to
|
|
||||||
write custom interfaces as well.
|
|
||||||
|
|
||||||
Package: zoneminder-database
|
|
||||||
Section: database
|
|
||||||
Architecture: all
|
|
||||||
Depends: ${misc:Depends}, debconf, dbconfig-common,
|
|
||||||
mysql-client | mariadb-client
|
|
||||||
Recommends: mysql-server | mariadb-server
|
|
||||||
Description: Database management package for ZoneMinder
|
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
|
||||||
.
|
|
||||||
This package provides the sql files and maintenance scripts to perform all the
|
|
||||||
database operations (installation, upgrade or removal) on a local or a remote
|
|
||||||
server.
|
|
||||||
|
|
||||||
Package: zoneminder-core
|
|
||||||
Section: video
|
|
||||||
Architecture: any
|
|
||||||
Depends: libzoneminder-perl (= ${source:Version}),
|
|
||||||
zoneminder-database (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends},
|
|
||||||
${perl:Depends}, libarchive-tar-perl, libarchive-zip-perl, libdate-manip-perl,
|
|
||||||
libdbi-perl, libmodule-load-conditional-perl, libmime-lite-perl,
|
|
||||||
libmime-tools-perl, libnet-sftp-foreign-perl, libphp-serialization-perl,
|
|
||||||
debconf, ffmpeg | libav-tools, rsyslog | system-log-daemon, netpbm, zip,
|
|
||||||
policykit-1, apache2
|
|
||||||
Description: Core binaries and perl scripts for ZoneMinder
|
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
|
||||||
.
|
|
||||||
This package provides the executable compiled binaries which do the main video
|
|
||||||
processing work and the perl scripts which perform helper and/or external
|
|
||||||
interface tasks.
|
|
||||||
|
|
||||||
Package: zoneminder-core-dbg
|
|
||||||
Priority: extra
|
|
||||||
Section: debug
|
|
||||||
Architecture: any
|
|
||||||
Depends: zoneminder-core (= ${binary:Version}), ${misc:Depends}
|
|
||||||
Description: Debugging symbols for ZoneMinder
|
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
|
||||||
.
|
|
||||||
This package provides the debugging symbols for the executable compiled
|
|
||||||
binaries.
|
|
||||||
|
|
||||||
Package: zoneminder-ui-base
|
|
||||||
Section: web
|
|
||||||
Architecture: any
|
|
||||||
Depends: zoneminder-core (= ${binary:Version}), ${shlibs:Depends},
|
|
||||||
${misc:Depends}, debconf, apache2, libapache2-mod-php5 | libapache2-mod-fcgid,
|
|
||||||
php5, php5-mysql | php5-mysqlnd, php5-gd
|
|
||||||
Description: Essential files for ZoneMinder's web user interface
|
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
|
||||||
.
|
|
||||||
This package provides the essential web files and maintenance scripts to set up
|
|
||||||
a basic web environment.
|
|
||||||
|
|
||||||
Package: zoneminder-ui-classic
|
|
||||||
Section: web
|
|
||||||
Architecture: all
|
|
||||||
Depends: zoneminder-ui-base (>= ${source:Version}), ${misc:Depends}
|
|
||||||
Description: Classic web user interface for ZoneMinder
|
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
|
||||||
.
|
|
||||||
This package provides the classic web user interface.
|
|
||||||
|
|
||||||
Package: zoneminder-ui-mobile
|
|
||||||
Section: web
|
|
||||||
Architecture: all
|
|
||||||
Depends: zoneminder-ui-base (>= ${source:Version}), ${misc:Depends}
|
|
||||||
Description: Mobile web user interface for ZoneMinder
|
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
|
||||||
.
|
|
||||||
This package provides the web user interface for mobile devices.
|
|
||||||
|
|
||||||
Package: zoneminder-ui-xml
|
|
||||||
Section: web
|
|
||||||
Architecture: all
|
|
||||||
Depends: zoneminder-ui-base (>= ${source:Version}), ${misc:Depends}
|
|
||||||
Description: XML interface for ZoneMinder
|
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
|
||||||
.
|
|
||||||
This package provides a XML interface mainly intended for use with the eyeZm
|
|
||||||
iPhone Application, but can be used with any other custom programs as well.
|
|
|
@ -1,22 +0,0 @@
|
||||||
Copyright:
|
|
||||||
|
|
||||||
Copyright 2002 Philip Coombes <philip.coombes@zoneminder.com>
|
|
||||||
|
|
||||||
License:
|
|
||||||
|
|
||||||
This package is free software; you can redistribute it and/or modify it
|
|
||||||
under the terms of the GNU General Public License as published by the
|
|
||||||
Free Software Foundation; either version 2 of the License, or (at your
|
|
||||||
option) any later version.
|
|
||||||
|
|
||||||
This package is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public
|
|
||||||
License along with this package; if not, write to the Free Software
|
|
||||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
On Debian GNU/Linux systems, the text of the GPL can be found in
|
|
||||||
/usr/share/common-licenses/GPL.
|
|
|
@ -1 +0,0 @@
|
||||||
README.md
|
|
|
@ -1,4 +0,0 @@
|
||||||
usr/share/perl5/ZoneMinder
|
|
||||||
usr/share/perl5/ZoneMinder.pm
|
|
||||||
debian/tmp/usr/share/man/man3/ZoneMinder.3pm
|
|
||||||
debian/tmp/usr/share/man/man3/ZoneMinder::*
|
|
|
@ -1,3 +0,0 @@
|
||||||
[type: gettext/rfc822deb] zoneminder-core.templates
|
|
||||||
[type: gettext/rfc822deb] zoneminder-database.templates
|
|
||||||
[type: gettext/rfc822deb] zoneminder-ui-base.templates
|
|
|
@ -1,252 +0,0 @@
|
||||||
# debconf french translation file for ZoneMinder.
|
|
||||||
# Copyright (C) 2001-2008 Philip Coombes
|
|
||||||
# This file is distributed under the same license as the zoneminder package.
|
|
||||||
# First author: Emmanuel Papin <manupap01@gmail.com>, 2014.
|
|
||||||
#
|
|
||||||
msgid ""
|
|
||||||
msgstr ""
|
|
||||||
"Project-Id-Version: zoneminder\n"
|
|
||||||
"Report-Msgid-Bugs-To: zoneminder@packages.debian.org\n"
|
|
||||||
"POT-Creation-Date: 2014-12-16 12:34+0100\n"
|
|
||||||
"PO-Revision-Date: 2014-12-07 00:40+0100\n"
|
|
||||||
"Last-Translator: Emmanuel Papin <manupap01@gmail.com>\n"
|
|
||||||
"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
|
|
||||||
"Language: fr\n"
|
|
||||||
"MIME-Version: 1.0\n"
|
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:1001
|
|
||||||
msgid "Delete this non empty directory?"
|
|
||||||
msgstr "Supprimer ce répertoire non vide ?"
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:1001
|
|
||||||
msgid ""
|
|
||||||
"A purge of the ZoneMinder package is performed but the directory '/var/cache/"
|
|
||||||
"zoneminder' is not empty so it will not be deleted."
|
|
||||||
msgstr ""
|
|
||||||
"Une purge du paquet ZoneMinder est en cours mais le répertoire '/var/cache/"
|
|
||||||
"zoneminder' n'est pas vide et sera donc conservé."
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:1001
|
|
||||||
msgid ""
|
|
||||||
"Please consider that this directory is designed to contain data resulting "
|
|
||||||
"from event detection. Therefore, \"proof of evidence\" could be lost!\""
|
|
||||||
msgstr ""
|
|
||||||
"Veuillez considérer que ce répertoire est conçu pour contenir des données "
|
|
||||||
"résultants de la détection d'événements. Par conséquent, des preuves "
|
|
||||||
"pourraient être perdues !"
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:1001
|
|
||||||
msgid ""
|
|
||||||
"If you are not sure of your decision, please do not delete this directory "
|
|
||||||
"but perform a manual checkup."
|
|
||||||
msgstr ""
|
|
||||||
"Si vous n'êtes pas sûr de votre décision, veuillez conserver ce répertoire "
|
|
||||||
"et effectuer une vérification manuelle."
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:2001
|
|
||||||
msgid "Deletion confirmed?"
|
|
||||||
msgstr "Supression confirmée ?"
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:2001
|
|
||||||
msgid ""
|
|
||||||
"You have allowed the deletion of directory '/var/cache/zoneminder' although "
|
|
||||||
"it may contain critical data."
|
|
||||||
msgstr ""
|
|
||||||
"Vous avez autorisé la suppression du répertoire '/var/cache/zoneminder' bien "
|
|
||||||
"qu'il puisse contenir des données critiques."
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Choices
|
|
||||||
#: ../zoneminder-database.templates:1001
|
|
||||||
msgid "local"
|
|
||||||
msgstr "local"
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Choices
|
|
||||||
#: ../zoneminder-database.templates:1001
|
|
||||||
msgid "remote"
|
|
||||||
msgstr "distant"
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:1002
|
|
||||||
msgid "Database location:"
|
|
||||||
msgstr "Emplacement de la base de donnée :"
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:1002
|
|
||||||
msgid ""
|
|
||||||
"A database server is required to run ZoneMinder. The database can be "
|
|
||||||
"installed either locally or remotely on a machine of your network."
|
|
||||||
msgstr ""
|
|
||||||
"Un serveur de base de données est requis pour ZoneMinder. La base de donnée "
|
|
||||||
"peut être installée localement ou à distance sur une machine de votre réseau."
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:1002
|
|
||||||
msgid ""
|
|
||||||
"If you choose a remote location, you will have to select the 'tcp/ip' "
|
|
||||||
"connection method and enter the hostname or ip address of the remote machine "
|
|
||||||
"in the next configuration screens."
|
|
||||||
msgstr ""
|
|
||||||
"Si vous choisissez un emplacement distant, vous devrez sélectionner la "
|
|
||||||
"méthode de connexion 'tcp/ip' et entrer le nom réseau ou l'adresse ip de la "
|
|
||||||
"machine distante dans les écrans de configuration suivants."
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:2001
|
|
||||||
msgid "No local database server is available:"
|
|
||||||
msgstr "Aucun serveur local de base de données n'est disponible :"
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:2001
|
|
||||||
msgid ""
|
|
||||||
"Currently ZoneMinder supports mysql or mariadb database server but none of "
|
|
||||||
"them appears to be installed on this machine."
|
|
||||||
msgstr ""
|
|
||||||
"Actuellement ZoneMinder supporte les serveurs de base de données mysql et "
|
|
||||||
"mariadb mais aucun d'entre eux n'est installé sur cette machine."
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:2001
|
|
||||||
msgid ""
|
|
||||||
"In order to complete ZoneMinder's installation, after ending of this "
|
|
||||||
"assistant, please install a compatible database server and then restart the "
|
|
||||||
"assistant by invoking:"
|
|
||||||
msgstr ""
|
|
||||||
"Afin de compléter l'installation de ZoneMinder, après la fermeture de cet "
|
|
||||||
"assitant, veuillez installer un serveur de base de données compatible et "
|
|
||||||
"ensuite redémarrez l'assistant en invoquant :"
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:2001 ../zoneminder-database.templates:3001
|
|
||||||
msgid "$ sudo dpkg-reconfigure zoneminder"
|
|
||||||
msgstr "$ sudo dpkg-reconfigure zoneminder"
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid "Remote database servers are not allowed:"
|
|
||||||
msgstr "Les serveurs de base de données distants ne sont pas autorisés :"
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid ""
|
|
||||||
"The current configuration of dbconfig-common does not allow installation of "
|
|
||||||
"a database on remote servers."
|
|
||||||
msgstr ""
|
|
||||||
"La configuration actuelle de dbconfig-common ne permet pas l'installation de "
|
|
||||||
"bases de données sur des serveurs distants."
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid ""
|
|
||||||
"In order to reconfigure dbconfig-common, please invoke the following command "
|
|
||||||
"after ending of this assistant:"
|
|
||||||
msgstr ""
|
|
||||||
"Afin de reconfigurer dbconfig-common, veuillez invoquer la commande suivante "
|
|
||||||
"après la fermeture de cet assitant :"
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid "$ sudo dpkg-reconfigure dbconfig-common"
|
|
||||||
msgstr "$ sudo dpkg-reconfigure dbconfig-common"
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid ""
|
|
||||||
"Then, to complete ZoneMinder's installation, please restart this assistant "
|
|
||||||
"by invoking:"
|
|
||||||
msgstr ""
|
|
||||||
"Ensuite, pour compléter l'installation de ZoneMinder, veuillez redémarrer "
|
|
||||||
"cet assistant en invoquant :"
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:4001
|
|
||||||
msgid "New password for the ZoneMinder 'admin' user:"
|
|
||||||
msgstr "Nouveau mot de passe pour le compte 'admin' de ZoneMinder :"
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:4001
|
|
||||||
msgid "Please enter the password of the default administrative user."
|
|
||||||
msgstr "Veuillez entrer le mot de passe du compte administrateur par défaut."
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:4001
|
|
||||||
msgid ""
|
|
||||||
"While not mandatory, it is highly recommended that you set a custom password "
|
|
||||||
"for the administrative 'admin' user."
|
|
||||||
msgstr ""
|
|
||||||
"Bien que cela ne soit pas obligatoire, il est fortement recommandé de "
|
|
||||||
"fournir un mot de passe personnalisé pour le compte administrateur 'admin'."
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:4001
|
|
||||||
msgid "If this field is left blank, the password will not be changed."
|
|
||||||
msgstr "Si le champ est laissé vide, le mot de passe ne sera pas changé."
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:5001
|
|
||||||
msgid "Repeat password for the ZoneMinder 'admin' user:"
|
|
||||||
msgstr "Répéter le mot de passe pour le compte 'admin' de ZoneMinder :"
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:6001
|
|
||||||
msgid "Password input error"
|
|
||||||
msgstr "Erreur de mot de passe"
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:6001
|
|
||||||
msgid "The two passwords you entered were not the same. Please try again."
|
|
||||||
msgstr ""
|
|
||||||
"Les deux mots de passe saisis ne sont pas les mêmes. Veuillez essayer à "
|
|
||||||
"nouveau."
|
|
||||||
|
|
||||||
#. Type: multiselect
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-ui-base.templates:1001
|
|
||||||
msgid "Web server to reconfigure automatically:"
|
|
||||||
msgstr "Serveur web à reconfigurer automatiquement :"
|
|
||||||
|
|
||||||
#. Type: multiselect
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-ui-base.templates:1001
|
|
||||||
msgid ""
|
|
||||||
"Please choose the web server that should be automatically configured for "
|
|
||||||
"ZoneMinder's web portal access."
|
|
||||||
msgstr ""
|
|
||||||
"Veuillez choisir le serveur web à reconfigurer automatiquement pour l'accès "
|
|
||||||
"au portail web de ZoneMinder."
|
|
|
@ -1,222 +0,0 @@
|
||||||
# SOME DESCRIPTIVE TITLE.
|
|
||||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
|
||||||
# This file is distributed under the same license as the PACKAGE package.
|
|
||||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
|
||||||
#
|
|
||||||
#, fuzzy
|
|
||||||
msgid ""
|
|
||||||
msgstr ""
|
|
||||||
"Project-Id-Version: zoneminder\n"
|
|
||||||
"Report-Msgid-Bugs-To: zoneminder@packages.debian.org\n"
|
|
||||||
"POT-Creation-Date: 2014-12-16 12:34+0100\n"
|
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
|
||||||
"Language: \n"
|
|
||||||
"MIME-Version: 1.0\n"
|
|
||||||
"Content-Type: text/plain; charset=CHARSET\n"
|
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:1001
|
|
||||||
msgid "Delete this non empty directory?"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:1001
|
|
||||||
msgid ""
|
|
||||||
"A purge of the ZoneMinder package is performed but the directory '/var/cache/"
|
|
||||||
"zoneminder' is not empty so it will not be deleted."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:1001
|
|
||||||
msgid ""
|
|
||||||
"Please consider that this directory is designed to contain data resulting "
|
|
||||||
"from event detection. Therefore, \"proof of evidence\" could be lost!\""
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:1001
|
|
||||||
msgid ""
|
|
||||||
"If you are not sure of your decision, please do not delete this directory "
|
|
||||||
"but perform a manual checkup."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:2001
|
|
||||||
msgid "Deletion confirmed?"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: boolean
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-core.templates:2001
|
|
||||||
msgid ""
|
|
||||||
"You have allowed the deletion of directory '/var/cache/zoneminder' although "
|
|
||||||
"it may contain critical data."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Choices
|
|
||||||
#: ../zoneminder-database.templates:1001
|
|
||||||
msgid "local"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Choices
|
|
||||||
#: ../zoneminder-database.templates:1001
|
|
||||||
msgid "remote"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:1002
|
|
||||||
msgid "Database location:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:1002
|
|
||||||
msgid ""
|
|
||||||
"A database server is required to run ZoneMinder. The database can be "
|
|
||||||
"installed either locally or remotely on a machine of your network."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: select
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:1002
|
|
||||||
msgid ""
|
|
||||||
"If you choose a remote location, you will have to select the 'tcp/ip' "
|
|
||||||
"connection method and enter the hostname or ip address of the remote machine "
|
|
||||||
"in the next configuration screens."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:2001
|
|
||||||
msgid "No local database server is available:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:2001
|
|
||||||
msgid ""
|
|
||||||
"Currently ZoneMinder supports mysql or mariadb database server but none of "
|
|
||||||
"them appears to be installed on this machine."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:2001
|
|
||||||
msgid ""
|
|
||||||
"In order to complete ZoneMinder's installation, after ending of this "
|
|
||||||
"assistant, please install a compatible database server and then restart the "
|
|
||||||
"assistant by invoking:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:2001 ../zoneminder-database.templates:3001
|
|
||||||
msgid "$ sudo dpkg-reconfigure zoneminder"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid "Remote database servers are not allowed:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid ""
|
|
||||||
"The current configuration of dbconfig-common does not allow installation of "
|
|
||||||
"a database on remote servers."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid ""
|
|
||||||
"In order to reconfigure dbconfig-common, please invoke the following command "
|
|
||||||
"after ending of this assistant:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid "$ sudo dpkg-reconfigure dbconfig-common"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:3001
|
|
||||||
msgid ""
|
|
||||||
"Then, to complete ZoneMinder's installation, please restart this assistant "
|
|
||||||
"by invoking:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:4001
|
|
||||||
msgid "New password for the ZoneMinder 'admin' user:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:4001
|
|
||||||
msgid "Please enter the password of the default administrative user."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:4001
|
|
||||||
msgid ""
|
|
||||||
"While not mandatory, it is highly recommended that you set a custom password "
|
|
||||||
"for the administrative 'admin' user."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:4001
|
|
||||||
msgid "If this field is left blank, the password will not be changed."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: password
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:5001
|
|
||||||
msgid "Repeat password for the ZoneMinder 'admin' user:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:6001
|
|
||||||
msgid "Password input error"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: error
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-database.templates:6001
|
|
||||||
msgid "The two passwords you entered were not the same. Please try again."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: multiselect
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-ui-base.templates:1001
|
|
||||||
msgid "Web server to reconfigure automatically:"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#. Type: multiselect
|
|
||||||
#. Description
|
|
||||||
#: ../zoneminder-ui-base.templates:1001
|
|
||||||
msgid ""
|
|
||||||
"Please choose the web server that should be automatically configured for "
|
|
||||||
"ZoneMinder's web portal access."
|
|
||||||
msgstr ""
|
|
|
@ -1,154 +0,0 @@
|
||||||
#!/usr/bin/make -f
|
|
||||||
# -*- makefile -*-
|
|
||||||
# Sample debian/rules that uses debhelper.
|
|
||||||
# This file was originally written by Joey Hess and Craig Small.
|
|
||||||
# As a special exception, when this file is copied by dh-make into a
|
|
||||||
# dh-make output file, you may use that output file without restriction.
|
|
||||||
# This special exception was added by Craig Small in version 0.37 of dh-make.
|
|
||||||
|
|
||||||
# Uncomment this to turn on verbose mode.
|
|
||||||
#export DH_VERBOSE=1
|
|
||||||
|
|
||||||
# These are used for cross-compiling and for saving the configure script
|
|
||||||
# from having to guess our platform (since we know it already)
|
|
||||||
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
|
|
||||||
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
|
|
||||||
|
|
||||||
CFLAGS = -Wall
|
|
||||||
CPPFLAGS = -D__STDC_CONSTANT_MACROS
|
|
||||||
CXXFLAGS = -DHAVE_LIBCRYPTO
|
|
||||||
|
|
||||||
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
|
|
||||||
DEBOPT = --enable-debug
|
|
||||||
CFLAGS += -g
|
|
||||||
CXXFLAGS += -g
|
|
||||||
else
|
|
||||||
DEBOPT =
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
|
|
||||||
CFLAGS += -O0
|
|
||||||
else
|
|
||||||
CFLAGS += -O2
|
|
||||||
endif
|
|
||||||
|
|
||||||
# These are used to get the most recent version of the original sources from github
|
|
||||||
UURL = $(shell git config --get remote.origin.url)
|
|
||||||
BRANCH = $(shell git rev-parse --abbrev-ref HEAD)
|
|
||||||
HEAD = $(shell git rev-parse HEAD)
|
|
||||||
PKD = $(abspath $(dir $(MAKEFILE_LIST)))
|
|
||||||
PKG = $(word 2,$(shell dpkg-parsechangelog -l$(PKD)/changelog | grep ^Source))
|
|
||||||
VER ?= $(shell dpkg-parsechangelog -l$(PKD)/changelog | perl -ne 'print $$1 if m{^Version:\s+(?:\d+:)?(\d.*)(?:\-|\+nmu\d+.*)};')
|
|
||||||
DTYPE =
|
|
||||||
TARBALL = ../$(PKG)_$(VER)$(DTYPE).orig.tar.xz
|
|
||||||
|
|
||||||
%:
|
|
||||||
dh $@ --with autoreconf,systemd
|
|
||||||
|
|
||||||
override_dh_auto_configure:
|
|
||||||
CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" dh_auto_configure -- \
|
|
||||||
--host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
|
|
||||||
--sysconfdir=/etc/zm --prefix=/usr --mandir=\$${prefix}/share/man \
|
|
||||||
--infodir=\$${prefix}/share/info --with-mysql=/usr \
|
|
||||||
--with-mariadb=/usr --with-webdir=/usr/share/zoneminder/www \
|
|
||||||
--with-ffmpeg=/usr --with-cgidir=/usr/lib/zoneminder/cgi-bin \
|
|
||||||
--with-webuser=www-data --with-webgroup=www-data \
|
|
||||||
--enable-crashtrace=no --enable-mmap=yes $(DEBOPT)
|
|
||||||
|
|
||||||
override_dh_clean:
|
|
||||||
# Add here commands to clean up after the build process.
|
|
||||||
[ ! -f Makefile ] || $(MAKE) distclean
|
|
||||||
dh_clean src/zm_config_defines.h
|
|
||||||
#
|
|
||||||
# Delete remaining auto-generated Makefile if Makefile.in exists
|
|
||||||
find $(CURDIR)/ -type f -name "Makefile" | while read file; do \
|
|
||||||
[ -f $$file.in ] && rm -f $$file; \
|
|
||||||
done || true
|
|
||||||
#
|
|
||||||
# Delete remaining auto-generated Makefile.in if Makefile.am exists
|
|
||||||
find $(CURDIR)/ -type f -name "Makefile.in" | while read filein; do \
|
|
||||||
fileam=`echo $$filein | sed 's/\(.*\)\.in/\1\.am/'`; \
|
|
||||||
[ -f $$fileam ] && rm -f $$filein; \
|
|
||||||
done || true
|
|
||||||
|
|
||||||
override_dh_install:
|
|
||||||
dh_install --fail-missing
|
|
||||||
#
|
|
||||||
# NOTE: This is a short-term kludge; hopefully changes in the next
|
|
||||||
# upstream version will render this unnecessary.
|
|
||||||
rm -rf debian/zoneminder/usr/share/zoneminder/events
|
|
||||||
rm -rf debian/zoneminder/usr/share/zoneminder/images
|
|
||||||
rm -rf debian/zoneminder/usr/share/zoneminder/temp
|
|
||||||
# The link stuff for these folders has been moved to
|
|
||||||
# zoneminder-core.links file
|
|
||||||
#
|
|
||||||
# This is a slightly lesser kludge; moving the cgi stuff to
|
|
||||||
# /usr/share/zoneminder/cgi-bin breaks one set of behavior,
|
|
||||||
# having it just in /usr/lib/cgi-bin breaks another bit of
|
|
||||||
# behavior.
|
|
||||||
# The link stuff for /usr/share/zoneminder/cgi-bin has been moved to
|
|
||||||
# zoneminder-ui-base.links file
|
|
||||||
|
|
||||||
override_dh_installinit:
|
|
||||||
dh_installinit --package=zoneminder-core --name=zoneminder
|
|
||||||
|
|
||||||
override_dh_systemd_start:
|
|
||||||
dh_systemd_start --package=zoneminder-core --name=zoneminder \
|
|
||||||
--restart-after-upgrade
|
|
||||||
|
|
||||||
override_dh_systemd_enable:
|
|
||||||
dh_systemd_enable --package=zoneminder-core --name=zoneminder
|
|
||||||
|
|
||||||
override_dh_fixperms:
|
|
||||||
dh_fixperms
|
|
||||||
#
|
|
||||||
# As requested by the Debian Webapps Policy Manual §3.2.1
|
|
||||||
chown root:www-data debian/zoneminder-core/etc/zm/zm.conf
|
|
||||||
chmod 640 debian/zoneminder-core/etc/zm/zm.conf
|
|
||||||
|
|
||||||
override_dh_auto_test:
|
|
||||||
# do not run tests...
|
|
||||||
|
|
||||||
.PHONY: override_dh_strip
|
|
||||||
override_dh_strip:
|
|
||||||
dh_strip --dbg-package=zoneminder-core-dbg
|
|
||||||
|
|
||||||
# Inspired by https://wiki.debian.org/onlyjob/get-orig-source
|
|
||||||
.PHONY: get-orig-source
|
|
||||||
get-orig-source: $(TARBALL) $(info I: $(PKG)_$(VER)$(DTYPE))
|
|
||||||
@
|
|
||||||
|
|
||||||
$(TARBALL):
|
|
||||||
$(if $(wildcard $(PKG)-$(VER)),$(error folder '$(PKG)-$(VER)' exists, aborting...))
|
|
||||||
@echo "# Cloning origin repository..."; \
|
|
||||||
if ! git clone $(UURL) $(PKG)-$(VER); then \
|
|
||||||
$(RM) -r $(PKG)-$(VER); \
|
|
||||||
echo "failed to clone repository, aborting..."; \
|
|
||||||
false; \
|
|
||||||
fi
|
|
||||||
@if [ $(BRANCH) != "master" ]; then \
|
|
||||||
cd $(PKG)-$(VER); \
|
|
||||||
echo "# Not on master branch, fetching origin branch '$(BRANCH)'..."; \
|
|
||||||
git fetch origin $(BRANCH):$(BRANCH) || false; \
|
|
||||||
echo "# Switching to branch '$(BRANCH)'..."; \
|
|
||||||
git checkout $(BRANCH) || false; \
|
|
||||||
fi
|
|
||||||
@echo "# Checking local source..."
|
|
||||||
@if [ $$(cd $(PKG)-$(VER) && git rev-parse HEAD) = $(HEAD) ]; then \
|
|
||||||
echo "even with origin, ok"; \
|
|
||||||
true; \
|
|
||||||
else \
|
|
||||||
echo "not even with origin, aborting..."; \
|
|
||||||
false; \
|
|
||||||
fi
|
|
||||||
@echo "# Setting times..."
|
|
||||||
@cd $(PKG)-$(VER) \
|
|
||||||
&& for F in $$(git ls-tree -r --name-only HEAD | sed -e "s/\s/\*/g"); do \
|
|
||||||
touch --no-dereference -d "$$(git log -1 --format="%ai" -- $$F)" "$$F"; \
|
|
||||||
done
|
|
||||||
@echo "# Cleaning-up..."
|
|
||||||
cd $(PKG)-$(VER) && $(RM) -r .git
|
|
||||||
@echo "# Packing file '$(TARBALL)'..."
|
|
||||||
@find -L "$(PKG)-$(VER)" -xdev -type f -print | sort \
|
|
||||||
| XZ_OPT="-6v" tar -caf "$(TARBALL)" -T- --owner=root --group=root --mode=a+rX \
|
|
||||||
&& $(RM) -r "$(PKG)-$(VER)"
|
|
|
@ -1 +0,0 @@
|
||||||
extend-diff-ignore = "(^|/)(config\.sub|config\.guess|Makefile|aclocal.m4|compile|config.h.in|configure|depcomp|install-sh|missing)$"
|
|
|
@ -1,11 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# config maintainer script for zoneminder-core package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,4 +0,0 @@
|
||||||
var/log/zm
|
|
||||||
var/cache/zoneminder/events
|
|
||||||
var/cache/zoneminder/images
|
|
||||||
var/cache/zoneminder/temp
|
|
|
@ -1,4 +0,0 @@
|
||||||
etc/zm
|
|
||||||
usr/bin
|
|
||||||
usr/share/polkit-1/actions
|
|
||||||
usr/share/polkit-1/rules.d
|
|
|
@ -1,3 +0,0 @@
|
||||||
var/cache/zoneminder/events usr/share/zoneminder/events
|
|
||||||
var/cache/zoneminder/images usr/share/zoneminder/images
|
|
||||||
var/cache/zoneminder/temp usr/share/zoneminder/temp
|
|
|
@ -1,80 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
# postinst maintainer script for zoneminder-core package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
|
|
||||||
# Source the config file
|
|
||||||
CONFIGFILE=/etc/zm/zm.conf
|
|
||||||
. $CONFIGFILE
|
|
||||||
|
|
||||||
# Do this when the package is installed, upgraded or reconfigured
|
|
||||||
if [ "$1" = "configure" ] || [ "$1" = "reconfigure" ]; then
|
|
||||||
|
|
||||||
# Retrieve data from dbconfig (inputs from user)
|
|
||||||
. /etc/dbconfig-common/zoneminder.conf
|
|
||||||
|
|
||||||
# ZoneMinder config file handling
|
|
||||||
# Inspired by: http://manpages.debian.org/cgi-bin/man.cgi?query=debconf-devel&sektion=7
|
|
||||||
|
|
||||||
# Backup the config file
|
|
||||||
cp -a -f $CONFIGFILE ${CONFIGFILE}.postinst.bak
|
|
||||||
|
|
||||||
# Redeclare variables if missing in config file
|
|
||||||
test -z $dbc_dbserver || grep -Eq "^ *ZM_DB_HOST=" $CONFIGFILE \
|
|
||||||
|| echo "ZM_DB_HOST=" >> ${CONFIGFILE}.postinst.bak
|
|
||||||
test -z $dbc_dbname || grep -Eq "^ *ZM_DB_NAME=" $CONFIGFILE \
|
|
||||||
|| echo "ZM_DB_NAME=" >> ${CONFIGFILE}.postinst.bak
|
|
||||||
test -z $dbc_dbuser || grep -Eq "^ *ZM_DB_USER=" $CONFIGFILE \
|
|
||||||
|| echo "ZM_DB_USER=" >> ${CONFIGFILE}.postinst.bak
|
|
||||||
test -z $dbc_dbpass || grep -Eq "^ *ZM_DB_PASS=" $CONFIGFILE \
|
|
||||||
|| echo "ZM_DB_PASS=" >> ${CONFIGFILE}.postinst.bak
|
|
||||||
|
|
||||||
# Prevent ZM_DB_HOST to be empty if user selected the 'unix socket' method
|
|
||||||
if test -z $dbc_dbserver; then
|
|
||||||
dbc_dbserver_override="localhost"
|
|
||||||
else
|
|
||||||
dbc_dbserver_override=$dbc_dbserver
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Update variables in config file
|
|
||||||
sed -i "s/^ *ZM_DB_HOST=.*/ZM_DB_HOST=$dbc_dbserver_override/" \
|
|
||||||
${CONFIGFILE}.postinst.bak
|
|
||||||
test -z $dbc_dbname || sed -i "s/^ *ZM_DB_NAME=.*/ZM_DB_NAME=$dbc_dbname/" \
|
|
||||||
${CONFIGFILE}.postinst.bak
|
|
||||||
test -z $dbc_dbuser || sed -i "s/^ *ZM_DB_USER=.*/ZM_DB_USER=$dbc_dbuser/" \
|
|
||||||
${CONFIGFILE}.postinst.bak
|
|
||||||
test -z $dbc_dbpass || sed -i "s/^ *ZM_DB_PASS=.*/ZM_DB_PASS=$dbc_dbpass/" \
|
|
||||||
${CONFIGFILE}.postinst.bak
|
|
||||||
|
|
||||||
# Clean-up backup file
|
|
||||||
mv -f ${CONFIGFILE}.postinst.bak $CONFIGFILE
|
|
||||||
|
|
||||||
|
|
||||||
# Set some file permissions
|
|
||||||
chown $ZM_WEB_USER:$ZM_WEB_GROUP /var/log/zm
|
|
||||||
if [ -z "$2" ]; then
|
|
||||||
chown $ZM_WEB_USER:$ZM_WEB_GROUP -R /var/cache/zoneminder
|
|
||||||
fi
|
|
||||||
# As requested by the Debian Webapps Policy Manual §3.2.1
|
|
||||||
chown root:${ZM_WEB_GROUP} $CONFIGFILE
|
|
||||||
chmod 640 $CONFIGFILE
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Do this every time the package is installed or upgraded
|
|
||||||
# Test for database presence to avoid failure of zmupdate.pl
|
|
||||||
if [ "$dbc_install" = "true" ] && [ "$1" = "configure" ]; then
|
|
||||||
|
|
||||||
# Ensure zoneminder is stopped
|
|
||||||
deb-systemd-invoke stop zoneminder.service || exit $?
|
|
||||||
|
|
||||||
# Run the ZoneMinder update tool
|
|
||||||
zmupdate.pl --nointeractive
|
|
||||||
|
|
||||||
fi
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,37 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
# postrm maintainer script for zoneminder-core package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff
|
|
||||||
if [ -f /usr/share/debconf/confmodule ]; then
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$1" = "purge" ]; then
|
|
||||||
|
|
||||||
# Ask the user if we have to remove the cache directory even if not empty
|
|
||||||
if [ -d /var/cache/zoneminder ] \
|
|
||||||
&& [ ! $(find /var/cache/zoneminder -maxdepth 0 -type d -empty 2>/dev/null) ]; then
|
|
||||||
RET=""
|
|
||||||
db_input high zoneminder/ask_delete || true
|
|
||||||
db_go || true
|
|
||||||
db_get zoneminder/ask_delete
|
|
||||||
if [ "$RET" = "true" ]; then
|
|
||||||
RET=""
|
|
||||||
db_input high zoneminder/ask_delete_again || true
|
|
||||||
db_go || true
|
|
||||||
db_get zoneminder/ask_delete_again
|
|
||||||
if [ "$RET" = "true" ]; then
|
|
||||||
rm -rf /var/cache/zoneminder
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
# postrm rm may freeze without that
|
|
||||||
db_stop
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,33 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# preinst maintainer script for zoneminder-core package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
abort=false
|
|
||||||
if [ -L /usr/share/zoneminder/events ]; then
|
|
||||||
l=$(readlink /usr/share/zoneminder/events)
|
|
||||||
if [ "$l" != "/var/cache/zoneminder/events" ]; then
|
|
||||||
abort=true
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
if [ -L /usr/share/zoneminder/images ]; then
|
|
||||||
l=$(readlink /usr/share/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
|
|
||||||
/usr/share/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
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,19 +0,0 @@
|
||||||
Template: zoneminder/ask_delete
|
|
||||||
Type: boolean
|
|
||||||
Default: false
|
|
||||||
_Description: Delete this non empty directory?
|
|
||||||
A purge of the ZoneMinder package is performed but the directory
|
|
||||||
'/var/cache/zoneminder' is not empty so it will not be deleted.
|
|
||||||
.
|
|
||||||
Please consider that this directory is designed to contain data resulting from
|
|
||||||
event detection. Therefore, "proof of evidence" could be lost!"
|
|
||||||
.
|
|
||||||
If you are not sure of your decision, please do not delete this directory but
|
|
||||||
perform a manual checkup.
|
|
||||||
|
|
||||||
Template: zoneminder/ask_delete_again
|
|
||||||
Type: boolean
|
|
||||||
Default: false
|
|
||||||
_Description: Deletion confirmed?
|
|
||||||
You have allowed the deletion of directory '/var/cache/zoneminder' although
|
|
||||||
it may contain critical data.
|
|
|
@ -1,36 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
#
|
|
||||||
### BEGIN INIT INFO
|
|
||||||
# Provides: zoneminder
|
|
||||||
# Required-Start:
|
|
||||||
# Required-Stop:
|
|
||||||
# Default-Start: 2 3 4 5
|
|
||||||
# Default-Stop: 0 1 6
|
|
||||||
# Short-Description: Do nothing more than fixing a lintian error
|
|
||||||
# Description: This script is provided by the Zoneminder package
|
|
||||||
# Zomeminder init configuration has been switched to systemd
|
|
||||||
# This dummy script can be safely deleted; It does nothing
|
|
||||||
# more than fixing a lintian error when testing the package
|
|
||||||
### END INIT INFO
|
|
||||||
|
|
||||||
. /lib/lsb/init-functions
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
start)
|
|
||||||
;;
|
|
||||||
stop)
|
|
||||||
;;
|
|
||||||
status)
|
|
||||||
;;
|
|
||||||
restart|reload)
|
|
||||||
;;
|
|
||||||
force-reload)
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Usage: ${0:-} {start|stop|status|restart|reload|force-reload}" >&2
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
exit 0
|
|
||||||
|
|
|
@ -1,19 +0,0 @@
|
||||||
# ZoneMinder systemd unit file
|
|
||||||
# This file is intended to work with debian distributions
|
|
||||||
|
|
||||||
[Unit]
|
|
||||||
Description=ZoneMinder CCTV recording and security system
|
|
||||||
After=network.target mysql.service apache2.service
|
|
||||||
Requires=apache2.service
|
|
||||||
Wants=mysql.service
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
User=www-data
|
|
||||||
Type=forking
|
|
||||||
ExecStart=/usr/bin/zmpkg.pl start
|
|
||||||
ExecReload=/usr/bin/zmpkg.pl restart
|
|
||||||
ExecStop=/usr/bin/zmpkg.pl stop
|
|
||||||
PIDFile=/var/run/zm/zm.pid
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=multi-user.target
|
|
|
@ -1 +0,0 @@
|
||||||
d /var/run/zm 0755 www-data www-data
|
|
|
@ -1,142 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# config maintainer script for zoneminder
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
|
|
||||||
# Set the first version in which dbconfig-common was introduced in the package
|
|
||||||
dbc_first_version="1.28.0"
|
|
||||||
|
|
||||||
CONFIGFILE=/etc/zm/zm.conf
|
|
||||||
if [ -e $CONFIGFILE ]; then
|
|
||||||
# Source the config file if exists
|
|
||||||
. $CONFIGFILE
|
|
||||||
elif [ -e ${CONFIGFILE}.dpkg-new ]; then
|
|
||||||
# If no config file, source the config file which is going to be installed
|
|
||||||
# by the core package
|
|
||||||
. ${CONFIGFILE}.dpkg-new
|
|
||||||
else
|
|
||||||
# If no config file is going to be installed, set some default values
|
|
||||||
ZM_DB_HOST=
|
|
||||||
ZM_DB_NAME="zm"
|
|
||||||
ZM_DB_USER="zmuser"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Set some variables for the dbconfig-common stuff
|
|
||||||
dbc_dbserver="$ZM_DB_HOST"
|
|
||||||
dbc_dbname="$ZM_DB_NAME"
|
|
||||||
dbc_dbuser="$ZM_DB_USER"
|
|
||||||
|
|
||||||
if [ -f /usr/share/dbconfig-common/dpkg/config ]; then
|
|
||||||
|
|
||||||
# Default use dbconfig-common
|
|
||||||
dbc_install="true"
|
|
||||||
|
|
||||||
# Currently we only support mysql database
|
|
||||||
dbc_dbtypes="mysql"
|
|
||||||
|
|
||||||
# Set authentication method to password
|
|
||||||
dbc_authmethod_user="password"
|
|
||||||
|
|
||||||
# Source the dbconfig-common stuff
|
|
||||||
. /usr/share/dbconfig-common/dpkg/config
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Do this when the package is installed, upgraded or reconfigured
|
|
||||||
# Most of answers are cached so the questions will not be asked again
|
|
||||||
if [ "$1" = "configure" ] || [ "$1" = "reconfigure" ]; then
|
|
||||||
|
|
||||||
# Ask the user if the database shall be installed locally or remotely
|
|
||||||
db_input high zoneminder/debconf_dblocation || true
|
|
||||||
db_go || true
|
|
||||||
db_get zoneminder/debconf_dblocation
|
|
||||||
|
|
||||||
if [ "$RET" = "local" ]; then
|
|
||||||
if [ ! -e "/usr/sbin/mysqld" ]; then
|
|
||||||
# Display a message and exit if the user want a local database but
|
|
||||||
# no database server is available
|
|
||||||
db_input high zoneminder/debconf_dblocalmissingerror || true
|
|
||||||
db_go || true
|
|
||||||
exit 0
|
|
||||||
else
|
|
||||||
# Set the database server to localhost
|
|
||||||
dbc_dbserver="localhost"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
# Source the dbconfig main configuration file
|
|
||||||
if [ -f /etc/dbconfig-common/config ]; then
|
|
||||||
. /etc/dbconfig-common/config
|
|
||||||
fi
|
|
||||||
if [ "$dbc_remote_questions_default" = "false" ]; then
|
|
||||||
# Display a message and exit if the dbconfig configuration does not
|
|
||||||
# allow installation of remote databases
|
|
||||||
# Note: To overcome this issue, we could think to override the
|
|
||||||
# default setting by using dbc_remote_questions_default='true' in
|
|
||||||
# maintainer scripts but unfortunately this does not work due to
|
|
||||||
# current dbconfig design
|
|
||||||
# More information here:
|
|
||||||
# https://bugs.launchpad.net/ubuntu/+source/dbconfig-common/+bug/1065331
|
|
||||||
db_input high zoneminder/debconf_dbconfigerror || true
|
|
||||||
db_go || true
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Ask the user for all database settings
|
|
||||||
dbc_go zoneminder $@
|
|
||||||
|
|
||||||
# Ask the user for the password of the database administrator if the user
|
|
||||||
# has not yet answered to this question.
|
|
||||||
# This situation may occur if the user skipped the database creation step
|
|
||||||
# when reconfiguring the package.
|
|
||||||
RET=""
|
|
||||||
db_get zoneminder/mysql/admin-pass
|
|
||||||
if [ -z "$RET" ]; then
|
|
||||||
db_input high zoneminder/mysql/admin-pass || true
|
|
||||||
db_go || true
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Do this only when not upgrading the package (no old version in argument)
|
|
||||||
if [ -z "$2" ]; then
|
|
||||||
# Ask for the password of 'admin' user
|
|
||||||
while :; do
|
|
||||||
RET=""
|
|
||||||
db_input high zoneminder/admin_password || true
|
|
||||||
db_go || true
|
|
||||||
db_get zoneminder/admin_password
|
|
||||||
# If password isn't empty we ask for password verification
|
|
||||||
if [ -z "$RET" ]; then
|
|
||||||
db_fset zoneminder/admin_password seen false
|
|
||||||
db_fset zoneminder/admin_password_again seen false
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
ROOT_PW="$RET"
|
|
||||||
db_input high zoneminder/admin_password_again || true
|
|
||||||
db_go || true
|
|
||||||
db_get zoneminder/admin_password_again
|
|
||||||
if [ "$RET" = "$ROOT_PW" ]; then
|
|
||||||
ROOT_PW=""
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
db_fset zoneminder/password_mismatch seen false
|
|
||||||
db_input critical zoneminder/password_mismatch || true
|
|
||||||
db_set zoneminder/admin_password ""
|
|
||||||
db_set zoneminder/admin_password_again ""
|
|
||||||
db_go || true
|
|
||||||
done
|
|
||||||
else
|
|
||||||
# If we are upgrading the package, set an empty password to disable
|
|
||||||
# password update in ZoneMinder database
|
|
||||||
db_set zoneminder/admin_password ""
|
|
||||||
fi
|
|
||||||
# Set the seen flag to not ask this question again if no password is
|
|
||||||
# provided
|
|
||||||
db_fset zoneminder/admin_password seen true
|
|
||||||
|
|
||||||
fi
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,3 +0,0 @@
|
||||||
usr/share/zoneminder/db
|
|
||||||
usr/share/dbconfig-common/data/zoneminder/install
|
|
||||||
usr/share/dbconfig-common/data/zoneminder/upgrade/mysql
|
|
|
@ -1 +0,0 @@
|
||||||
usr/share/zoneminder/db
|
|
|
@ -1,79 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
# postinst maintainer script for zoneminder-db package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
|
|
||||||
mysql_update() {
|
|
||||||
|
|
||||||
# Source the dbconfig stuff
|
|
||||||
. /usr/share/dbconfig-common/internal/mysql
|
|
||||||
|
|
||||||
# Update the password of the hard-coded default 'admin' account
|
|
||||||
test -z $ADMIN_PASSWORD || dbc_mysql_exec_command "UPDATE Users SET Password = password('$ADMIN_PASSWORD') WHERE Username = 'admin';" || true
|
|
||||||
|
|
||||||
# Update the database version
|
|
||||||
dbc_mysql_exec_command "UPDATE Config SET Value = '$DB_VERSION' WHERE Name = 'ZM_DYN_DB_VERSION';" || true
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ -f /usr/share/dbconfig-common/dpkg/postinst ]; then
|
|
||||||
|
|
||||||
# Set the first version in which dbconfig-common was introduced in the package
|
|
||||||
dbc_first_version="1.28.0"
|
|
||||||
|
|
||||||
# Set the database type
|
|
||||||
dbc_dbtypes="mysql"
|
|
||||||
|
|
||||||
# Source the dbconfig-common stuff
|
|
||||||
. /usr/share/dbconfig-common/dpkg/postinst
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Do this when the package is installed, upgraded or reconfigured
|
|
||||||
if [ "$1" = "configure" ] || [ "$1" = "reconfigure" ]; then
|
|
||||||
|
|
||||||
# Install sql database create file for dbconfig
|
|
||||||
# (needed at first package installation)
|
|
||||||
if [ ! -f /usr/share/dbconfig-common/data/zoneminder/install/mysql ]; then
|
|
||||||
install -m 644 /usr/share/zoneminder/db/zm_create.sql \
|
|
||||||
/usr/share/dbconfig-common/data/zoneminder/install/mysql
|
|
||||||
# Remove unneeded sql requests
|
|
||||||
# dbconfig will create the underlying database
|
|
||||||
sed -i "/^ *CREATE DATABASE /d" \
|
|
||||||
/usr/share/dbconfig-common/data/zoneminder/install/mysql
|
|
||||||
sed -i "/^ *USE /d" \
|
|
||||||
/usr/share/dbconfig-common/data/zoneminder/install/mysql
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Symlink sql update files for dbconfig (needed when upgrading the package)
|
|
||||||
for sqlfile in /usr/share/zoneminder/db/zm_update-*.sql; do
|
|
||||||
lnk=`echo $sqlfile | sed "s/^\/usr\/share\/zoneminder\/db\/zm_update-\(.*\)\.sql/\1/"`
|
|
||||||
if [ ! -L /usr/share/dbconfig-common/data/zoneminder/upgrade/mysql/$lnk ]; then
|
|
||||||
ln -sf $sqlfile \
|
|
||||||
/usr/share/dbconfig-common/data/zoneminder/upgrade/mysql/$lnk
|
|
||||||
fi
|
|
||||||
done || true
|
|
||||||
|
|
||||||
# Create the underlying database and populate it
|
|
||||||
# dbconfig will take care of applying any updates which are newer than the
|
|
||||||
# previously installed version
|
|
||||||
dbc_go zoneminder $@
|
|
||||||
|
|
||||||
# Get the password of ZoneMinder user 'admin' from debconf
|
|
||||||
db_get zoneminder/admin_password
|
|
||||||
ADMIN_PASSWORD=$RET
|
|
||||||
|
|
||||||
# Remove the password from debconf database
|
|
||||||
test -z $ADMIN_PASSWORD || db_reset zoneminder/admin_password || true
|
|
||||||
|
|
||||||
# Get the lastest database version from dbconfig upgrade folder
|
|
||||||
DB_VERSION=$(ls -rv /usr/share/dbconfig-common/data/zoneminder/upgrade/$dbc_dbtypes | head -1)
|
|
||||||
|
|
||||||
# Update the default admin account and database version
|
|
||||||
mysql_update
|
|
||||||
fi
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,34 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
# postrm maintainer script for zoneminder-db package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff
|
|
||||||
if [ -f /usr/share/debconf/confmodule ]; then
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Source the dbconfig stuff
|
|
||||||
if [ -f /usr/share/dbconfig-common/dpkg/postrm ]; then
|
|
||||||
. /usr/share/dbconfig-common/dpkg/postrm
|
|
||||||
# Ask the user what do to with dbconfig when removing the package
|
|
||||||
dbc_go zoneminder $@
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$1" = "remove" ] || [ "$1" = "purge" ]; then
|
|
||||||
# Remove dbconfig stuff added in postinst script
|
|
||||||
rm -rf /usr/share/dbconfig-common/data/zoneminder
|
|
||||||
# No need to manually remove the zm database, dbconfig take care of this
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$1" = "purge" ]; then
|
|
||||||
# Delete a potential remaining file used in postinst script
|
|
||||||
rm -f /etc/zm/zm.conf.postinst.bak
|
|
||||||
fi
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
# postrm rm may freeze without that
|
|
||||||
db_stop
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,22 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# prerm script for zoneminder-db package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff if file exists
|
|
||||||
if [ -f /usr/share/debconf/confmodule ]; then
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
fi
|
|
||||||
|
|
||||||
# If dbconfig-common is installed and has been used by zoneminder
|
|
||||||
if [ -f /usr/share/dbconfig-common/dpkg/prerm ] \
|
|
||||||
&& [ -f /etc/dbconfig-common/zoneminder.conf ]; then
|
|
||||||
# Source the dbconfig stuff
|
|
||||||
. /usr/share/dbconfig-common/dpkg/prerm
|
|
||||||
# Ask the user what do to with dbconfig before removing the package
|
|
||||||
dbc_go zoneminder $@
|
|
||||||
fi
|
|
||||||
|
|
||||||
# #DEBHELPER#
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,58 +0,0 @@
|
||||||
Template: zoneminder/debconf_dblocation
|
|
||||||
Type: select
|
|
||||||
__Choices: local, remote
|
|
||||||
Default: local
|
|
||||||
_Description: Database location:
|
|
||||||
A database server is required to run ZoneMinder. The database can be installed
|
|
||||||
either locally or remotely on a machine of your network.
|
|
||||||
.
|
|
||||||
If you choose a remote location, you will have to select the 'tcp/ip'
|
|
||||||
connection method and enter the hostname or ip address of the remote machine
|
|
||||||
in the next configuration screens.
|
|
||||||
|
|
||||||
Template: zoneminder/debconf_dblocalmissingerror
|
|
||||||
Type: error
|
|
||||||
_Description: No local database server is available:
|
|
||||||
Currently ZoneMinder supports mysql or mariadb database server but none of them
|
|
||||||
appears to be installed on this machine.
|
|
||||||
.
|
|
||||||
In order to complete ZoneMinder's installation, after ending of this assistant,
|
|
||||||
please install a compatible database server and then restart the assistant by
|
|
||||||
invoking:
|
|
||||||
.
|
|
||||||
$ sudo dpkg-reconfigure zoneminder
|
|
||||||
|
|
||||||
Template: zoneminder/debconf_dbconfigerror
|
|
||||||
Type: error
|
|
||||||
_Description: Remote database servers are not allowed:
|
|
||||||
The current configuration of dbconfig-common does not allow installation of
|
|
||||||
a database on remote servers.
|
|
||||||
.
|
|
||||||
In order to reconfigure dbconfig-common, please invoke the following command
|
|
||||||
after ending of this assistant:
|
|
||||||
.
|
|
||||||
$ sudo dpkg-reconfigure dbconfig-common
|
|
||||||
.
|
|
||||||
Then, to complete ZoneMinder's installation, please restart this assistant by
|
|
||||||
invoking:
|
|
||||||
.
|
|
||||||
$ sudo dpkg-reconfigure zoneminder
|
|
||||||
|
|
||||||
Template: zoneminder/admin_password
|
|
||||||
Type: password
|
|
||||||
_Description: New password for the ZoneMinder 'admin' user:
|
|
||||||
Please enter the password of the default administrative user.
|
|
||||||
.
|
|
||||||
While not mandatory, it is highly recommended that you set a custom password
|
|
||||||
for the administrative 'admin' user.
|
|
||||||
.
|
|
||||||
If this field is left blank, the password will not be changed.
|
|
||||||
|
|
||||||
Template: zoneminder/admin_password_again
|
|
||||||
Type: password
|
|
||||||
_Description: Repeat password for the ZoneMinder 'admin' user:
|
|
||||||
|
|
||||||
Template: zoneminder/password_mismatch
|
|
||||||
Type: error
|
|
||||||
_Description: Password input error
|
|
||||||
The two passwords you entered were not the same. Please try again.
|
|
|
@ -1,20 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# config maintainer script for zoneminder-ui-base package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
|
|
||||||
# Do this when the package is installed, upgraded or reconfigured
|
|
||||||
# Most of answers are cached so the questions will not be asked again
|
|
||||||
if [ "$1" = "configure" ] || [ "$1" = "reconfigure" ]; then
|
|
||||||
|
|
||||||
# Ask the user for the web server(s) to configure
|
|
||||||
db_input high zoneminder/webserver || true
|
|
||||||
db_go || true
|
|
||||||
fi
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,11 +0,0 @@
|
||||||
debian/apache.conf etc/zm
|
|
||||||
usr/lib/zoneminder/cgi-bin
|
|
||||||
usr/share/zoneminder/www/ajax
|
|
||||||
usr/share/zoneminder/www/css
|
|
||||||
usr/share/zoneminder/www/graphics
|
|
||||||
usr/share/zoneminder/www/includes
|
|
||||||
usr/share/zoneminder/www/index.php
|
|
||||||
usr/share/zoneminder/www/js
|
|
||||||
usr/share/zoneminder/www/lang
|
|
||||||
usr/share/zoneminder/www/tools
|
|
||||||
usr/share/zoneminder/www/views
|
|
|
@ -1 +0,0 @@
|
||||||
usr/lib/zoneminder/cgi-bin usr/share/zoneminder/cgi-bin
|
|
|
@ -1,48 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
# postinst maintainer script for zoneminder-ui-base package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
|
|
||||||
apache_install() {
|
|
||||||
|
|
||||||
mkdir -p /etc/apache2/conf-available
|
|
||||||
ln -sf ../../zm/apache.conf /etc/apache2/conf-available/zoneminder.conf
|
|
||||||
|
|
||||||
COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true)
|
|
||||||
|
|
||||||
if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then
|
|
||||||
. /usr/share/apache2/apache2-maintscript-helper
|
|
||||||
apache2_invoke enconf zoneminder
|
|
||||||
elif [ "$COMMON_STATE" = "installed" ] || [ "$COMMON_STATE" = "unpacked" ] ; then
|
|
||||||
[ -d /etc/apache2/conf.d/ ] && [ ! -L /etc/apache2/conf.d/zoneminder.conf ] && ln -s ../conf-available/zoneminder.conf /etc/apache2/conf.d/zoneminder.conf
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Enable CGI script module in apache (not enabled by default on jessie)
|
|
||||||
a2enmod cgi >/dev/null 2>&1
|
|
||||||
|
|
||||||
# Reload the web server
|
|
||||||
deb-systemd-invoke reload apache2.service || true
|
|
||||||
}
|
|
||||||
|
|
||||||
# Do this when the package is installed, upgraded or reconfigured
|
|
||||||
if [ "$1" = "configure" ] || [ "$1" = "reconfigure" ]; then
|
|
||||||
|
|
||||||
# Configure the web server
|
|
||||||
db_get zoneminder/webserver
|
|
||||||
webservers="$RET"
|
|
||||||
|
|
||||||
for webserver in $webservers; do
|
|
||||||
webserver=${webserver%,}
|
|
||||||
# Currently we only support apache2
|
|
||||||
if [ "$webserver" = "apache2" ] ; then
|
|
||||||
apache_install $1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,41 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
# postrm maintainer script for zoneminder-ui-base package
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
# Source the debconf stuff
|
|
||||||
if [ -f /usr/share/debconf/confmodule ]; then
|
|
||||||
. /usr/share/debconf/confmodule
|
|
||||||
fi
|
|
||||||
|
|
||||||
apache_remove() {
|
|
||||||
COMMON_STATE=$(dpkg-query -f '${Status}' -W 'apache2.2-common' 2>/dev/null | awk '{print $3}' || true)
|
|
||||||
if [ -e /usr/share/apache2/apache2-maintscript-helper ] ; then
|
|
||||||
. /usr/share/apache2/apache2-maintscript-helper
|
|
||||||
apache2_invoke disconf zoneminder
|
|
||||||
elif [ "$COMMON_STATE" = "installed" ] || [ "$COMMON_STATE" = "unpacked" ] ; then
|
|
||||||
rm -f /etc/apache2/conf.d/zoneminder.conf
|
|
||||||
fi
|
|
||||||
rm -f /etc/apache2/conf-available/zoneminder.conf
|
|
||||||
# Reload the web server
|
|
||||||
deb-systemd-invoke reload apache2.service || true
|
|
||||||
}
|
|
||||||
|
|
||||||
if [ "$1" = "remove" ] || [ "$1" = "purge" ]; then
|
|
||||||
# Deconfigure the web server
|
|
||||||
db_get zoneminder/webserver || true
|
|
||||||
for webserver in $RET; do
|
|
||||||
webserver=${webserver%,}
|
|
||||||
# Currently we only support apache2
|
|
||||||
if [ "$webserver" = "apache2" ] ; then
|
|
||||||
apache_remove $1
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
# postrm rm may freeze without that
|
|
||||||
db_stop
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,7 +0,0 @@
|
||||||
Template: zoneminder/webserver
|
|
||||||
Type: multiselect
|
|
||||||
Choices: apache2
|
|
||||||
Default: apache2
|
|
||||||
_Description: Web server to reconfigure automatically:
|
|
||||||
Please choose the web server that should be automatically configured for
|
|
||||||
ZoneMinder's web portal access.
|
|
|
@ -1 +0,0 @@
|
||||||
usr/share/zoneminder/www/skins/classic
|
|
|
@ -1 +0,0 @@
|
||||||
usr/share/zoneminder/www/skins/mobile
|
|
|
@ -1 +0,0 @@
|
||||||
usr/share/zoneminder/www/skins/xml
|
|
|
@ -1,51 +0,0 @@
|
||||||
zoneminder for Debian
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
There is one manual step to get the web interface working.
|
|
||||||
You need to link /etc/zm/apache.conf to /etc/apache2/conf.d/zoneminder.conf,
|
|
||||||
then reload the apache config (i.e. /etc/init.d/apache2 reload)
|
|
||||||
|
|
||||||
Changing the location for images and events
|
|
||||||
-------------------------------------------
|
|
||||||
|
|
||||||
Zoneminder, in its upstream form, stores data in /usr/share/zoneminder/. This
|
|
||||||
package modifies that by changing /usr/share/zoneminder/images and
|
|
||||||
/usr/share/zoneminder/events to symlinks to directories under
|
|
||||||
/var/cache/zoneminder.
|
|
||||||
|
|
||||||
There are numerous places these could be put and ways to do it. But, at the
|
|
||||||
moment, if you change this, an upgrade will fail with a warning about these
|
|
||||||
locations having changed (the reason for this was that previously, an upgrade
|
|
||||||
would silently revert the changes and cause event loss - refer
|
|
||||||
bug #608793).
|
|
||||||
|
|
||||||
If you do want to change the location, here are a couple of suggestions.
|
|
||||||
|
|
||||||
These lines would mount /dev/sdX1 to /video_storage, and then 'link' /video_storage
|
|
||||||
to the locations that ZoneMinder expects them to be at.
|
|
||||||
|
|
||||||
/dev/sdX1 /video_storage ext4 defaults 0 2
|
|
||||||
/video_storage/zoneminder/images /var/cache/zoneminder/images none bind 0 2
|
|
||||||
/video_storage/zoneminder/events /var/cache/zoneminder/events none bind 0 2
|
|
||||||
|
|
||||||
or if you have a separate partition for each:
|
|
||||||
|
|
||||||
/dev/sdX1 /var/cache/zoneminder/images ext4 defaults 0 2
|
|
||||||
/dev/sdX2 /var/cache/zoneminder/events ext4 defaults 0 2
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Peter Howard <pjh@northern-ridge.com.au>, Sun, 16 Jan 2010 01:35:51 +1100
|
|
||||||
|
|
||||||
Access to /dev/video*
|
|
||||||
---------------------
|
|
||||||
|
|
||||||
For cameras which require access to /dev/video*, zoneminder may need the
|
|
||||||
www-data user added to the video group in order to see those cameras:
|
|
||||||
|
|
||||||
adduser www-data video
|
|
||||||
|
|
||||||
Note that all web applications running on the zoneminder server will then have
|
|
||||||
access to all video devices on the system.
|
|
||||||
|
|
||||||
-- Vagrant Cascadian <vagrant@debian.org> Sun, 27 Mar 2011 13:06:56 -0700
|
|
|
@ -1,9 +0,0 @@
|
||||||
Alias /zm /usr/share/zoneminder/www
|
|
||||||
|
|
||||||
<Directory /usr/share/zoneminder/www>
|
|
||||||
php_flag register_globals off
|
|
||||||
Options Indexes FollowSymLinks
|
|
||||||
<IfModule mod_dir.c>
|
|
||||||
DirectoryIndex index.php
|
|
||||||
</IfModule>
|
|
||||||
</Directory>
|
|
|
@ -1,47 +0,0 @@
|
||||||
zoneminder (1.28.108-nmu2015100101) wheezy; urgency=low
|
|
||||||
|
|
||||||
*
|
|
||||||
|
|
||||||
-- Isaac Connor <iconnor@connortechnology.com> Thu, 01 Oct 2015 18:20:29 +0000
|
|
||||||
|
|
||||||
zoneminder (1.28.107-nmu2015092401) wheezy; urgency=low
|
|
||||||
|
|
||||||
*
|
|
||||||
|
|
||||||
-- Isaac Connor <iconnor@connortechnology.com> Thu, 24 Sep 2015 14:15:46 +0000
|
|
||||||
|
|
||||||
zoneminder (1.28.1+106-nmu2015091001) wheezy; urgency=low
|
|
||||||
|
|
||||||
*
|
|
||||||
|
|
||||||
-- Isaac Connor <iconnor@connortechnology.com> Thu, 10 Sep 2015 18:03:43 +0000
|
|
||||||
|
|
||||||
zoneminder (1.28.0-0.1) wheezy; urgency=low
|
|
||||||
|
|
||||||
* Use CMake instead of Autotools to simplify
|
|
||||||
debian/rules and have less build-depends.
|
|
||||||
* Some lintian love in debian/{control,copyright}
|
|
||||||
and perl ZoneMinder modules.
|
|
||||||
* Don't purge database if we use a remote
|
|
||||||
MySQL server.
|
|
||||||
|
|
||||||
-- Cosme Domínguez Díaz <cosme.ddiaz@gmail.com> Sun, 09 Nov 2014 02:20:20 +0100
|
|
||||||
|
|
||||||
zoneminder (1.28.0-wheezy) wheezy; urgency=medium
|
|
||||||
|
|
||||||
* Release
|
|
||||||
|
|
||||||
-- Isaac Connor <iconnor@connortechnology.com> Fri, 17 Oct 2014 09:27:22 -0400
|
|
||||||
|
|
||||||
zoneminder (1.27.99+1-testing-SNAPSHOT2014072901) testing; urgency=medium
|
|
||||||
|
|
||||||
* improve error messages
|
|
||||||
* Make zmupdate re-run the most recent patch so that people running the daily builds get their db updates
|
|
||||||
|
|
||||||
-- Isaac Connor <iconnor@connortechnology.com> Tue, 29 Jul 2014 14:50:20 -0400
|
|
||||||
|
|
||||||
zoneminder (1.27.0+1-testing-v4ltomonitor-1) testing; urgency=high
|
|
||||||
|
|
||||||
* Snapshot release -
|
|
||||||
|
|
||||||
-- Isaac Connor <iconnor@connortechnology.com> Wed, 09 Jul 2014 21:35:29 -0400
|
|
|
@ -1 +0,0 @@
|
||||||
9
|
|
|
@ -1,40 +0,0 @@
|
||||||
Source: zoneminder
|
|
||||||
Section: net
|
|
||||||
Priority: optional
|
|
||||||
Maintainer: Isaac Connor <iconnor@connortechnology.com>
|
|
||||||
Build-Depends: debhelper (>= 9), cmake, libphp-serialization-perl, libgnutls-dev, libmysqlclient-dev | libmariadbclient-dev, libdbd-mysql-perl, libdate-manip-perl, libwww-perl, libjpeg8-dev, libpcre3-dev, libavcodec-dev, libavformat-dev (>= 3:0.svn20090204), libswscale-dev (>= 3:0.svn20090204), libavutil-dev, libv4l-dev (>= 0.8.3), libbz2-dev, libsys-mmap-perl, libav-tools, libnetpbm10-dev, libavdevice-dev, libdevice-serialport-perl, libarchive-zip-perl, libmime-lite-perl, libvlccore-dev, libvlc-dev, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libgcrypt11-dev, libpolkit-gobject-1-dev
|
|
||||||
Standards-Version: 3.9.4
|
|
||||||
|
|
||||||
Package: zoneminder
|
|
||||||
Architecture: any
|
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}, ${perl:Depends}, apache2 | httpd, libapache2-mod-php5 | libapache2-mod-fcgid | php5-fpm, php5-mysqlnd | php5-mysql, libphp-serialization-perl, libdate-manip-perl, libmime-lite-perl, libmime-tools-perl, mariadb-client | mysql-client, libwww-perl, libarchive-tar-perl, libarchive-zip-perl, libdevice-serialport-perl, libpcre3, libav-tools, rsyslog | system-log-daemon, libmodule-load-perl, libsys-mmap-perl, libjson-any-perl, netpbm, libavdevice53, libjpeg8, zip, libnet-sftp-foreign-perl, libio-pty-perl, libexpect-perl, libvlccore5 | libvlccore7, libvlc5, libcurl4-gnutls-dev | libcurl4-nss-dev | libcurl4-openssl-dev, libpolkit-gobject-1-0, php5-gd
|
|
||||||
Recommends: mysql-server | mariadb-server
|
|
||||||
Description: Video camera security and surveillance solution
|
|
||||||
ZoneMinder is intended for use in single or multi-camera video security
|
|
||||||
applications, including commercial or home CCTV, theft prevention and child
|
|
||||||
or family member or home monitoring and other care scenarios. It
|
|
||||||
supports capture, analysis, recording, and monitoring of video data coming
|
|
||||||
from one or more video or network cameras attached to a Linux system.
|
|
||||||
ZoneMinder also support web and semi-automatic control of Pan/Tilt/Zoom
|
|
||||||
cameras using a variety of protocols. It is suitable for use as a home
|
|
||||||
video security system and for commercial or professional video security
|
|
||||||
and surveillance. It can also be integrated into a home automation system
|
|
||||||
via X.10 or other protocols.
|
|
||||||
|
|
||||||
Package: zoneminder-dbg
|
|
||||||
Architecture: any
|
|
||||||
Section: debug
|
|
||||||
Priority: extra
|
|
||||||
Depends: zoneminder (= ${binary:Version}), ${misc:Depends}
|
|
||||||
Description: Debugging symbols for zoneminder.
|
|
||||||
ZoneMinder is a video camera security and surveillance solution.
|
|
||||||
ZoneMinder is intended for use in single or multi-camera video security
|
|
||||||
applications, including commercial or home CCTV, theft prevention and child
|
|
||||||
or family member or home monitoring and other care scenarios. It
|
|
||||||
supports capture, analysis, recording, and monitoring of video data coming
|
|
||||||
from one or more video or network cameras attached to a Linux system.
|
|
||||||
ZoneMinder also support web and semi-automatic control of Pan/Tilt/Zoom
|
|
||||||
cameras using a variety of protocols. It is suitable for use as a home
|
|
||||||
video security system and for commercial or professional video security
|
|
||||||
and surveillance. It can also be integrated into a home automation system
|
|
||||||
via X.10 or other protocols.
|
|
|
@ -1,57 +0,0 @@
|
||||||
Copyright:
|
|
||||||
|
|
||||||
Copyright 2002 Philip Coombes <philip.coombes@zoneminder.com>
|
|
||||||
|
|
||||||
License:
|
|
||||||
|
|
||||||
This package is free software; you can redistribute it and/or modify it
|
|
||||||
under the terms of the GNU General Public License as published by the
|
|
||||||
Free Software Foundation; either version 2 of the License, or (at your
|
|
||||||
option) any later version.
|
|
||||||
|
|
||||||
This package is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU General Public
|
|
||||||
License along with this package; if not, write to the Free Software
|
|
||||||
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
|
|
||||||
On Debian GNU/Linux systems, the text of the GPL can be found in
|
|
||||||
/usr/share/common-licenses/GPL.
|
|
||||||
|
|
||||||
/usr/share/zoneminder/api/lib/Cake/*:
|
|
||||||
Copyright:
|
|
||||||
|
|
||||||
Copyright (c) 2005-2013, Cake Software Foundation, Inc.
|
|
||||||
|
|
||||||
License:
|
|
||||||
|
|
||||||
CakePHP(tm) : The Rapid Development PHP Framework (http://cakephp.org)
|
|
||||||
|
|
||||||
The MIT License
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a
|
|
||||||
copy of this software and associated documentation files (the "Software"),
|
|
||||||
to deal in the Software without restriction, including without limitation
|
|
||||||
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
||||||
and/or sell copies of the Software, and to permit persons to whom the
|
|
||||||
Software is furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in
|
|
||||||
all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
||||||
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
|
||||||
DEALINGS IN THE SOFTWARE.
|
|
||||||
|
|
||||||
Cake Software Foundation, Inc.
|
|
||||||
1785 E. Sahara Avenue,
|
|
||||||
Suite 490-204
|
|
||||||
Las Vegas, Nevada 89104,
|
|
||||||
United States of America.
|
|
|
@ -1,5 +0,0 @@
|
||||||
var/log/zm
|
|
||||||
var/lib/zm
|
|
||||||
var/cache/zoneminder/events
|
|
||||||
var/cache/zoneminder/images
|
|
||||||
var/cache/zoneminder/temp
|
|
|
@ -1 +0,0 @@
|
||||||
README.md
|
|
|
@ -1,88 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
### BEGIN INIT INFO
|
|
||||||
# Provides: zoneminder
|
|
||||||
# Required-Start: $network $remote_fs $syslog
|
|
||||||
# Required-Stop: $network $remote_fs $syslog
|
|
||||||
# Should-Start: mysql
|
|
||||||
# Should-Stop: mysql
|
|
||||||
# Default-Start: 2 3 4 5
|
|
||||||
# Default-Stop: 0 1 6
|
|
||||||
# Short-Description: Control ZoneMinder as a Service
|
|
||||||
### END INIT INFO
|
|
||||||
# description: Control ZoneMinder as a Service
|
|
||||||
# chkconfig: 2345 20 20
|
|
||||||
|
|
||||||
# Source function library.
|
|
||||||
#. /etc/rc.d/init.d/functions
|
|
||||||
|
|
||||||
prog=ZoneMinder
|
|
||||||
ZM_PATH_BIN="/usr/bin"
|
|
||||||
RUNDIR=/var/run/zm
|
|
||||||
TMPDIR=/tmp/zm
|
|
||||||
command="$ZM_PATH_BIN/zmpkg.pl"
|
|
||||||
|
|
||||||
start() {
|
|
||||||
echo -n "Starting $prog: "
|
|
||||||
export TZ=:/etc/localtime
|
|
||||||
mkdir -p $RUNDIR $TMPDIR && chown www-data:www-data $RUNDIR $TMPDIR
|
|
||||||
$command start
|
|
||||||
RETVAL=$?
|
|
||||||
[ $RETVAL = 0 ] && echo success || echo failure
|
|
||||||
echo
|
|
||||||
[ $RETVAL = 0 ] && touch /var/lock/zm
|
|
||||||
return $RETVAL
|
|
||||||
}
|
|
||||||
stop() {
|
|
||||||
echo -n "Stopping $prog: "
|
|
||||||
#
|
|
||||||
# Why is this status check being done?
|
|
||||||
# as $command stop returns 1 if zoneminder
|
|
||||||
# is stopped, which will result in
|
|
||||||
# this returning 1, which will stuff
|
|
||||||
# dpkg when it tries to stop zoneminder before
|
|
||||||
# uninstalling . . .
|
|
||||||
#
|
|
||||||
result=`$command status`
|
|
||||||
if [ ! "$result" = "running" ]; then
|
|
||||||
echo "Zoneminder already stopped"
|
|
||||||
echo
|
|
||||||
RETVAL=0
|
|
||||||
else
|
|
||||||
$command stop
|
|
||||||
RETVAL=$?
|
|
||||||
[ $RETVAL = 0 ] && echo success || echo failure
|
|
||||||
echo
|
|
||||||
[ $RETVAL = 0 ] && rm -f /var/lock/zm
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
status() {
|
|
||||||
result=`$command status`
|
|
||||||
if [ "$result" = "running" ]; then
|
|
||||||
echo "ZoneMinder is running"
|
|
||||||
RETVAL=0
|
|
||||||
else
|
|
||||||
echo "ZoneMinder is stopped"
|
|
||||||
RETVAL=1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
'start')
|
|
||||||
start
|
|
||||||
;;
|
|
||||||
'stop')
|
|
||||||
stop
|
|
||||||
;;
|
|
||||||
'restart' | 'force-reload')
|
|
||||||
stop
|
|
||||||
start
|
|
||||||
;;
|
|
||||||
'status')
|
|
||||||
status
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Usage: $0 { start | stop | restart | status }"
|
|
||||||
RETVAL=1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
exit $RETVAL
|
|
|
@ -1,8 +0,0 @@
|
||||||
usr/bin
|
|
||||||
usr/lib/zoneminder/cgi-bin
|
|
||||||
usr/share/man
|
|
||||||
usr/share/perl5/ZoneMinder
|
|
||||||
usr/share/perl5/ZoneMinder.pm
|
|
||||||
usr/share/zoneminder/db
|
|
||||||
usr/share/zoneminder/www
|
|
||||||
etc/zm
|
|
|
@ -1,3 +0,0 @@
|
||||||
var/cache/zoneminder/events usr/share/zoneminder/events
|
|
||||||
var/cache/zoneminder/images usr/share/zoneminder/images
|
|
||||||
var/cache/zoneminder/temp usr/share/zoneminder/temp
|
|
|
@ -1,53 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
if [ "$1" = "configure" ]; then
|
|
||||||
if [ -e "/etc/init.d/mysql" ]; then
|
|
||||||
#
|
|
||||||
# Get mysql started if it isn't
|
|
||||||
#
|
|
||||||
if ! $(/etc/init.d/mysql status >/dev/null 2>&1); then
|
|
||||||
invoke-rc.d mysql start
|
|
||||||
fi
|
|
||||||
if $(/etc/init.d/mysql status >/dev/null 2>&1); then
|
|
||||||
mysqladmin --defaults-file=/etc/mysql/debian.cnf -f reload
|
|
||||||
# test if database if already present...
|
|
||||||
if ! $(echo quit | mysql --defaults-file=/etc/mysql/debian.cnf zm > /dev/null 2> /dev/null) ; then
|
|
||||||
cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/debian.cnf
|
|
||||||
echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
|
||||||
fi
|
|
||||||
|
|
||||||
invoke-rc.d zoneminder stop || true
|
|
||||||
zmupdate.pl --nointeractive
|
|
||||||
|
|
||||||
else
|
|
||||||
echo 'NOTE: mysql not running, please start mysql and run dpkg-reconfigure zoneminder when it is running.'
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo 'mysql not found, assuming remote server.'
|
|
||||||
fi
|
|
||||||
chown www-data:www-data /var/log/zm
|
|
||||||
chown www-data:www-data /var/lib/zm/
|
|
||||||
if [ -z "$2" ]; then
|
|
||||||
chown www-data:www-data -R /var/cache/zoneminder
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
# Ensure zoneminder is stopped...
|
|
||||||
if [ -x "/etc/init.d/zoneminder" ]; then
|
|
||||||
if invoke-rc.d zoneminder status ; then
|
|
||||||
invoke-rc.d zoneminder stop || exit $?
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$1" = "configure" ]; then
|
|
||||||
if [ -z "$2" ]; then
|
|
||||||
chown www-data:www-data /var/log/zm
|
|
||||||
chown www-data:www-data /var/lib/zm/
|
|
||||||
chown www-data:www-data -R /var/cache/zoneminder
|
|
||||||
else
|
|
||||||
chown www-data:www-data /var/log/zm
|
|
||||||
zmupdate.pl
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
#DEBHELPER#
|
|
|
@ -1,11 +0,0 @@
|
||||||
#! /bin/sh
|
|
||||||
set -e
|
|
||||||
|
|
||||||
if [ "$1" = "purge" ]; then
|
|
||||||
if [ -e "/etc/init.d/mysql" ]; then
|
|
||||||
echo 'delete from user where User="zmuser";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
|
||||||
echo 'delete from db where User="zmuser";' | mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
|
||||||
mysqladmin --defaults-file=/etc/mysql/debian.cnf -f drop zm
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
#DEBHELPER#
|
|
|
@ -1,32 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
set -e
|
|
||||||
|
|
||||||
abort=false
|
|
||||||
if [ -L /usr/share/zoneminder/events ]; then
|
|
||||||
l=$(readlink /usr/share/zoneminder/events)
|
|
||||||
if [ "$l" != "/var/cache/zoneminder/events" ]; then
|
|
||||||
abort=true
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
if [ -L /usr/share/zoneminder/images ]; then
|
|
||||||
l=$(readlink /usr/share/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
|
|
||||||
/usr/share/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
|
|
||||||
|
|
||||||
#DEBHELPER#
|
|
||||||
|
|
||||||
exit 0
|
|
|
@ -1,41 +0,0 @@
|
||||||
#!/usr/bin/make -f
|
|
||||||
# -*- makefile -*-
|
|
||||||
# Uncomment this to turn on verbose mode.
|
|
||||||
#export DH_VERBOSE=1
|
|
||||||
|
|
||||||
export CFLAGS = -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -pipe
|
|
||||||
export CXXFLAGS = -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -pipe
|
|
||||||
INSTDIR = debian/tmp
|
|
||||||
|
|
||||||
override_dh_auto_configure:
|
|
||||||
dh_auto_configure -- \
|
|
||||||
-DCMAKE_INSTALL_PREFIX=/usr \
|
|
||||||
-DCMAKE_SKIP_RPATH=ON \
|
|
||||||
-DCMAKE_VERBOSE_MAKEFILE=OFF \
|
|
||||||
-DCMAKE_COLOR_MAKEFILE=ON \
|
|
||||||
-DZM_RUNDIR=/var/run/zm \
|
|
||||||
-DZM_SOCKDIR=/var/run/zm \
|
|
||||||
-DZM_TMPDIR=/var/tmp/zm \
|
|
||||||
-DZM_LOGDIR=/var/log/zm \
|
|
||||||
-DZM_WEBDIR=/usr/share/zoneminder/www \
|
|
||||||
-DZM_CONTENTDIR=/var/cache/zoneminder \
|
|
||||||
-DZM_CGIDIR=/usr/lib/zoneminder/cgi-bin \
|
|
||||||
-DZM_WEB_USER=www-data \
|
|
||||||
-DZM_WEB_GROUP=www-data \
|
|
||||||
-DCMAKE_INSTALL_SYSCONFDIR=etc/zm
|
|
||||||
|
|
||||||
override_dh_auto_install:
|
|
||||||
dh_auto_install --buildsystem=cmake
|
|
||||||
install -D -m 0644 debian/apache.conf $(INSTDIR)/etc/zm/apache.conf
|
|
||||||
rm $(INSTDIR)/usr/share/zoneminder/api/lib/Cake/LICENSE.txt
|
|
||||||
rm $(INSTDIR)/usr/share/zoneminder/api/.gitignore
|
|
||||||
rm -r $(INSTDIR)/usr/share/zoneminder/api/lib/Cake/Test
|
|
||||||
|
|
||||||
override_dh_auto_test:
|
|
||||||
# do not run tests...
|
|
||||||
|
|
||||||
override_dh_strip:
|
|
||||||
dh_strip --dbg-package=zoneminder-dbg
|
|
||||||
|
|
||||||
%:
|
|
||||||
dh $@ --buildsystem=cmake --parallel
|
|
|
@ -1,3 +0,0 @@
|
||||||
version=3
|
|
||||||
http://www.zoneminder.com/downloads.html \
|
|
||||||
.*/ZoneMinder-(.*).tar.gz
|
|
|
@ -10,7 +10,7 @@ configure_file(zoneminder.tmpfiles.in ${CMAKE_CURRENT_SOURCE_DIR}/zoneminder.tmp
|
||||||
configure_file(zoneminder.logrotate.in ${CMAKE_CURRENT_SOURCE_DIR}/zoneminder.logrotate @ONLY)
|
configure_file(zoneminder.logrotate.in ${CMAKE_CURRENT_SOURCE_DIR}/zoneminder.logrotate @ONLY)
|
||||||
|
|
||||||
# Download jscalendar & move files into position
|
# Download jscalendar & move files into position
|
||||||
file(DOWNLOAD http://downloads.sourceforge.net/jscalendar/jscalendar-1.0.zip ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar-1.0.zip STATUS download_jsc)
|
file(DOWNLOAD http://iweb.dl.sourceforge.net/project/jscalendar/jscalendar/1.0/jscalendar-1.0.zip ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar-1.0.zip STATUS download_jsc)
|
||||||
if(download_jsc EQUAL 0)
|
if(download_jsc EQUAL 0)
|
||||||
message(STATUS "Jscalander successfully downloaded. Installing...")
|
message(STATUS "Jscalander successfully downloaded. Installing...")
|
||||||
execute_process(COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar.sh WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ERROR_VARIABLE unzip_jsc)
|
execute_process(COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar.sh WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ERROR_VARIABLE unzip_jsc)
|
||||||
|
|
|
@ -5,27 +5,19 @@ What's New
|
||||||
"/cgi-bin-zm/zms". This has been to done to avoid this bug:
|
"/cgi-bin-zm/zms". This has been to done to avoid this bug:
|
||||||
https://bugzilla.redhat.com/show_bug.cgi?id=973067
|
https://bugzilla.redhat.com/show_bug.cgi?id=973067
|
||||||
|
|
||||||
IMPORTANT: ZoneMinder will not update this value during an upgrade. You must
|
IMPORTANT: You must manually inspect the value for PATH_ZMS under Options
|
||||||
manually update ZM_PATH_ZMS yourself under Options. This does not affect
|
and verify it is set to "/cgi-bin-zm/nph-zms". Failure to do so will result
|
||||||
new installs.
|
in a broken system. You have been warned.
|
||||||
|
|
||||||
2. The ZoneMinder config file, zm.conf, has been moved under /etc/zm.
|
2. Due to the active state of the ZoneMinder project, we now recommend granting
|
||||||
|
|
||||||
3. Due to the active state of the ZoneMinder project, we now recommend granting
|
|
||||||
ALL permission to the ZoneMinder mysql account. This change must be done
|
ALL permission to the ZoneMinder mysql account. This change must be done
|
||||||
manually before ZoneMinder will run. See the installation steps below.
|
manually before ZoneMinder will run. See the installation steps below.
|
||||||
|
|
||||||
4. A new permission group called "Groups" has been added. This allows the
|
3. This package uses the HTTPS protocol by default to access the web portal.
|
||||||
system administrator to assign "view", "edit", or "none" permission to
|
|
||||||
normal users, without giving them access to the rest of the ZoneMinder
|
|
||||||
system. During an upgrade, existing accounts will default to a Groups
|
|
||||||
permission of "none".
|
|
||||||
|
|
||||||
5. This package now requires the HTTPS protocol to access the web portal.
|
|
||||||
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
||||||
more information.
|
more information.
|
||||||
|
|
||||||
6. This package ships with the new ZoneMinder API enabled.
|
4. This package ships with the new ZoneMinder API enabled.
|
||||||
|
|
||||||
New installs
|
New installs
|
||||||
============
|
============
|
||||||
|
@ -50,7 +42,7 @@ New installs
|
||||||
mysqladmin -uroot -p reload
|
mysqladmin -uroot -p reload
|
||||||
|
|
||||||
The database account credentials, zmuser/zmpass, are arbitrary. Set them to
|
The database account credentials, zmuser/zmpass, are arbitrary. Set them to
|
||||||
anything that suits your envinroment.
|
anything that suits your environment.
|
||||||
|
|
||||||
3. If you have chosen to change the zoneminder database account credentials to
|
3. If you have chosen to change the zoneminder database account credentials to
|
||||||
something other than zmuser/zmpass, you must now edit /etc/zm/zm.conf.
|
something other than zmuser/zmpass, you must now edit /etc/zm/zm.conf.
|
||||||
|
@ -86,13 +78,22 @@ New installs
|
||||||
SELINUX line from "enforcing" to "disabled". This change will take
|
SELINUX line from "enforcing" to "disabled". This change will take
|
||||||
effect after a reboot.
|
effect after a reboot.
|
||||||
|
|
||||||
|
6. Install mod_ssl or configure /etc/httpd/conf.d/zoneminder.conf to meet your
|
||||||
|
needs. This package comes preconfigured for HTTPS using the default self
|
||||||
|
signed certificate on your system. The recommended way to complete this step
|
||||||
|
is to simply install mod_ssl:
|
||||||
|
|
||||||
6. Now start the web server:
|
sudo yum install mod_ssl
|
||||||
|
|
||||||
|
If this does not meet your needs, then read README.https to
|
||||||
|
learn about alternatives. When in doubt, install mod_ssl.
|
||||||
|
|
||||||
|
7. Now start the web server:
|
||||||
|
|
||||||
sudo systemctl enable httpd
|
sudo systemctl enable httpd
|
||||||
sudo systemctl start httpd
|
sudo systemctl start httpd
|
||||||
|
|
||||||
7. Now start zoneminder:
|
8. Now start zoneminder:
|
||||||
|
|
||||||
sudo systemctl enable zoneminder
|
sudo systemctl enable zoneminder
|
||||||
sudo systemctl start zoneminder
|
sudo systemctl start zoneminder
|
||||||
|
@ -131,6 +132,7 @@ Upgrades
|
||||||
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
||||||
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
||||||
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
||||||
|
Verify the SSL REquirements meet your needs. Read README.https if necessary.
|
||||||
|
|
||||||
4. Upgrade the database before starting ZoneMinder.
|
4. Upgrade the database before starting ZoneMinder.
|
||||||
|
|
||||||
|
|
|
@ -140,7 +140,6 @@ fi
|
||||||
# zmfix removed from zoneminder 1.26.6
|
# zmfix removed from zoneminder 1.26.6
|
||||||
#%attr(4755,root,root) %{_bindir}/zmfix
|
#%attr(4755,root,root) %{_bindir}/zmfix
|
||||||
%{_bindir}/zmpkg.pl
|
%{_bindir}/zmpkg.pl
|
||||||
%{_bindir}/zmstreamer
|
|
||||||
%{_bindir}/zmtrack.pl
|
%{_bindir}/zmtrack.pl
|
||||||
%{_bindir}/zmtrigger.pl
|
%{_bindir}/zmtrigger.pl
|
||||||
%{_bindir}/zmu
|
%{_bindir}/zmu
|
||||||
|
|
|
@ -232,7 +232,6 @@ fi
|
||||||
# zmfix removed from zoneminder 1.26.6
|
# zmfix removed from zoneminder 1.26.6
|
||||||
#%attr(4755,root,root) %{_bindir}/zmfix
|
#%attr(4755,root,root) %{_bindir}/zmfix
|
||||||
%{_bindir}/zmpkg.pl
|
%{_bindir}/zmpkg.pl
|
||||||
%{_bindir}/zmstreamer
|
|
||||||
%{_bindir}/zmtrack.pl
|
%{_bindir}/zmtrack.pl
|
||||||
%{_bindir}/zmtrigger.pl
|
%{_bindir}/zmtrigger.pl
|
||||||
%{_bindir}/zmu
|
%{_bindir}/zmu
|
||||||
|
|
|
@ -142,7 +142,6 @@ fi
|
||||||
%{_bindir}/zmf
|
%{_bindir}/zmf
|
||||||
%{_bindir}/zmfilter.pl
|
%{_bindir}/zmfilter.pl
|
||||||
%{_bindir}/zmpkg.pl
|
%{_bindir}/zmpkg.pl
|
||||||
%{_bindir}/zmstreamer
|
|
||||||
%{_bindir}/zmtrack.pl
|
%{_bindir}/zmtrack.pl
|
||||||
%{_bindir}/zmtrigger.pl
|
%{_bindir}/zmtrigger.pl
|
||||||
%{_bindir}/zmu
|
%{_bindir}/zmu
|
||||||
|
|
|
@ -142,7 +142,6 @@ fi
|
||||||
%{_bindir}/zmf
|
%{_bindir}/zmf
|
||||||
%{_bindir}/zmfilter.pl
|
%{_bindir}/zmfilter.pl
|
||||||
%{_bindir}/zmpkg.pl
|
%{_bindir}/zmpkg.pl
|
||||||
%{_bindir}/zmstreamer
|
|
||||||
%{_bindir}/zmtrack.pl
|
%{_bindir}/zmtrack.pl
|
||||||
%{_bindir}/zmtrigger.pl
|
%{_bindir}/zmtrigger.pl
|
||||||
%{_bindir}/zmu
|
%{_bindir}/zmu
|
||||||
|
|
|
@ -1,409 +0,0 @@
|
||||||
%define zmuid $(id -un)
|
|
||||||
%define zmgid $(id -gn)
|
|
||||||
%define zmuid_final apache
|
|
||||||
%define zmgid_final apache
|
|
||||||
|
|
||||||
%global _hardened_build 1
|
|
||||||
|
|
||||||
### Delete the lines below to build with ffmpeg and/or x10
|
|
||||||
%define _without_ffmpeg 1
|
|
||||||
%define _without_x10 1
|
|
||||||
|
|
||||||
Name: zoneminder
|
|
||||||
Version: 1.29.0
|
|
||||||
Release: 1%{?dist}
|
|
||||||
Summary: A camera monitoring and analysis tool
|
|
||||||
Group: System Environment/Daemons
|
|
||||||
# jscalendar is LGPL (any version): http://www.dynarch.com/projects/calendar/
|
|
||||||
# Mootools is inder the MIT license: http://mootools.net/
|
|
||||||
License: GPLv2+ and LGPLv2+ and MIT
|
|
||||||
URL: http://www.zoneminder.com/
|
|
||||||
|
|
||||||
#Source: https://github.com/ZoneMinder/ZoneMinder/archive/v%{version}.tar.gz
|
|
||||||
Source: ZoneMinder-%{version}.tar.gz
|
|
||||||
|
|
||||||
BuildRequires: cmake gnutls-devel systemd-units bzip2-devel
|
|
||||||
BuildRequires: mariadb-devel pcre-devel libjpeg-turbo-devel
|
|
||||||
BuildRequires: perl(Archive::Tar) perl(Archive::Zip) perl-podlators
|
|
||||||
BuildRequires: perl(Date::Manip) perl(DBD::mysql)
|
|
||||||
BuildRequires: perl(ExtUtils::MakeMaker) perl(LWP::UserAgent)
|
|
||||||
BuildRequires: perl(MIME::Entity) perl(MIME::Lite)
|
|
||||||
BuildRequires: perl(PHP::Serialization) perl(Sys::Mmap)
|
|
||||||
BuildRequires: perl(Time::HiRes) perl(Net::SFTP::Foreign)
|
|
||||||
BuildRequires: perl(Expect) perl(Sys::Syslog)
|
|
||||||
BuildRequires: gcc gcc-c++ vlc-devel libcurl-devel libv4l-devel
|
|
||||||
%{!?_without_ffmpeg:BuildRequires: ffmpeg-devel}
|
|
||||||
%{!?_without_x10:BuildRequires: perl(X10::ActiveHome) perl(Astro::SunTime)}
|
|
||||||
# cmake needs the following installed at build time due to the way it auto-detects certain parameters
|
|
||||||
BuildRequires: httpd polkit-devel
|
|
||||||
%{!?_without_ffmpeg:BuildRequires: ffmpeg}
|
|
||||||
|
|
||||||
Requires: httpd php php-gd php-mysql cambozola polkit net-tools psmisc
|
|
||||||
Requires: libjpeg-turbo vlc-core libcurl
|
|
||||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
|
||||||
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
|
||||||
Requires: perl(MIME::Entity) perl(MIME::Lite) perl(Net::SMTP) perl(Net::FTP)
|
|
||||||
Requires: perl(LWP::Protocol::https)
|
|
||||||
%{!?_without_ffmpeg:Requires: ffmpeg}
|
|
||||||
|
|
||||||
Requires(post): systemd-units systemd-sysv
|
|
||||||
Requires(post): /usr/bin/gpasswd
|
|
||||||
Requires(post): /usr/bin/less
|
|
||||||
Requires(preun): systemd-units
|
|
||||||
Requires(postun): systemd-units
|
|
||||||
|
|
||||||
%description
|
|
||||||
ZoneMinder is a set of applications which is intended to provide a complete
|
|
||||||
solution allowing you to capture, analyse, record and monitor any cameras you
|
|
||||||
have attached to a Linux based machine. It is designed to run on kernels which
|
|
||||||
support the Video For Linux (V4L) interface and has been tested with cameras
|
|
||||||
attached to BTTV cards, various USB cameras and IP network cameras. It is
|
|
||||||
designed to support as many cameras as you can attach to your computer without
|
|
||||||
too much degradation of performance.
|
|
||||||
|
|
||||||
%prep
|
|
||||||
%setup -q -n ZoneMinder-%{version}
|
|
||||||
|
|
||||||
# Change the following default values
|
|
||||||
./utils/zmeditconfigdata.sh ZM_PATH_ZMS /cgi-bin-zm/nph-zms
|
|
||||||
./utils/zmeditconfigdata.sh ZM_OPT_CAMBOZOLA yes
|
|
||||||
./utils/zmeditconfigdata.sh ZM_PATH_SWAP /dev/shm
|
|
||||||
./utils/zmeditconfigdata.sh ZM_UPLOAD_FTP_LOC_DIR /var/spool/zoneminder-upload
|
|
||||||
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
|
||||||
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
|
||||||
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
|
||||||
|
|
||||||
%build
|
|
||||||
%cmake \
|
|
||||||
-DZM_TARGET_DISTRO="f22" \
|
|
||||||
%{?_without_ffmpeg:-DZM_NO_FFMPEG=ON} \
|
|
||||||
%{?_without_x10:-DZM_NO_X10=ON} \
|
|
||||||
.
|
|
||||||
|
|
||||||
make %{?_smp_mflags}
|
|
||||||
|
|
||||||
%install
|
|
||||||
export DESTDIR=%{buildroot}
|
|
||||||
make install
|
|
||||||
|
|
||||||
%post
|
|
||||||
if [ $1 -eq 1 ] ; then
|
|
||||||
# Initial installation
|
|
||||||
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Allow zoneminder access to local video sources, serial ports, and x10
|
|
||||||
/usr/bin/gpasswd -a %{zmuid_final} video
|
|
||||||
/usr/bin/gpasswd -a %{zmuid_final} dialout
|
|
||||||
|
|
||||||
# Upgrade from a previous version of zoneminder
|
|
||||||
if [ $1 -eq 2 ] ; then
|
|
||||||
# Freshen the database
|
|
||||||
/usr/bin/zmupdate.pl -f
|
|
||||||
|
|
||||||
# We can't run this automatically when new sql account permissions need to
|
|
||||||
# be manually added first
|
|
||||||
# Run zmupdate non-interactively
|
|
||||||
#/usr/bin/zmupdate.pl --nointeractive
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Warn the end user to read the README file
|
|
||||||
echo -e "\nVERY IMPORTANT: Before starting ZoneMinder, read README.Fedora to finish the\ninstallation or upgrade!\n"
|
|
||||||
echo -e "\nThe README file is located here: %{_docdir}/%{name}\n"
|
|
||||||
|
|
||||||
%preun
|
|
||||||
if [ $1 -eq 0 ] ; then
|
|
||||||
# Package removal, not upgrade
|
|
||||||
/bin/systemctl --no-reload disable zoneminder.service > /dev/null 2>&1 || :
|
|
||||||
/bin/systemctl stop zoneminder.service > /dev/null 2>&1 || :
|
|
||||||
fi
|
|
||||||
|
|
||||||
%postun
|
|
||||||
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
|
|
||||||
if [ $1 -ge 1 ] ; then
|
|
||||||
# Package upgrade, not uninstall
|
|
||||||
/bin/systemctl try-restart zoneminder.service >/dev/null 2>&1 || :
|
|
||||||
fi
|
|
||||||
|
|
||||||
%triggerun -- zoneminder < 1.25.0-4
|
|
||||||
# Save the current service runlevel info
|
|
||||||
# User must manually run systemd-sysv-convert --apply zoneminder
|
|
||||||
# to migrate them to systemd targets
|
|
||||||
/usr/bin/systemd-sysv-convert --save zoneminder >/dev/null 2>&1 ||:
|
|
||||||
|
|
||||||
# Run these because the SysV package being removed won't do them
|
|
||||||
/sbin/chkconfig --del zoneminder >/dev/null 2>&1 || :
|
|
||||||
/bin/systemctl try-restart zoneminder.service >/dev/null 2>&1 || :
|
|
||||||
|
|
||||||
|
|
||||||
%files
|
|
||||||
%defattr(-,root,root,-)
|
|
||||||
%doc AUTHORS COPYING README.md distros/fedora/README.Fedora distros/fedora/README.https distros/fedora/jscalendar-doc
|
|
||||||
%config %attr(640,root,%{zmgid_final}) /etc/zm/zm.conf
|
|
||||||
%config(noreplace) %attr(644,root,root) /etc/httpd/conf.d/zoneminder.conf
|
|
||||||
%config(noreplace) /etc/tmpfiles.d/zoneminder.conf
|
|
||||||
%config(noreplace) /etc/logrotate.d/zoneminder
|
|
||||||
|
|
||||||
%{_unitdir}/zoneminder.service
|
|
||||||
|
|
||||||
%{_bindir}/zma
|
|
||||||
%{_bindir}/zmaudit.pl
|
|
||||||
%{_bindir}/zmc
|
|
||||||
%{_bindir}/zmcontrol.pl
|
|
||||||
%{_bindir}/zmdc.pl
|
|
||||||
%{_bindir}/zmf
|
|
||||||
%{_bindir}/zmfilter.pl
|
|
||||||
%{_bindir}/zmpkg.pl
|
|
||||||
%{_bindir}/zmstreamer
|
|
||||||
%{_bindir}/zmtrack.pl
|
|
||||||
%{_bindir}/zmtrigger.pl
|
|
||||||
%{_bindir}/zmu
|
|
||||||
%{_bindir}/zmupdate.pl
|
|
||||||
%{_bindir}/zmvideo.pl
|
|
||||||
%{_bindir}/zmwatch.pl
|
|
||||||
%{_bindir}/zmcamtool.pl
|
|
||||||
%{_bindir}/zmsystemctl.pl
|
|
||||||
%{!?_without_x10:%{_bindir}/zmx10.pl}
|
|
||||||
|
|
||||||
%{perl_vendorlib}/ZoneMinder*
|
|
||||||
%{_mandir}/man*/*
|
|
||||||
%dir %{_libexecdir}/zoneminder
|
|
||||||
%{_libexecdir}/zoneminder/cgi-bin
|
|
||||||
%dir %{_datadir}/zoneminder
|
|
||||||
%{_datadir}/zoneminder/db
|
|
||||||
%{_datadir}/zoneminder/www
|
|
||||||
|
|
||||||
%{_datadir}/polkit-1/actions/com.zoneminder.systemctl.policy
|
|
||||||
%{_datadir}/polkit-1/rules.d/com.zoneminder.systemctl.rules
|
|
||||||
|
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder
|
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/events
|
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/images
|
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/sock
|
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/swap
|
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/lib/zoneminder/temp
|
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/log/zoneminder
|
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /var/spool/zoneminder-upload
|
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) /run/zoneminder
|
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
|
||||||
* Sat Feb 14 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.1
|
|
||||||
- Bump version for 1.28.1 release on Fedora 21.
|
|
||||||
|
|
||||||
* Sun Oct 5 2014 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.0
|
|
||||||
- Bump version for 1.28.0 release.
|
|
||||||
|
|
||||||
* Fri Mar 14 2014 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.27
|
|
||||||
- Tweak build requirements for cmake
|
|
||||||
|
|
||||||
* Sat Feb 01 2014 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.27
|
|
||||||
- Add zmcamtool.pl. Bump version for 1.27 release.
|
|
||||||
|
|
||||||
* Mon Dec 16 2013 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.26.5
|
|
||||||
- This is a bug fixe release
|
|
||||||
- RTSP fixes, cmake enhancements, couple other misc fixes
|
|
||||||
|
|
||||||
* Mon Oct 07 2013 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.26.4
|
|
||||||
- Initial cmake build.
|
|
||||||
|
|
||||||
* Sat Oct 05 2013 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.26.4
|
|
||||||
- Fedora specific path changes have been moved to zoneminder-1.26.0-defaults.patch
|
|
||||||
- All files are now part of the zoneminder source tree. Update specfile accordingly.
|
|
||||||
|
|
||||||
* Sat Sep 21 2013 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.26.3
|
|
||||||
- Initial rebuild for ZoneMinder 1.26.3 release.
|
|
||||||
|
|
||||||
* Fri Feb 15 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.25.0-13
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
|
|
||||||
|
|
||||||
* Mon Jan 21 2013 Adam Tkac <atkac redhat com> - 1.25.0-12
|
|
||||||
- rebuild due to "jpeg8-ABI" feature drop
|
|
||||||
|
|
||||||
* Mon Jan 7 2013 Remi Collet <rcollet@redhat.com> - 1.25.0-11
|
|
||||||
- fix configuration file for httpd 2.4, #871502
|
|
||||||
|
|
||||||
* Fri Dec 21 2012 Adam Tkac <atkac redhat com> - 1.25.0-10
|
|
||||||
- rebuild against new libjpeg
|
|
||||||
|
|
||||||
* Thu Aug 09 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-9
|
|
||||||
- Add patch to work around v4l2 api breakage in 3.5 kernel.
|
|
||||||
|
|
||||||
* Sun Jul 22 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.25.0-8
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Jun 23 2012 Petr Pisar <ppisar@redhat.com> - 1.25.0-7
|
|
||||||
- Perl 5.16 rebuild
|
|
||||||
|
|
||||||
* Wed Mar 21 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-6
|
|
||||||
- Fix stupid thinko in sql modifications.
|
|
||||||
|
|
||||||
* Sat Feb 25 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-5
|
|
||||||
- Clean up macro usage.
|
|
||||||
|
|
||||||
* Sat Feb 25 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-4
|
|
||||||
- Convert to systemd.
|
|
||||||
- Add tmpfiles.d configuration since the initscript isn't around to create
|
|
||||||
/run/zoneminder.
|
|
||||||
- Remove some pointless executable permissions.
|
|
||||||
- Add logrotate file.
|
|
||||||
|
|
||||||
* Wed Feb 22 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-3
|
|
||||||
- Update README.Fedora to reference systemctl and mention timezone info in
|
|
||||||
php.ini.
|
|
||||||
- Add proper default for EYEZM_LOG_TO_FILE.
|
|
||||||
|
|
||||||
|
|
||||||
* Thu Feb 09 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-2
|
|
||||||
- Rebuild for new pcre.
|
|
||||||
|
|
||||||
* Thu Jan 19 2012 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.25.0-1
|
|
||||||
- Update to 1.25.0
|
|
||||||
- Fix gcc4.7 build problems.
|
|
||||||
- Drop gcc4.4 build fixes; for whatever reason they now break the build.
|
|
||||||
- Clean up old patches.
|
|
||||||
- Force setting of ZM_TMPDIR and ZM_RUNDIR.
|
|
||||||
|
|
||||||
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.24.4-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu Sep 15 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.4-3
|
|
||||||
- Re-add the dist-tag that somehow got lost.
|
|
||||||
|
|
||||||
* Thu Sep 15 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.4-2
|
|
||||||
- Add patch for bug 711780 - fix syntax issue in Mapped.pm.
|
|
||||||
- Undo that patch, and undo another which was the cause of the whole mess.
|
|
||||||
- Fix up other patches so ZM_PATH_BUILD is both defined and useful.
|
|
||||||
- Make sure database creation mods actually take.
|
|
||||||
- Update Fedora-specific docs with some additional info.
|
|
||||||
- Use bundled mootools (javascript, so no guideline violation).
|
|
||||||
- Update download location.
|
|
||||||
- Update the gcrypt patch to actually work.
|
|
||||||
- Upstream changed the tarball without changing the version to patch a
|
|
||||||
vulnerability, so redownload.
|
|
||||||
|
|
||||||
* Sun Aug 14 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.4-1
|
|
||||||
- Initial attempt to upgrade to 1.24.4.
|
|
||||||
- Add patch from BZ 460310 to build against libgcrypt instead of requiring the
|
|
||||||
gnutls openssl libs.
|
|
||||||
|
|
||||||
* Thu Jul 21 2011 Petr Sabata <contyk@redhat.com> - 1.24.3-7.20110324svn3310
|
|
||||||
- Perl mass rebuild
|
|
||||||
|
|
||||||
* Wed Jul 20 2011 Petr Sabata <contyk@redhat.com> - 1.24.3-6.20110324svn3310
|
|
||||||
- Perl mass rebuild
|
|
||||||
|
|
||||||
* Mon May 09 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.3-5.20110324svn3310
|
|
||||||
- Bump for gnutls update.
|
|
||||||
|
|
||||||
* Thu Mar 24 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.3-4.20110324svn3310
|
|
||||||
- Update to latest 1.24.3 subversion. Turns out that what upstream was calling
|
|
||||||
1.24.3 is really just an occasionally updated devel snapshot.
|
|
||||||
- Rebase various patches.
|
|
||||||
|
|
||||||
* Wed Mar 23 2011 Dan Horák <dan@danny.cz> - 1.24.3-3
|
|
||||||
- rebuilt for mysql 5.5.10 (soname bump in libmysqlclient)
|
|
||||||
|
|
||||||
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.24.3-2
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
|
|
||||||
|
|
||||||
* Tue Jan 25 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.3-1
|
|
||||||
- Update to latest upstream version.
|
|
||||||
- Rebase patches.
|
|
||||||
- Initial incomplete attempt to disable v4l1 support.
|
|
||||||
|
|
||||||
* Fri Jan 21 2011 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.2-6
|
|
||||||
- Unbundle cambozola; instead link to the separately pacakged copy.
|
|
||||||
- Remove BuildRoot:, %%clean and buildroot cleaning in %%install.
|
|
||||||
- Git rid of mixed space/tab usage by removing all tabs.
|
|
||||||
- Remove unnecessary Conflicts: line.
|
|
||||||
- Attempt to force short_open_tag on for the code directories.
|
|
||||||
- Move default location of sockets, swaps, logfiles and some temporary files to
|
|
||||||
make more sense and allow things to work better with a future selinux policy.
|
|
||||||
- Fix errors in README.Fedora.
|
|
||||||
|
|
||||||
* Wed Jun 02 2010 Marcela Maslanova <mmaslano@redhat.com> - 1.24.2-5
|
|
||||||
- Mass rebuild with perl-5.12.0
|
|
||||||
|
|
||||||
* Fri Dec 4 2009 Stepan Kasal <skasal@redhat.com> - 1.24.2-4
|
|
||||||
- rebuild against perl 5.10.1
|
|
||||||
- use Perl vendorarch and archlib variables correctly
|
|
||||||
|
|
||||||
* Mon Jul 27 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.24.2-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jul 22 2009 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.2-2
|
|
||||||
- Bump release since 1.24.2-1 was mistakenly tagged a few months ago.
|
|
||||||
|
|
||||||
* Wed Jul 22 2009 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.24.2-1
|
|
||||||
- Initial update to 1.24.2.
|
|
||||||
- Rebase patches.
|
|
||||||
- Update mootools download location.
|
|
||||||
- Update to mootools 1.2.3.
|
|
||||||
- Add additional dependencies for some optional features.
|
|
||||||
|
|
||||||
* Sat Apr 11 2009 Martin Ebourne <martin@zepler.org> - 1.24.1-3
|
|
||||||
- Remove unused Sys::Mmap perl dependency RPM is finding
|
|
||||||
|
|
||||||
* Sat Apr 11 2009 Martin Ebourne <martin@zepler.org> - 1.24.1-2
|
|
||||||
- Update gcc44 patch to disable -frepo, seems to be broken with gcc44
|
|
||||||
- Added noffmpeg patch to make building outside mock easier
|
|
||||||
|
|
||||||
* Sat Mar 21 2009 Martin Ebourne <martin@zepler.org> - 1.24.1-1
|
|
||||||
- Patch for gcc 4.4 compilation errors
|
|
||||||
- Upgrade to 1.24.1
|
|
||||||
|
|
||||||
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.23.3-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Jan 24 2009 Caolán McNamara <caolanm@redhat.com> - 1.23.3-3
|
|
||||||
- rebuild for dependencies
|
|
||||||
|
|
||||||
* Mon Dec 15 2008 Martin Ebourne <martin@zepler.org> - 1.23.3-2
|
|
||||||
- Fix permissions on zm.conf
|
|
||||||
|
|
||||||
* Fri Jul 11 2008 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.23.3-1
|
|
||||||
- Initial attempt at packaging 1.23.
|
|
||||||
|
|
||||||
* Tue Jul 1 2008 Martin Ebourne <martin@zepler.org> - 1.22.3-15
|
|
||||||
- Add perl module compat dependency, bz #453590
|
|
||||||
|
|
||||||
* Tue May 6 2008 Martin Ebourne <martin@zepler.org> - 1.22.3-14
|
|
||||||
- Remove default runlevel, bz #441315
|
|
||||||
|
|
||||||
* Mon Apr 28 2008 Jason L Tibbitts III <tibbs@math.uh.edu> - 1.22.3-13
|
|
||||||
- Backport patch for CVE-2008-1381 from 1.23.3 to 1.22.3.
|
|
||||||
|
|
||||||
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 1.22.3-12
|
|
||||||
- Autorebuild for GCC 4.3
|
|
||||||
|
|
||||||
* Thu Jan 3 2008 Martin Ebourne <martin@zepler.org> - 1.22.3-11
|
|
||||||
- Fix compilation on gcc 4.3
|
|
||||||
|
|
||||||
* Thu Dec 6 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-10
|
|
||||||
- Rebuild for new openssl
|
|
||||||
|
|
||||||
* Thu Aug 2 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-8
|
|
||||||
- Fix licence tag
|
|
||||||
|
|
||||||
* Thu Jul 12 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-7
|
|
||||||
- Fixes from testing by Jitz including missing dependencies and database creation
|
|
||||||
|
|
||||||
* Sat Jun 30 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-6
|
|
||||||
- Disable crashtrace on ppc
|
|
||||||
|
|
||||||
* Sat Jun 30 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-5
|
|
||||||
- Fix uid for directories in /var/lib/zoneminder
|
|
||||||
|
|
||||||
* Tue Jun 26 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-4
|
|
||||||
- Added perl Archive::Tar dependency
|
|
||||||
- Disabled web interface due to lack of access control on the event images
|
|
||||||
|
|
||||||
* Sun Jun 10 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-3
|
|
||||||
- Changes recommended in review by Jason Tibbitts
|
|
||||||
|
|
||||||
* Mon Apr 2 2007 Martin Ebourne <martin@zepler.org> - 1.22.3-2
|
|
||||||
- Standardised on package name of zoneminder
|
|
||||||
|
|
||||||
* Thu Dec 28 2006 Martin Ebourne <martin@zepler.org> - 1.22.3-1
|
|
||||||
- First version. Uses some parts from zm-1.20.1 by Corey DeLasaux and Serg Oskin
|
|
|
@ -0,0 +1 @@
|
||||||
|
zoneminder.f23.spec
|
|
@ -10,7 +10,7 @@
|
||||||
%define _without_x10 1
|
%define _without_x10 1
|
||||||
|
|
||||||
Name: zoneminder
|
Name: zoneminder
|
||||||
Version: 1.29.0
|
Version: 1.30.0
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: A camera monitoring and analysis tool
|
Summary: A camera monitoring and analysis tool
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
|
@ -38,7 +38,7 @@ BuildRequires: gcc gcc-c++ vlc-devel libcurl-devel libv4l-devel
|
||||||
BuildRequires: httpd polkit-devel
|
BuildRequires: httpd polkit-devel
|
||||||
%{!?_without_ffmpeg:BuildRequires: ffmpeg}
|
%{!?_without_ffmpeg:BuildRequires: ffmpeg}
|
||||||
|
|
||||||
Requires: httpd php php-gd php-mysql cambozola polkit net-tools psmisc mod_ssl
|
Requires: httpd php php-gd php-mysql cambozola polkit net-tools psmisc
|
||||||
Requires: libjpeg-turbo vlc-core libcurl
|
Requires: libjpeg-turbo vlc-core libcurl
|
||||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||||
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
||||||
|
@ -72,6 +72,7 @@ too much degradation of performance.
|
||||||
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
||||||
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
||||||
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
||||||
|
./utils/zmeditconfigdata.sh ZM_OPT_FAST_DELETE no
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%cmake \
|
%cmake \
|
||||||
|
@ -87,6 +88,10 @@ export DESTDIR=%{buildroot}
|
||||||
make install
|
make install
|
||||||
|
|
||||||
%post
|
%post
|
||||||
|
|
||||||
|
# Add any new PTZ control configurations to the database (will not overwrite)
|
||||||
|
%{_bindir}/zmcamtool.pl --import >/dev/null 2>&1 || :
|
||||||
|
|
||||||
if [ $1 -eq 1 ] ; then
|
if [ $1 -eq 1 ] ; then
|
||||||
# Initial installation
|
# Initial installation
|
||||||
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
|
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
|
||||||
|
@ -98,8 +103,12 @@ fi
|
||||||
|
|
||||||
# Upgrade from a previous version of zoneminder
|
# Upgrade from a previous version of zoneminder
|
||||||
if [ $1 -eq 2 ] ; then
|
if [ $1 -eq 2 ] ; then
|
||||||
|
|
||||||
|
# Add any new PTZ control configurations to the database (will not overwrite)
|
||||||
|
%{_bindir}/zmcamtool.pl --import >/dev/null 2>&1 || :
|
||||||
|
|
||||||
# Freshen the database
|
# Freshen the database
|
||||||
/usr/bin/zmupdate.pl -f
|
%{_bindir}/zmupdate.pl -f >/dev/null 2>&1 || :
|
||||||
|
|
||||||
# We can't run this automatically when new sql account permissions need to
|
# We can't run this automatically when new sql account permissions need to
|
||||||
# be manually added first
|
# be manually added first
|
||||||
|
@ -154,7 +163,6 @@ fi
|
||||||
%{_bindir}/zmf
|
%{_bindir}/zmf
|
||||||
%{_bindir}/zmfilter.pl
|
%{_bindir}/zmfilter.pl
|
||||||
%{_bindir}/zmpkg.pl
|
%{_bindir}/zmpkg.pl
|
||||||
%{_bindir}/zmstreamer
|
|
||||||
%{_bindir}/zmtrack.pl
|
%{_bindir}/zmtrack.pl
|
||||||
%{_bindir}/zmtrigger.pl
|
%{_bindir}/zmtrigger.pl
|
||||||
%{_bindir}/zmu
|
%{_bindir}/zmu
|
||||||
|
@ -163,9 +171,15 @@ fi
|
||||||
%{_bindir}/zmwatch.pl
|
%{_bindir}/zmwatch.pl
|
||||||
%{_bindir}/zmcamtool.pl
|
%{_bindir}/zmcamtool.pl
|
||||||
%{_bindir}/zmsystemctl.pl
|
%{_bindir}/zmsystemctl.pl
|
||||||
|
%{_bindir}/zmtelemetry.pl
|
||||||
%{!?_without_x10:%{_bindir}/zmx10.pl}
|
%{!?_without_x10:%{_bindir}/zmx10.pl}
|
||||||
|
%{_bindir}/zmonvif-probe.pl
|
||||||
|
|
||||||
%{perl_vendorlib}/ZoneMinder*
|
%{perl_vendorlib}/ZoneMinder*
|
||||||
|
%{perl_vendorlib}/ONVIF*
|
||||||
|
%{perl_vendorlib}/WSDiscovery*
|
||||||
|
%{perl_vendorlib}/WSSecurity*
|
||||||
|
%{perl_vendorlib}/WSNotification*
|
||||||
%{_mandir}/man*/*
|
%{_mandir}/man*/*
|
||||||
%dir %{_libexecdir}/zoneminder
|
%dir %{_libexecdir}/zoneminder
|
||||||
%{_libexecdir}/zoneminder/cgi-bin
|
%{_libexecdir}/zoneminder/cgi-bin
|
||||||
|
@ -188,6 +202,9 @@ fi
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Mar 3 2016 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.30.0
|
||||||
|
- Bump version fo 1.30.0 release.
|
||||||
|
|
||||||
* Sat Nov 21 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.29.0
|
* Sat Nov 21 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.29.0
|
||||||
- Bump version for 1.29.0 release on Fedora 23.
|
- Bump version for 1.29.0 release on Fedora 23.
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@ else(ZM_TARGET_DISTRO STREQUAL "el7")
|
||||||
endif(ZM_TARGET_DISTRO STREQUAL "el7")
|
endif(ZM_TARGET_DISTRO STREQUAL "el7")
|
||||||
|
|
||||||
# Download jscalendar & move files into position
|
# Download jscalendar & move files into position
|
||||||
file(DOWNLOAD http://skylineservers.dl.sourceforge.net/project/jscalendar/jscalendar/1.0/jscalendar-1.0.zip ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar-1.0.zip LOG jsc_log STATUS download_jsc)
|
file(DOWNLOAD http://iweb.dl.sourceforge.net/project/jscalendar/jscalendar/1.0/jscalendar-1.0.zip ${CMAKE_CURRENT_SOURCE_DIR}/jscalendar-1.0.zip LOG jsc_log STATUS download_jsc)
|
||||||
#message(STATUS "Log of jscalender script was: ${jsc_log}")
|
#message(STATUS "Log of jscalender script was: ${jsc_log}")
|
||||||
if(download_jsc EQUAL 0)
|
if(download_jsc EQUAL 0)
|
||||||
message(STATUS "Jscalander successfully downloaded. Installing...")
|
message(STATUS "Jscalander successfully downloaded. Installing...")
|
||||||
|
|
|
@ -5,16 +5,14 @@ What's New
|
||||||
ALL permission to the ZoneMinder mysql account. This change must be done
|
ALL permission to the ZoneMinder mysql account. This change must be done
|
||||||
manually before ZoneMinder will run. See the installation steps below.
|
manually before ZoneMinder will run. See the installation steps below.
|
||||||
|
|
||||||
2. A new permission group called "Groups" has been added. This allows the
|
2. This package uses the HTTPS protocol by default to access the web portal.
|
||||||
system administrator to assign "view", "edit", or "none" permission to
|
|
||||||
normal users, without giving them access to the rest of the ZoneMinder
|
|
||||||
system. During an upgrade, existing accounts will default to a Groups
|
|
||||||
permission of "none".
|
|
||||||
|
|
||||||
3. This package now requires the HTTPS protocol to access the web portal.
|
|
||||||
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
||||||
more information.
|
more information.
|
||||||
|
|
||||||
|
3. The php package that ships with CentOS 6 does not support the new ZoneMinder
|
||||||
|
API. If you require API functionality (such as using a mobile app) then you
|
||||||
|
should consider an upgrade to CentOS 7 or use Fedora.
|
||||||
|
|
||||||
New installs
|
New installs
|
||||||
============
|
============
|
||||||
|
|
||||||
|
@ -36,11 +34,11 @@ New installs
|
||||||
mysqladmin -uroot -p reload
|
mysqladmin -uroot -p reload
|
||||||
|
|
||||||
The database account credentials, zmuser/zmpass, are arbitrary. Set them to
|
The database account credentials, zmuser/zmpass, are arbitrary. Set them to
|
||||||
anything that suits your envinroment.
|
anything that suits your environment.
|
||||||
|
|
||||||
3. If you have chosen to change the zoneminder mysql credentials to something
|
3. If you have chosen to change the zoneminder mysql credentials to something
|
||||||
other than zmuser/zmpass then you must now edit /etc/zm.conf. Change
|
other than zmuser/zmpass then you must now edit /etc/zm.conf. Change
|
||||||
ZM_DB_USER and ZM_DB_PASS to the values you created in step 2.
|
ZM_DB_USER and ZM_DB_PASS to the values you created in the previous step.
|
||||||
|
|
||||||
Additionally, you must also edit
|
Additionally, you must also edit
|
||||||
/usr/share/zoneminder/www/api/app/Config/database.php in a similar manner.
|
/usr/share/zoneminder/www/api/app/Config/database.php in a similar manner.
|
||||||
|
@ -55,11 +53,15 @@ New installs
|
||||||
If you are not sure of the proper timezone specification to use, look at
|
If you are not sure of the proper timezone specification to use, look at
|
||||||
http://php.net/date.timezone
|
http://php.net/date.timezone
|
||||||
|
|
||||||
5. Verify the default ZoneMinder Apache configuration meets your needs:
|
5. Install mod_ssl or configure /etc/httpd/conf.d/zoneminder.conf to meet your
|
||||||
|
needs. This package comes preconfigured for HTTPS using the default self
|
||||||
|
signed certificate on your system. The recommended way to complete this step
|
||||||
|
is to simply install mod_ssl:
|
||||||
|
|
||||||
/etc/httpd/conf.d/zoneminder.conf
|
sudo yum install mod_ssl
|
||||||
|
|
||||||
When in doubt, leave this configuration as it is.
|
If this does not meet your needs, then read README.https to
|
||||||
|
learn about alternatives. When in doubt, install mod_ssl.
|
||||||
|
|
||||||
6. Configure the web server to start automatically:
|
6. Configure the web server to start automatically:
|
||||||
|
|
||||||
|
@ -122,6 +124,7 @@ New installs
|
||||||
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
||||||
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
||||||
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
||||||
|
Verify the SSL REquirements meet your needs. Read README.https if necessary.
|
||||||
|
|
||||||
4. Upgrade the database before starting ZoneMinder.
|
4. Upgrade the database before starting ZoneMinder.
|
||||||
|
|
||||||
|
|
|
@ -1,17 +1,19 @@
|
||||||
What's New
|
What's New
|
||||||
==========
|
==========
|
||||||
|
|
||||||
1. Due to the active state of the ZoneMinder project, we now recommend granting
|
1. The Apache ScriptAlias has been changed from "/cgi-bin/zm/zms" to
|
||||||
|
"/cgi-bin-zm/zms". This has been to done to avoid this bug:
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=973067
|
||||||
|
|
||||||
|
IMPORTANT: You must manually verify the value of PATH_ZMS under Options.
|
||||||
|
Make sure it is set to "/cgi-bin-zm/nph-zms". Failure to do so will result
|
||||||
|
in a broken system. You have been warned.
|
||||||
|
|
||||||
|
2. Due to the active state of the ZoneMinder project, we now recommend granting
|
||||||
ALL permission to the ZoneMinder mysql account. This change must be done
|
ALL permission to the ZoneMinder mysql account. This change must be done
|
||||||
manually before ZoneMinder will run. See the installation steps below.
|
manually before ZoneMinder will run. See the installation steps below.
|
||||||
|
|
||||||
2. A new permission group called "Groups" has been added. This allows the
|
3. This package uses the HTTPS protocol by default to access the web portal.
|
||||||
system administrator to assign "view", "edit", or "none" permission to
|
|
||||||
normal users, without giving them access to the rest of the ZoneMinder
|
|
||||||
system. During an upgrade, existing accounts will default to a Groups
|
|
||||||
permission of "none".
|
|
||||||
|
|
||||||
3. This package now requires the HTTPS protocol to access the web portal.
|
|
||||||
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
Requests using HTTP will auto-redirect to HTTPS. See README.https for
|
||||||
more information.
|
more information.
|
||||||
|
|
||||||
|
@ -38,7 +40,7 @@ New installs
|
||||||
mysqladmin -uroot -p reload
|
mysqladmin -uroot -p reload
|
||||||
|
|
||||||
The database account credentials, zmuser/zmpass, are arbitrary. Set them to
|
The database account credentials, zmuser/zmpass, are arbitrary. Set them to
|
||||||
anything that suits your envinroment.
|
anything that suits your environment.
|
||||||
|
|
||||||
3. If you have chosen to change the zoneminder database account credentials to
|
3. If you have chosen to change the zoneminder database account credentials to
|
||||||
something other than zmuser/zmpass, you must now edit /etc/zm/zm.conf.
|
something other than zmuser/zmpass, you must now edit /etc/zm/zm.conf.
|
||||||
|
@ -74,12 +76,22 @@ New installs
|
||||||
SELINUX line from "enforcing" to "disabled". This change will take
|
SELINUX line from "enforcing" to "disabled". This change will take
|
||||||
effect after a reboot.
|
effect after a reboot.
|
||||||
|
|
||||||
6. Now start the web server:
|
6. Install mod_ssl or configure /etc/httpd/conf.d/zoneminder.conf to meet your
|
||||||
|
needs. This package comes preconfigured for HTTPS using the default self
|
||||||
|
signed certificate on your system. The recommended way to complete this step
|
||||||
|
is to simply install mod_ssl:
|
||||||
|
|
||||||
|
sudo yum install mod_ssl
|
||||||
|
|
||||||
|
If this does not meet your needs, then read README.https to
|
||||||
|
learn about alternatives. When in doubt, install mod_ssl.
|
||||||
|
|
||||||
|
7. Now start the web server:
|
||||||
|
|
||||||
sudo systemctl enable httpd
|
sudo systemctl enable httpd
|
||||||
sudo systemctl start httpd
|
sudo systemctl start httpd
|
||||||
|
|
||||||
7. Now start zoneminder:
|
8. Now start zoneminder:
|
||||||
|
|
||||||
sudo systemctl enable zoneminder
|
sudo systemctl enable zoneminder
|
||||||
sudo systemctl start zoneminder
|
sudo systemctl start zoneminder
|
||||||
|
@ -118,6 +130,7 @@ Upgrades
|
||||||
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
/etc/httpd/conf.d. You will have a file called "zoneminder.conf" and there
|
||||||
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
may also be a file called "zoneminder.conf.rpmnew". If the rpmnew file
|
||||||
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
exists, inspect it and merge anything new in that file with zoneminder.conf.
|
||||||
|
Verify the SSL REquirements meet your needs. Read README.https if necessary.
|
||||||
|
|
||||||
4. Upgrade the database before starting ZoneMinder.
|
4. Upgrade the database before starting ZoneMinder.
|
||||||
|
|
||||||
|
|
|
@ -237,7 +237,6 @@ fi
|
||||||
# zmfix removed from zoneminder 1.26.6
|
# zmfix removed from zoneminder 1.26.6
|
||||||
#%attr(4755,root,root) %{_bindir}/zmfix
|
#%attr(4755,root,root) %{_bindir}/zmfix
|
||||||
%{_bindir}/zmpkg.pl
|
%{_bindir}/zmpkg.pl
|
||||||
%{_bindir}/zmstreamer
|
|
||||||
%{_bindir}/zmtrack.pl
|
%{_bindir}/zmtrack.pl
|
||||||
%{_bindir}/zmtrigger.pl
|
%{_bindir}/zmtrigger.pl
|
||||||
%{_bindir}/zmu
|
%{_bindir}/zmu
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
%define zmgid_final apache
|
%define zmgid_final apache
|
||||||
|
|
||||||
Name: zoneminder
|
Name: zoneminder
|
||||||
Version: 1.29.0
|
Version: 1.30.0
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: A camera monitoring and analysis tool
|
Summary: A camera monitoring and analysis tool
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
|
@ -30,7 +30,7 @@ BuildRequires: libcurl-devel vlc-devel ffmpeg-devel polkit-devel
|
||||||
# cmake needs the following installed at build time due to the way it auto-detects certain parameters
|
# cmake needs the following installed at build time due to the way it auto-detects certain parameters
|
||||||
BuildRequires: httpd ffmpeg
|
BuildRequires: httpd ffmpeg
|
||||||
|
|
||||||
Requires: httpd php php-gd php-mysql mysql-server libjpeg-turbo cambozola polkit net-tools mod_ssl
|
Requires: httpd php php-gd php-mysql mysql-server libjpeg-turbo cambozola polkit net-tools
|
||||||
Requires: psmisc perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
Requires: psmisc perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||||
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
||||||
Requires: perl(MIME::Entity) perl(MIME::Lite) perl(Net::SMTP) perl(Net::FTP)
|
Requires: perl(MIME::Entity) perl(MIME::Lite) perl(Net::SMTP) perl(Net::FTP)
|
||||||
|
@ -69,6 +69,7 @@ too much degradation of performance.
|
||||||
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
||||||
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
||||||
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
||||||
|
./utils/zmeditconfigdata.sh ZM_OPT_FAST_DELETE no
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# Have to override CMAKE_INSTALL_LIBDIR for cmake < 2.8.7 due to this bug:
|
# Have to override CMAKE_INSTALL_LIBDIR for cmake < 2.8.7 due to this bug:
|
||||||
|
@ -98,8 +99,12 @@ echo -e "\nCreating and installing a ZoneMinder SELinux policy module. Please wa
|
||||||
|
|
||||||
# Upgrade from a previous version of zoneminder
|
# Upgrade from a previous version of zoneminder
|
||||||
if [ $1 -eq 2 ] ; then
|
if [ $1 -eq 2 ] ; then
|
||||||
|
|
||||||
|
# Add any new PTZ control configurations to the database (will not overwrite)
|
||||||
|
%{_bindir}/zmcamtool.pl --import >/dev/null 2>&1 || :
|
||||||
|
|
||||||
# Freshen the database
|
# Freshen the database
|
||||||
/usr/bin/zmupdate.pl -f
|
%{_bindir}/zmupdate.pl -f >/dev/null 2>&1 || :
|
||||||
|
|
||||||
# We can't run this automatically when new sql account permissions need to
|
# We can't run this automatically when new sql account permissions need to
|
||||||
# be manually added first
|
# be manually added first
|
||||||
|
@ -145,7 +150,6 @@ rm -rf %{_docdir}/%{name}-%{version}
|
||||||
%{_bindir}/zmf
|
%{_bindir}/zmf
|
||||||
%{_bindir}/zmfilter.pl
|
%{_bindir}/zmfilter.pl
|
||||||
%{_bindir}/zmpkg.pl
|
%{_bindir}/zmpkg.pl
|
||||||
%{_bindir}/zmstreamer
|
|
||||||
%{_bindir}/zmtrack.pl
|
%{_bindir}/zmtrack.pl
|
||||||
%{_bindir}/zmtrigger.pl
|
%{_bindir}/zmtrigger.pl
|
||||||
%{_bindir}/zmu
|
%{_bindir}/zmu
|
||||||
|
@ -154,14 +158,17 @@ rm -rf %{_docdir}/%{name}-%{version}
|
||||||
%{_bindir}/zmwatch.pl
|
%{_bindir}/zmwatch.pl
|
||||||
%{_bindir}/zmcamtool.pl
|
%{_bindir}/zmcamtool.pl
|
||||||
%{_bindir}/zmsystemctl.pl
|
%{_bindir}/zmsystemctl.pl
|
||||||
|
%{_bindir}/zmtelemetry.pl
|
||||||
%{_bindir}/zmx10.pl
|
%{_bindir}/zmx10.pl
|
||||||
#%{_bindir}/zmonvif-probe.pl
|
%{_bindir}/zmonvif-probe.pl
|
||||||
|
|
||||||
%{perl_vendorlib}/ZoneMinder*
|
%{perl_vendorlib}/ZoneMinder*
|
||||||
%{perl_vendorarch}/auto/ZoneMinder/.packlist
|
%{perl_vendorarch}/auto/ZoneMinder/.packlist
|
||||||
#%{perl_vendorlib}/ONVIF*
|
%{perl_vendorarch}/auto/ONVIF/.packlist
|
||||||
#%{perl_vendorlib}/WSDiscovery*
|
%{perl_vendorlib}/ONVIF*
|
||||||
#%{perl_vendorlib}/WSSecurity*
|
%{perl_vendorlib}/WSDiscovery*
|
||||||
|
%{perl_vendorlib}/WSSecurity*
|
||||||
|
%{perl_vendorlib}/WSNotification*
|
||||||
%{_mandir}/man*/*
|
%{_mandir}/man*/*
|
||||||
%dir %{_libexecdir}/%{name}
|
%dir %{_libexecdir}/%{name}
|
||||||
%{_libexecdir}/%{name}/cgi-bin
|
%{_libexecdir}/%{name}/cgi-bin
|
||||||
|
@ -182,6 +189,9 @@ rm -rf %{_docdir}/%{name}-%{version}
|
||||||
%dir %attr(755,%{zmuid_final},%{zmgid_final}) %{_localstatedir}/spool/zoneminder-upload
|
%dir %attr(755,%{zmuid_final},%{zmgid_final}) %{_localstatedir}/spool/zoneminder-upload
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Mar 3 2016 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.30.0
|
||||||
|
- Bump version fo 1.30.0 release.
|
||||||
|
|
||||||
* Tue Sep 8 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.1
|
* Tue Sep 8 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.1
|
||||||
- Require https, freshen dB on updates.
|
- Require https, freshen dB on updates.
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
%global _hardened_build 1
|
%global _hardened_build 1
|
||||||
|
|
||||||
Name: zoneminder
|
Name: zoneminder
|
||||||
Version: 1.29.0
|
Version: 1.30.0
|
||||||
Release: 1%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: A camera monitoring and analysis tool
|
Summary: A camera monitoring and analysis tool
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
|
@ -32,7 +32,7 @@ BuildRequires: ffmpeg ffmpeg-devel perl(X10::ActiveHome) perl(Astro::SunTime)
|
||||||
# cmake needs the following installed at build time due to the way it auto-detects certain parameters
|
# cmake needs the following installed at build time due to the way it auto-detects certain parameters
|
||||||
BuildRequires: httpd polkit-devel
|
BuildRequires: httpd polkit-devel
|
||||||
|
|
||||||
Requires: httpd php php-gd php-mysql mariadb-server cambozola polkit net-tools mod_ssl
|
Requires: httpd php php-gd php-mysql mariadb-server cambozola polkit net-tools
|
||||||
Requires: psmisc libjpeg-turbo vlc-core libcurl
|
Requires: psmisc libjpeg-turbo vlc-core libcurl
|
||||||
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
|
||||||
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
Requires: perl(DBD::mysql) perl(Archive::Tar) perl(Archive::Zip)
|
||||||
|
@ -65,6 +65,7 @@ too much degradation of performance.
|
||||||
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
./utils/zmeditconfigdata.sh ZM_OPT_CONTROL yes
|
||||||
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
./utils/zmeditconfigdata.sh ZM_CHECK_FOR_UPDATES no
|
||||||
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
./utils/zmeditconfigdata.sh ZM_DYN_SHOW_DONATE_REMINDER no
|
||||||
|
./utils/zmeditconfigdata.sh ZM_OPT_FAST_DELETE no
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%cmake \
|
%cmake \
|
||||||
|
@ -96,8 +97,12 @@ fi
|
||||||
|
|
||||||
# Upgrade from a previous version of zoneminder
|
# Upgrade from a previous version of zoneminder
|
||||||
if [ $1 -eq 2 ] ; then
|
if [ $1 -eq 2 ] ; then
|
||||||
|
|
||||||
|
# Add any new PTZ control configurations to the database (will not overwrite)
|
||||||
|
%{_bindir}/zmcamtool.pl --import >/dev/null 2>&1 || :
|
||||||
|
|
||||||
# Freshen the database
|
# Freshen the database
|
||||||
/usr/bin/zmupdate.pl -f
|
%{_bindir}/zmupdate.pl -f >/dev/null 2>&1 || :
|
||||||
|
|
||||||
# We can't run this automatically when new sql account permissions need to
|
# We can't run this automatically when new sql account permissions need to
|
||||||
# be manually added first
|
# be manually added first
|
||||||
|
@ -154,7 +159,6 @@ fi
|
||||||
%{_bindir}/zmf
|
%{_bindir}/zmf
|
||||||
%{_bindir}/zmfilter.pl
|
%{_bindir}/zmfilter.pl
|
||||||
%{_bindir}/zmpkg.pl
|
%{_bindir}/zmpkg.pl
|
||||||
%{_bindir}/zmstreamer
|
|
||||||
%{_bindir}/zmtrack.pl
|
%{_bindir}/zmtrack.pl
|
||||||
%{_bindir}/zmtrigger.pl
|
%{_bindir}/zmtrigger.pl
|
||||||
%{_bindir}/zmu
|
%{_bindir}/zmu
|
||||||
|
@ -163,12 +167,17 @@ fi
|
||||||
%{_bindir}/zmwatch.pl
|
%{_bindir}/zmwatch.pl
|
||||||
%{_bindir}/zmcamtool.pl
|
%{_bindir}/zmcamtool.pl
|
||||||
%{_bindir}/zmsystemctl.pl
|
%{_bindir}/zmsystemctl.pl
|
||||||
|
%{_bindir}/zmtelemetry.pl
|
||||||
%{_bindir}/zmx10.pl
|
%{_bindir}/zmx10.pl
|
||||||
|
%{_bindir}/zmonvif-probe.pl
|
||||||
|
|
||||||
%{perl_vendorlib}/ZoneMinder*
|
%{perl_vendorlib}/ZoneMinder*
|
||||||
%{perl_vendorarch}/auto/ZoneMinder/.packlist
|
%{perl_vendorarch}/auto/ZoneMinder/.packlist
|
||||||
#%{perl_vendorlib}/%{_arch}-linux-thread-multi/auto/ZoneMinder*
|
%{perl_vendorarch}/auto/ONVIF/.packlist
|
||||||
#%{perl_archlib}/ZoneMinder*
|
%{perl_vendorlib}/ONVIF*
|
||||||
|
%{perl_vendorlib}/WSDiscovery*
|
||||||
|
%{perl_vendorlib}/WSSecurity*
|
||||||
|
%{perl_vendorlib}/WSNotification*
|
||||||
%{_mandir}/man*/*
|
%{_mandir}/man*/*
|
||||||
%dir %{_libexecdir}/zoneminder
|
%dir %{_libexecdir}/zoneminder
|
||||||
%{_libexecdir}/zoneminder/cgi-bin
|
%{_libexecdir}/zoneminder/cgi-bin
|
||||||
|
@ -191,6 +200,9 @@ fi
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Mar 3 2016 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.30.0
|
||||||
|
- Bump version fo 1.30.0 release.
|
||||||
|
|
||||||
* Mon Sep 7 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.1
|
* Mon Sep 7 2015 Andrew Bauer <knnniggett@users.sourceforge.net> - 1.28.1
|
||||||
- Require https, disable selinux module, freshen dB on updates.
|
- Require https, disable selinux module, freshen dB on updates.
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,120 @@
|
||||||
zoneminder for Debian
|
Zoneminder for Debian
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
There is one manual step to get the web interface working.
|
Initializing database
|
||||||
You need to link /etc/zm/apache.conf to /etc/apache2/conf.d/zoneminder.conf,
|
---------------------
|
||||||
then reload the apache config (i.e. /etc/init.d/apache2 reload)
|
|
||||||
|
pv /usr/share/zoneminder/db/zm_create.sql | sudo mysql --defaults-file=/etc/mysql/debian.cnf
|
||||||
|
OR
|
||||||
|
cat /usr/share/zoneminder/db/zm_create.sql | sudo mysql --defaults-file=/etc/mysql/debian.cnf
|
||||||
|
|
||||||
|
echo 'grant lock tables,alter,create,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";'\
|
||||||
|
| sudo mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
||||||
|
|
||||||
|
Hint: generate secure password with `pwgen` and update "/etc/zm/zm.conf"
|
||||||
|
accordingly.
|
||||||
|
|
||||||
|
The following command can help to ensure that zoneminder can read its
|
||||||
|
configuration file:
|
||||||
|
|
||||||
|
chgrp -c www-data /etc/zm/zm.conf
|
||||||
|
|
||||||
|
|
||||||
|
Upgrading database
|
||||||
|
------------------
|
||||||
|
|
||||||
|
Prior to 1.28.1 database upgrade was performed automatically.
|
||||||
|
"zoneminder" service will refuse to start with outdated database.
|
||||||
|
|
||||||
|
Assuming that database is on "localhost" then the following command can be
|
||||||
|
used to upgrade "zm" database:
|
||||||
|
|
||||||
|
zmupdate.pl
|
||||||
|
|
||||||
|
Additional permissions may be required to perform upgrade:
|
||||||
|
|
||||||
|
echo 'grant lock tables, create, alter on zm.* to 'zmuser'@localhost identified by "zmpass";'\
|
||||||
|
| sudo mysql --defaults-file=/etc/mysql/debian.cnf mysql
|
||||||
|
|
||||||
|
The following command prints the current version of zoneminder database:
|
||||||
|
|
||||||
|
echo 'select Value from Config where Name = "ZM_DYN_CURR_VERSION";' \
|
||||||
|
| sudo mysql --defaults-file=/etc/mysql/debian.cnf --skip-column-names zm
|
||||||
|
|
||||||
|
|
||||||
|
Enabling service
|
||||||
|
----------------
|
||||||
|
|
||||||
|
By default Zoneminder service is not starting automatically and need to be
|
||||||
|
manually activated once database is configured:
|
||||||
|
|
||||||
|
On systemd:
|
||||||
|
|
||||||
|
sudo systemctl enable zoneminder.service
|
||||||
|
|
||||||
|
On SysV:
|
||||||
|
|
||||||
|
sudo update-rc.d zoneminder enable
|
||||||
|
|
||||||
|
|
||||||
|
Web server set-up
|
||||||
|
-----------------
|
||||||
|
|
||||||
|
There are few manual steps to get the web interface working:
|
||||||
|
|
||||||
|
## Apache2
|
||||||
|
|
||||||
|
Apache can be configured as folder "/zm" using sample .conf:
|
||||||
|
|
||||||
|
sudo a2enconf zoneminder
|
||||||
|
|
||||||
|
Alternatively Apache web site configuration template can be used to setup
|
||||||
|
zoneminder as "http://zoneminder":
|
||||||
|
|
||||||
|
sudo cp -v /usr/share/doc/zoneminder/examples/apache.conf /etc/apache2/sites-available/
|
||||||
|
sudo a2ensite zoneminder.conf
|
||||||
|
|
||||||
|
Common configuration steps for Apache2:
|
||||||
|
|
||||||
|
sudo a2enmod cgi
|
||||||
|
sudo service apache2 reload
|
||||||
|
|
||||||
|
|
||||||
|
## nginx / fcgiwrap
|
||||||
|
|
||||||
|
Nginx needs "php5-fpm" package to support PHP and "fcgiwrap" package
|
||||||
|
for binary "cgi-bin" applications:
|
||||||
|
|
||||||
|
sudo apt-get install php5-fpm fcgiwrap
|
||||||
|
|
||||||
|
To enable a URL alias that makes Zoneminder available from
|
||||||
|
|
||||||
|
http://yourserver/zm
|
||||||
|
|
||||||
|
the following line is to be added to "server" section of a web site
|
||||||
|
configuration:
|
||||||
|
|
||||||
|
include /usr/share/doc/zoneminder/examples/nginx.conf;
|
||||||
|
|
||||||
|
For "default" web site it would be sufficient to include the above
|
||||||
|
statement to the file
|
||||||
|
|
||||||
|
/etc/nginx/sites-enabled/default
|
||||||
|
|
||||||
|
To avoid problems with feeds from multiple cameras "fcgiwrap" should be
|
||||||
|
configured to start at least as many processes as there are cameras.
|
||||||
|
It can be done by adjusting DAEMON_OPTS in "/etc/default/fcgiwrap".
|
||||||
|
Systemd users may be affected by the following bug:
|
||||||
|
|
||||||
|
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=792705
|
||||||
|
|
||||||
|
|
||||||
|
## Note:
|
||||||
|
|
||||||
|
When Zoneminder web site is running it may be necessary to set
|
||||||
|
Options/Paths/PATH_ZMS to "/zm/cgi-bin/nph-zms" or according to chosen web
|
||||||
|
site configuration.
|
||||||
|
|
||||||
|
|
||||||
Changing the location for images and events
|
Changing the location for images and events
|
||||||
-------------------------------------------
|
-------------------------------------------
|
||||||
|
@ -33,8 +144,6 @@ These lines in fstab could allow you to bind-mount an alternate location
|
||||||
/dev/sdX1 /var/cache/zoneminder/images ext3 defaults 0 2
|
/dev/sdX1 /var/cache/zoneminder/images ext3 defaults 0 2
|
||||||
/dev/sdX2 /var/cache/zoneminder/events ext3 defaults 0 2
|
/dev/sdX2 /var/cache/zoneminder/events ext3 defaults 0 2
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
-- Peter Howard <pjh@northern-ridge.com.au>, Sun, 16 Jan 2010 01:35:51 +1100
|
-- Peter Howard <pjh@northern-ridge.com.au>, Sun, 16 Jan 2010 01:35:51 +1100
|
||||||
|
|
||||||
Access to /dev/video*
|
Access to /dev/video*
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue