diff options
Diffstat (limited to 'pcr')
-rw-r--r-- | pcr/gcc-lts/PKGBUILD | 28 | ||||
-rw-r--r-- | pcr/libav/PKGBUILD | 88 | ||||
-rw-r--r-- | pcr/python-pygame-hg/PKGBUILD | 72 | ||||
-rw-r--r-- | pcr/youtube-dl-current/PKGBUILD | 4 | ||||
-rw-r--r-- | pcr/zoneminder/PKGBUILD | 209 | ||||
-rw-r--r-- | pcr/zoneminder/sysctl-zoneminder.conf | 3 | ||||
-rw-r--r-- | pcr/zoneminder/zoneminder.install | 69 |
7 files changed, 306 insertions, 167 deletions
diff --git a/pcr/gcc-lts/PKGBUILD b/pcr/gcc-lts/PKGBUILD index c3ab693d3..b1280fad9 100644 --- a/pcr/gcc-lts/PKGBUILD +++ b/pcr/gcc-lts/PKGBUILD @@ -8,7 +8,7 @@ #pkgname=('gcc-lts' 'gcc-lts-libs' 'gcc-lts-fortran' 'gcc-lts-objc' 'gcc-lts-ada' 'gcc-lts-go') pkgname=('gcc-lts' 'gcc-lts-libs' 'gcc-lts-fortran' 'gcc-lts-objc' 'gcc-lts-go') pkgver=4.7.3 -pkgrel=1 +pkgrel=3 pkgdesc="The GNU Compiler Collection" arch=('i686' 'x86_64' 'mips64el') license=('GPL' 'LGPL' 'FDL' 'custom') @@ -96,9 +96,9 @@ check() { package_gcc-lts-libs() { pkgdesc="Runtime libraries shipped by GCC" - groups=('base') + groups=('lts') depends=('glibc>=2.17') - provides=('gcc-libs') + provides=("gcc-libs=$pkgver") conflicts=('gcc-libs') install=gcc-libs.install @@ -134,10 +134,10 @@ package_gcc-lts-libs() package_gcc-lts() { pkgdesc="The GNU Compiler Collection - C and C++ frontends" - depends=("gcc-libs=$pkgver-$pkgrel" 'binutils>=2.23' 'libmpc' 'cloog' 'ppl') - provides=('gcc') + depends=("gcc-lts-libs=$pkgver" 'binutils>=2.23' 'libmpc' 'cloog' 'ppl') + provides=("gcc=$pkgver") conflicts=('gcc') - groups=('base-devel') + groups=('lts-devel') install=gcc.install cd ${srcdir}/gcc-build @@ -212,8 +212,8 @@ EOF package_gcc-lts-fortran() { pkgdesc="Fortran front-end for GCC" - depends=("gcc=$pkgver-$pkgrel") - provides=('gcc-fortran') + depends=("gcc-lts=$pkgver") + provides=("gcc-fortran=$pkgver") conflicts=('gcc-fortran') install=gcc-fortran.install @@ -241,8 +241,8 @@ package_gcc-lts-fortran() package_gcc-lts-objc() { pkgdesc="Objective-C front-end for GCC" - depends=("gcc=$pkgver-$pkgrel") - provides=('gcc-objc') + depends=("gcc-lts=$pkgver") + provides=("gcc-objc=$pkgver") conflicts=('gcc-objc') cd ${srcdir}/gcc-build @@ -264,8 +264,8 @@ package_gcc-lts-objc() package_gcc-lts-ada() { pkgdesc="Ada front-end for GCC (GNAT)" - depends=("gcc=$pkgver-$pkgrel") - provides=('gcc-ada') + depends=("gcc-lts=$pkgver") + provides=("gcc-ada=$pkgver") conflicts=('gcc-ada') install=gcc-ada.install @@ -283,8 +283,8 @@ package_gcc-lts-ada() package_gcc-lts-go() { pkgdesc="Go front-end for GCC" - depends=("gcc=$pkgver-$pkgrel") - provides=('gcc-go') + depends=("gcc-lts=$pkgver") + provides=("gcc-go=$pkgver") conflicts=('gcc-go') install=gcc-go.install diff --git a/pcr/libav/PKGBUILD b/pcr/libav/PKGBUILD index 782e12a15..c0fb9e062 100644 --- a/pcr/libav/PKGBUILD +++ b/pcr/libav/PKGBUILD @@ -1,23 +1,15 @@ # Maintainer: Márcio Silva <coadde@lavabit.com> -static=false -_pkgname=libav -if [[ $static == true ]] || [[ $static == 1 ]] || [[ $static == enable ]]; then - pkgname=libav-static - pkgflag=-static - staticdesc=', with static library' -elif [[ $static == false ]] || [[ $static == 0 ]] || [[ $static == disable ]]; then - pkgname=libav -fi -pkgver=9.7 -pkgrel=1 -pkgdesc="Complete and free Internet live audio and video broadcasting solution for GNU/Linux$staticdesc" +pkgname=libav +pkgver=9.8 +pkgrel=3 +pkgdesc="Complete and free Internet live audio and video broadcasting solution for GNU/Linux" arch=( - i686 - x86_64 mips64el + x86_64 + i686 ) -url=http://$_pkgname.org/ +url=http://$pkgname.org/ license=GPL3 depends=( alsa-lib @@ -45,20 +37,33 @@ makedepends=( yasm libvdpau ) -source=http://$_pkgname.org/releases/$_pkgname-$pkgver.tar.gz -sha512sums=6a446e8dceb9ee4f1fb7a7d68d254086990bbcab5b1014598b21c75e0add22dab47c30a95bc3129835cc40a8d32de9c61fb267b2fa2aa9353dbbfc4b716767e4 +source=http://$pkgname.org/releases/$pkgname-$pkgver.tar.gz +sha512sums=ef7c164fb29d365a236ead927e6355ca9191203dce86f0d0d8251f275ed5be4ab5e3f56a0c51384d7b9e83c3c3ef7ebdee95c9a7ac7b6520eaf25973a2bd20ae build() { - cd $_pkgname-$pkgver - - [[ $static == false ]] && sttcv=disable || sttcv=enable - - setarch $CARCH ./configure\ - --prefix=/opt/$pkgname\ + cd $pkgname-$pkgver + if [[ $CARCH == x86_64 ]]; then + _asm='--disable-armv5te --disable-armv6 --disable-armv6t2 --disable-neon --disable-vfp --disable-vis --disable-altivec\ + --enable-amd3dnow --enable-mmx --enable-mmxext --enable-amd3dnow --enable-amd3dnowext --enable-sse --enable-sse2 --enable-sse3\ + --enable-avx --enable-fma4 --enable-sse3 --enable-ssse3 --enable-sse4 --enable-sse42' + elif [[ $CARCH == i686 ]]; then + _asm='--disable-armv5te --disable-armv6 --disable-armv6t2 --disable-neon --disable-vfp --disable-vis --disable-altivec\ + --enable-amd3dnow --enable-mmx --enable-mmxext --enable-amd3dnow --enable-amd3dnowext --enable-sse --enable-sse2 --enable-sse3\ + --disable-avx --disable-fma4 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42' + else + _asm='--disable-asm' + fi + [[ $_static == false ]] && _stf='--disable-static' + ./configure\ + $_asm $_stf\ + --prefix=/usr\ + --bindir=/opt/$pkgname/bin\ + --incdir=/opt/$pkgname/include\ + --libdir=/opt/$pkgname/lib\ + --shlibdir=/opt/$pkgname/lib\ + --disable-avserver\ --disable-debug\ - --$sttcv-static\ --enable-avresample\ - --enable-avserver\ --enable-dxva2\ --enable-gpl\ --enable-libfreetype\ @@ -77,32 +82,27 @@ build() { --enable-libvpx\ --enable-libx264\ --enable-libxvid\ + --enable-pic\ --enable-runtime-cpudetect\ --enable-shared\ + --enable-vdpau\ --enable-version3\ --enable-x11grab - setarch $CARCH make - setarch $CARCH make tools/qt-faststart - setarch $CARCH make doc/av{conv,play,server}.1 + make + make tools/qt-faststart + make doc/av{conv,play}.1 # doc/avserver.1 } package() { - cd $_pkgname-$pkgver - setarch $CARCH make DESTDIR=$pkgdir install install-man - install -m755 -d $pkgdir/etc/ld.so.conf.d - install -m755 -d $pkgdir/usr/bin - install -m755 -d $pkgdir/usr/share/man/man1 - install -Dm755 tools/qt-faststart $pkgdir/opt/$pkgname/bin - ln -s /opt/$pkgname/bin/avconv $pkgdir/usr/bin/avconv$pkgflag - ln -s /opt/$pkgname/bin/avplay $pkgdir/usr/bin/avplay$pkgflag - ln -s /opt/$pkgname/bin/avprobe $pkgdir/usr/bin/avprobe$pkgflag - ln -s /opt/$pkgname/bin/avserver $pkgdir/usr/bin/avserver$pkgflag - ln -s /opt/$pkgname/bin/qt-faststart $pkgdir/usr/bin/qt-faststart-$pkgname - ln -s /opt/$pkgname/share/man/man1/avconv.1 $pkgdir/usr/share/man/man1/avconv$pkgflag.1 - ln -s /opt/$pkgname/share/man/man1/avplay.1 $pkgdir/usr/share/man/man1/avplay$pkgflag.1 - ln -s /opt/$pkgname/share/man/man1/avprobe.1 $pkgdir/usr/share/man/man1/avprobe$pkgflag.1 - ln -s /opt/$pkgname/share/man/man1/avserver.1 $pkgdir/usr/share/man/man1/avserver$pkgflag.1 - echo /opt/libav$pkgflag/lib > $pkgdir/etc/ld.so.conf.d/libav$pkgflag.conf + cd $pkgname-$pkgver + + make DESTDIR=$pkgdir install install-man + install -vD tools/qt-faststart $pkgdir/usr/bin/qt-faststart-$pkgname + + for _bin in conv play probe; do + echo -e "#!/usr/bin/env bash\nLD_LIBRARY_PATH=/opt/$pkgname/lib /opt/$pkgname/bin/av$_bin \$@" > $pkgdir/usr/bin/av$_bin + done + chmod -v +x $pkgdir/usr/bin/* } # vim:set ts=2 sw=2 et: diff --git a/pcr/python-pygame-hg/PKGBUILD b/pcr/python-pygame-hg/PKGBUILD new file mode 100644 index 000000000..c48317b19 --- /dev/null +++ b/pcr/python-pygame-hg/PKGBUILD @@ -0,0 +1,72 @@ +# Maintainer: Márcio Silva <coadde@lavabit.com> + +_pkgname=pygame +_pkgver=1.9.2 +_pyname=python +_py3ver=3.3 +_py2ver=2.7 +_pkg3name=$_pyname-$_pkgname +_pkg2name=${_pyname}2-$_pkgname +_srcver=pre.d$(LC_ALL=C date -u +%Y%m%d) + +pkgbase=$_pyname-$_pkgname +pkgname=( + $_pkg3name-hg + $_pkg2name-hg +) +pkgver=$_pkgver$_srcver +pkgrel=1 +pkgdesc="${_pyname^} game library" +arch=( + mips64el + x86_64 + i686 +) +url=http://www.$_pkgname.org/ +license=LGPL2.1 +depends=( + ffmpeg + portmidi + python + python2 + #sdl_gfx + sdl_image + sdl_mixer + sdl_ttf +) +makedepends=mercurial +source=hg+https://bitbucket.org/$_pkgname/$_pkgname +sha512sums=SKIP + +package_python-pygame-hg() { + # disabled, due which conflicts with $_pkg2name + #provides=("$_pkg3name=$_pkgver") + #conflicts=$_pkg3name + + cd $_pkgname + + msg Building + find . -type f -exec sed -i "s|/usr/bin/env ${_pyname}2|/usr/bin/env $_pyname|" {} + + $_pyname config.py -auto + $_pyname setup.py install --root=$pkgdir --prefix=/usr + + msg 'Copying the examples and tests' + cp -va examples lib/* $pkgdir/usr/lib/$_pyname$_py3ver/site-packages/$_pkgname + cp -va test/* $pkgdir/usr/lib/$_pyname$_py3ver/site-packages/$_pkgname/tests +} + +package_python2-pygame-hg() { + provides=("$_pkg2name=$_pkgver") + conflicts=$_pkg2name + + cd $_pkgname + + msg Building + find . -type f -exec sed -i "s|/usr/bin/env $_pyname|/usr/bin/env ${_pyname}2|" {} + + ${_pyname}2 config.py -auto + ${_pyname}2 setup.py install --root=$pkgdir --prefix=/usr + + msg 'Copying the examples and tests' + cp -va examples lib/* $pkgdir/usr/lib/$_pyname$_py2ver/site-packages/$_pkgname + cp -va test/* $pkgdir/usr/lib/$_pyname$_py2ver/site-packages/$_pkgname/tests +} diff --git a/pcr/youtube-dl-current/PKGBUILD b/pcr/youtube-dl-current/PKGBUILD index ad242cc05..a2d174304 100644 --- a/pcr/youtube-dl-current/PKGBUILD +++ b/pcr/youtube-dl-current/PKGBUILD @@ -5,7 +5,7 @@ pkgname=youtube-dl-current _pkgname=youtube-dl provides=(youtube-dl) -pkgver=2013.07.19 +pkgver=2013.07.25.2 pkgrel=1 pkgdesc="A small command-line program to download videos from YouTube.com and a few more sites" arch=('any') @@ -14,7 +14,7 @@ license=('custom') depends=('python') makedepends=('python-distribute') source=(http://youtube-dl.org/downloads/${pkgver}/${_pkgname}-${pkgver}.tar.gz{,.sig}) -md5sums=('e426467eee65cb6224e1ca37433296d1' +md5sums=('db09e5672c674ccadd3c9afed77189d9' 'SKIP') prepare() { diff --git a/pcr/zoneminder/PKGBUILD b/pcr/zoneminder/PKGBUILD index bf03b4133..ede03dd77 100644 --- a/pcr/zoneminder/PKGBUILD +++ b/pcr/zoneminder/PKGBUILD @@ -7,27 +7,24 @@ # based of debian squeeze package -pkgbase=zoneminder +_automake=1.14 + pkgname=zoneminder pkgver=1.25.0 -pkgrel=27 +pkgrel=28 pkgdesc='Capture, analyse, record and monitor video security cameras' arch=( - i686 - x86_64 mips64el - arm -) -backup=( - etc/zm.conf -) -url="http://www.$pkgbase.com" -license=( - GPL + x86_64 + i686 ) +backup=etc/zm.conf +url=http://www.$pkgname.com +license=GPL2 depends=( apache cambozola + ffmpeg gnutls mariadb perl-archive-zip @@ -48,108 +45,158 @@ depends=( php-gd php-mcrypt ) -makedepends=( - netpbm -) -optdepends=( - netpbm -) -install=$pkgbase.install +makedepends=netpbm +optdepends=netpbm +options=(!libtool) +install=$pkgname.install source=( - http://www.$pkgbase.com/downloads/ZoneMinder-$pkgver.tar.gz - httpd-$pkgbase.conf - $pkgbase - $pkgbase.service - zoneminder-1.25.0-kernel35.patch - zoneminder-1.25.0-gcc47.patch - zoneminder-1.25.0-ffmpeg.patch - zoneminder-1.25-text.patch - zoneminder-1.25-fixwarning.patch - zoneminder-1.25.0-gcrypt.patch + http://www.$pkgname.com/downloads/ZoneMinder-$pkgver.tar.gz + httpd-$pkgname.conf + $pkgname.service + sysctl-$pkgname.conf + $pkgname-$pkgver-ffmpeg.patch + $pkgname-$pkgver-gcrypt.patch ) sha512sums=( 3e18993b0539729491052c97d8c94227ccc089eb40277c2f07682f30049033303c7cfe9734fdac6d33ae67df29c76eb72bf7fbb5dae8227e8831fa603b61c375 4ce0d8eba9d006d258f5b8a83920fc17f1f602b96518d37b7a47cd9b6eb84ef2587641a6ba839a469c3f0e33b46475866187279ae3f8be0d4054b074ee5d6b08 - ab4e1d5ddaf4d9cd53d6ca59d7965902afd6a2dc830fbbafa270736c52c2b3563075fee860bb0276466f96e9dbfb71b259ac45a4ae2e4ead8eaec154a0159eb0 cfb0eb87a989236c72741a496ddc6a73aa2696e5beaaca4836d3c231ddb24c7ef5e9f65e7afa49674f2115cbfa4a07c75486e1947ce294c816ddbb875f3b99cf - 4fa79e49a3c04e9fdc9823792c6a28012002479c77ed41637bd2d21f089e4c15592bfcd5c24028f356c9f80d774a5080a6841e8e70a435d607e3089d0b121775 - 3da7d4d21dea166ea12b49e88a05a9f7a75790881a1f2d7588fa9e0e6ce592b4b5ee71994fa8b05236efeeb57890157a622c752c12a9059c2ee915adf3b4660d + 7330c179f1e2db815a675560d3d84648be02f7d0292f8cbe21d6033577fe688ed71ad23b5b8c9dc309395b45ebb554f9499e7a4b57091959b69679011fa59044 7fc2a4663c3103bef641be065bd7992a2b3dc0699f1b99dc2fdb34c1c48e58686e490d3ade523ef7c8e29b3f04109658eef652c26ff6ee3fb9aee65453bdb6c4 - 17b85051543c34a41c6b94ec8f46a10927aa4bc9554562650788c8257ffba8e362500cf3641708f2f9dabebc663a2d012fa9feacd7f9b33c637fbc965d405adf - 8eab0a922968465fee8537dc035ce781e51dc84cc05259a32acb5bf59c618bc1700dbf4eec90717ed5959841def119357974d109df8d7450c12ca4ea8576e55c 8c9e7debcaf60be1c2dda656f95e497f6812d704edc3ca4a1c915a3b3c9dc1749c91d96bc2d60db7d90d5edfd9e2dfc39010dfe4feabfecfffd27f1fffc3d675 ) +prepare() { + cd $srcdir/ZoneMinder-$pkgver + + # Patch for automake + sed -i "\|^am__api_version=| s|1[.]11|$_automake|; + " configure + + # Patch for GCC + sed -i 's|^#include [<]errno[.]h[>]$|#include <errno.h>\n#include <unistd.h>|; + ' src/zm_logger.cpp + sed -i 's|^#include [<]pthread[.]h[>]$|#include <pthread.h>\n#include <unistd.h>|; + ' src/zm_thread.h + sed -i 's|^#include [<]fcntl[.]h[>]$|#include <fcntl.h>\n#include <limits.h>|; + ' src/zm_local_camera.cpp + + # Patch for type cast in linux-libre kernel 3.5 and for wrong type "suppported" + sed -i 's|enum v4l2_buf_type type = v4l2_data[.]fmt[.]type|enum v4l2_buf_type type = (v4l2_buf_type)v4l2_data.fmt.type|; + s|suppported|supported|; + ' src/zm_local_camera.cpp + + # configure crash on i686 + [[ $CARCH != i686 ]] && { + # Patch for fixing warning + sed -i 's|pdest[+][+] = ([*]blend_ptr)\[[*]pdest]\[[*]psrc[+][+]]|pdest = (*blend_ptr)[*pdest][*psrc++];\n pdest++|; + ' src/zm_image.cpp + } + + # Patch for support ffmpeg with <libavutil/mathematics.h> + #sed -i 's|^extern "C" {|extern "C" {\n#ifdef _STDINT_H\n#undef _STDINT_H\n#endif\n#include <stdint.h>|; + # s|^#include <libavutil/avutil[.]h>|#include <libavutil/avutil.h>\n#include <libavutil/mathematics.h>|; + # ' src/zm_ffmpeg.h + + # Patch for support C library + #sed -i 's|^AM_CONFIG_HEADER(config[.]h)|AM_CONFIG_HEADER(config.h)\n\nAC_SUBST([AM_CXXFLAGS], [-D__STDC_CONSTANT_MACROS])|; + # s|^AC_CHECK_HEADERS(mysql/mysql[.]h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)|AC_CHECK_HEADERS(mysql/mysql.h,,AC_MSG_ERROR(zm requires MySQL headers - check that MySQL development packages are installed),)\nAC_LANG_PUSH([C])|; + # s|^AC_CHECK_HEADERS(libswscale/swscale[.]h,,,)|AC_CHECK_HEADERS(libswscale/swscale.h,,,)\nAC_LANG_POP([C])|; + # ' configure.ac + + # Patch for disable ZM_CHECK_FOR_UPDATES + sed -i '\|ZM_CHECK_FOR_UPDATES|,+1 s|yes|no|; + ' scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in + + # Patch for support html5 video and flv + sed -i '\|ZM_MPEG_LIVE_FORMAT|,+1 s|swf|webm|; + \|ZM_MPEG_REPLAY_FORMAT|,+1 s|swf|webm|; + \|ZM_FFMPEG_FORMATS|,+1 s|mpg mpeg wmv asf avi[*] mov swf 3gp[*][*]|mpg mpeg wmv asf avi* mov flv swf 3gp** webm ogg h264|; + ' scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in + + # Patch for change path run dir and for change ZM name to ZoneMinder + sed -i '\|ZM_PATH_SOCKS|,+1 s|TMP|RUN|; + \|ZM_WEB_TITLE_PREFIX|,+1 s|"ZM"|"ZoneMinder"|; + ' scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in + + # Patch for v4l2 convert support + sed -i 's|^$ENV{SHELL} = '"'/bin/sh'"' if exists $ENV{SHELL}|$ENV{SHELL} = '"'/bin/sh'"' if exists $ENV{SHELL};\n$ENV{LD_PRELOAD} = '"'/usr/lib/libv4l/v4l2convert.so'"' |; + ' scripts/zmdc.pl.in + + # Patch for add more socket tries + sed -i '\|^$max_socket_tries = | s|3|15|; + ' web/ajax/stream.php + + # Patch for text + sed -i 's|if ( fwrite( buffer, n_bytes, 1, stdout ) )|if ( fwrite( buffer, n_bytes, 1, stdout ) != 1 )|; + ' src/zm_stream.cpp + + # Patch for remove HACK in Makefile.* + sed -i '\|This is a HACK|d; + \|^install-data-hook:$|,+5 d; + s| install-data-hook||; + \|^uninstall-hook:$|,+5 d; + s| uninstall-hook||; + ' Makefile.{am,in} + + # Patch + for _patch in ffmpeg gcrypt; do + patch -Np1 -F99 -i $srcdir/$pkgname-$pkgver-$_patch.patch + done +} + build() { cd $srcdir/ZoneMinder-$pkgver - # Patch for change ZM name to ZoneMinder - sed -i -e '/ZM_WEB_TITLE_PREFIX/,+1 s/"ZM"/"ZoneMinder"/'\ - scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read - sed -i -e '/am__api_version=/ s/1.11/1.13.1/'\ - configure || read - # Patch for add more socket tries - sed -i -e '/$max_socket_tries/ s/3/15/'\ - web/ajax/stream.php || read - # Patch for support html5 video and flv - sed -i -e '/ZM_MPEG_LIVE_FORMAT/,+1 s/swf/webm/;/ZM_MPEG_REPLAY_FORMAT/,+1 s/swf/webm/; - /ZM_FFMPEG_FORMATS/,+1 s/mpg mpeg wmv asf avi\* mov swf 3gp\*\*/mpg mpeg wmv asf avi\* mov flv swf 3gp\*\* webm ogg h264/'\ - scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in || read - # Patch for wrong "suppported" - sed -i -e 's/suppported/supported/'\ - src/zm_local_camera.cpp || read - - - patch -Np1 -F99 -i ../zoneminder-1.25.0-kernel35.patch - patch -Np1 -F99 -i ../zoneminder-1.25.0-gcc47.patch - patch -Np1 -F99 -i ../zoneminder-1.25.0-ffmpeg.patch - patch -Np1 -F99 -i ../zoneminder-1.25-text.patch - patch -Np1 -F99 -i ../zoneminder-1.25-fixwarning.patch - patch -Np1 -F99 -i ../zoneminder-1.25.0-gcrypt.patch - -export CXXFLAGS=-D__STDC_CONSTANT_MACROS -./configure --prefix=/usr\ + + # ZM_RUNDIR need change to run dir + export CPPFLAGS="$CPPFLAGS -D__STDC_CONSTANT_MACROS"\ + OPT_FFMPEG=yes\ + PATH_FFMPEG=/usr/bin/ffmpeg\ + ZM_LOGDIR=/var/log/$pkgname\ + ZM_RUNDIR=/tmp/$pkgname\ + ZM_SSL_LIB=libgcrypt\ + ZM_TMPDIR=/tmp/$pkgname + + ./configure --prefix=/usr\ --enable-crashtrace=no\ --enable-debug=no\ --enable-mmap=yes\ --sysconfdir=/etc\ --with-cgidir=/srv/http/cgi-bin\ --with-extralibs='-L/usr/lib -L/usr/lib/mysql'\ + --with-ffmpeg=/usr\ --with-libarch=lib\ - --with-ffmpeg=/usr \ --with-mysql=/usr\ - --with-webdir=/srv/http/$pkgbase\ + --with-webdir=/srv/http/$pkgname\ --with-webgroup=http\ --with-webhost=localhost\ - --with-webuser=http \ - + --with-webuser=http make V=0 } package() { cd $srcdir/ZoneMinder-$pkgver - make DESTDIR=$pkgdir install - mkdir -p $pkgdir/{etc/{httpd/conf/extra,rc.d},srv/http/{cgi-bin,$pkgbase},usr/{lib/systemd/system,share/{license/$pkgbase,$pkgbase/db}},var/{cache/$pkgbase,log/$pkgbase}} - mkdir -p $pkgdir/srv/zoneminder/socks - chown -R http.http $pkgdir/{etc/zm.conf,var/{cache/$pkgbase,log/$pkgbase}} - chown -R http.http $pkgdir/srv/zoneminder/socks - chmod 0700 $pkgdir/etc/zm.conf + mkdir -vp $pkgdir/{etc/{httpd/conf/extra,sysctl.d},srv/http/{cgi-bin,$pkgname/socks},usr/{lib/systemd/system,share/{licenses/$pkgname,$pkgname/db}},var/{cache/$pkgname,log/$pkgname}} + chown -vR http.http $pkgdir/{etc/zm.conf,srv/http/$pkgname/socks,var/{cache/$pkgname,log/$pkgname}} + chmod -v 0700 $pkgdir/etc/zm.conf for i in events images temp; do - mv $pkgdir/srv/http/$pkgbase/$i $pkgdir/var/cache/$pkgbase/$i - ln -s /var/cache/$pkgbase/$i $pkgdir/srv/http/$pkgbase/$i - chown -h http.http $pkgdir/srv/http/$pkgbase/$i + mv -v $pkgdir/srv/http/$pkgname/$i $pkgdir/var/cache/$pkgname/$i + ln -vs /var/cache/$pkgname/$i $pkgdir/srv/http/$pkgname/$i + chown -vh http.http $pkgdir/srv/http/$pkgname/$i done - ln -s /srv/http/cgi-bin $pkgdir/srv/http/$pkgbase - chown -h http.http $pkgdir/srv/http/{cgi-bin,$pkgbase,$pkgbase/cgi-bin} + ln -vs /srv/http/cgi-bin $pkgdir/srv/http/$pkgname + chown -vh http.http $pkgdir/srv/http/{cgi-bin,$pkgname,$pkgname/cgi-bin} - ln -s /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgbase + ln -vs /usr/share/cambozola/cambozola.jar $pkgdir/srv/http/$pkgname - install -D -m 644 $srcdir/httpd-$pkgbase.conf $pkgdir/etc/httpd/conf/extra - install -D -m 644 $srcdir/$pkgbase $pkgdir/etc/rc.d - install -D -m 644 $srcdir/$pkgbase.service $pkgdir/usr/lib/systemd/system - install -D -m 644 COPYING $pkgdir/usr/share/license/$pkgbase - install -D -m 644 db/zm*.sql $pkgdir/usr/share/$pkgbase/db + install -vDm644 $srcdir/httpd-$pkgname.conf $pkgdir/etc/httpd/conf/extra + install -vDm644 $srcdir/$pkgname.service $pkgdir/usr/lib/systemd/system + install -vDm644 $srcdir/sysctl-$pkgname.conf $pkgdir/etc/sysctl.d + install -vDm644 $srcdir/sysctl-$pkgname.conf $pkgdir/srv/http/$pkgname + install -vDm644 COPYING $pkgdir/usr/share/licenses/$pkgname + install -vDm644 db/zm*.sql $pkgdir/usr/share/$pkgname/db } diff --git a/pcr/zoneminder/sysctl-zoneminder.conf b/pcr/zoneminder/sysctl-zoneminder.conf new file mode 100644 index 000000000..ec1407dee --- /dev/null +++ b/pcr/zoneminder/sysctl-zoneminder.conf @@ -0,0 +1,3 @@ +# For Zoneminder Monitor +#kernel.shmall = 524288000 +#kernel.shmmax = 524288000 diff --git a/pcr/zoneminder/zoneminder.install b/pcr/zoneminder/zoneminder.install index 899e2a5d1..66109d5fa 100644 --- a/pcr/zoneminder/zoneminder.install +++ b/pcr/zoneminder/zoneminder.install @@ -1,3 +1,4 @@ +#!/usr/bin/bash pre_install() { set -e abort=false @@ -27,20 +28,20 @@ EOF post_install() { if [[ -d /var/log/zoneminder ]]; then - chmod 0755 /var/log/zoneminder - chown http.http /var/log/zoneminder + chmod -v 0755 /var/log/zoneminder + chown -v http.http /var/log/zoneminder else - mkdir -m 0755 /var/log/zoneminder - chown http.http /var/log/zoneminder + mkdir -vm 0755 /var/log/zoneminder + chown -v http.http /var/log/zoneminder fi if [[ -d /tmp/zoneminder ]]; then - chmod 0700 /tmp/zoneminder - chown http.http /tmp/zoneminder + chmod -v 0700 /tmp/zoneminder + chown -v http.http /tmp/zoneminder else - mkdir -m 0700 /tmp/zoneminder - chown http.http /tmp/zoneminder + mkdir -vm 0700 /tmp/zoneminder + chown -v http.http /tmp/zoneminder fi - sed -i -e ' + sed -i ' /^;extension=mysql.so/ s/^;//; /^#extension=mysql.so/ s/^#//; /^;extension=mysqli.so/ s/^;//; @@ -69,8 +70,11 @@ post_install() { /^open_basedir/ s/:\/srv\/http\/zoneminder//; /^open_basedir/ s/:\/srv\/http\/zoneminder\///; /^open_basedir/ s/$/:\/srv\/http\/zoneminder/; - ' /etc/php/php.ini || read - sed -i -e ' + /^open_basedir/ s/:\/var\/cache\/zoneminder//; + /^open_basedir/ s/:\/var\/cache\/zoneminder\///; + /^open_basedir/ s/$/:\/var\/cache\/zoneminder/; + ' /etc/php/php.ini + sed -i ' /^LoadModule php5_module modules\/libphp5.so/d; /^LoadModule rewrite_module modules\/mod_rewrite.so/ s/$/\nLoadModule php5_module modules\/libphp5.so/; /^# PHP 5/d; @@ -78,11 +82,12 @@ post_install() { /^Include \/etc\/httpd\/conf\/extra\/php5_module.conf/d; /^Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; /^Include conf\/extra\/httpd-default.conf/ s/$/\n\n# PHP 5\n\Include \/etc\/httpd\/conf\/extra\/php5_module.conf\n\n# ZoneMinder\nInclude \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/; - ' /etc/httpd/conf/httpd.conf || read + ' /etc/httpd/conf/httpd.conf + gpasswd -a http video cat << EOF Note for mysql: ==> To run Zoneminder, you must install the database running mysql service (as root): -==> "rc.d start mysqld" (in initscripts) or "systemctl start mysqld.service" (in systemd) +==> "systemctl start mysqld.service" ==> and add Zoneminder database typing (with passsword): ==> "mysqladmin --defaults-file=/etc/mysql/my.cnf -p -f reload" ==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf -p" @@ -92,6 +97,11 @@ Note for mysql: ==> "cat /usr/share/zoneminder/db/zm_create.sql | mysql --defaults-file=/etc/mysql/my.cnf" ==> "echo 'grant lock tables, alter,select,insert,update,delete on zm.* to 'zmuser'@localhost identified by "zmpass";' | mysql --defaults-file=/etc/mysql/my.cnf mysql" +Note for sysctl: +==> You must uncomment that line in /etc/sysctl.d/sysctl-zoneminder.conf: +==> "kernel.shmall = 524288000" +==> "kernel.shmmax = 524288000" + Note for php: ==> You must uncomment that line in /etc/php/php.ini: ==> "extension=mysql.so" @@ -105,11 +115,11 @@ Note for php: ==> "extension=openssl.so" ==> "extension=ftp.so" ==> "extension=zip.so" -==> check and add to open_basedir "/etc" and -==> "/srv/http/zoneminder" like so -==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/srv/http/zoneminder" +==> check and add to open_basedir "/etc", +==> "/srv/http/zoneminder" and "/var/cache/zoneminder" like so +==> "open_basedir = /home:/tmp:/usr/share/pear:/etc:/srv/http/zoneminder:/var/cache/zoneminder" ==> and set your timezone in php.ini: -==> "date.timezone = <your_country>/<your_city>" +==> "date.timezone = <your_zone>/<your_city>" Note for apache: ==> You must edit /etc/httpd/conf/httpd.conf and add the line: @@ -122,21 +132,25 @@ EOF post_upgrade() { post_install + _mysqld=$(systemctl status mysqld.service | grep -o 'inactive (dead)') + [[ _mysqld == 'inactive (dead)' ]] && systemctl start mysqld.service /usr/bin/zmupdate.pl -f >/dev/null + [[ _mysqld == 'inactive (dead)' ]] && systemctl stop mysqld.service } post_remove() { - if [[ -d /tmp/zoneminder ]]; then - rm -vr /tmp/zoneminder - fi - sed -i -e ' + _zms=$(systemctl status zoneminder.service | grep -o 'active (running)') + [[ _zms == 'active (running)' ]] && systemctl stop zoneminder.service + [[ -d /tmp/zoneminder ]] && rm -vr /tmp/zoneminder + sed -i ' /^open_basedir/ s/:\/srv\/http\/zoneminder//; /^open_basedir/ s/:\/srv\/http\/zoneminder\///; - ' /etc/php/php.ini || read - sed -i -e ' + /^open_basedir/ s/:\/var\/cache\/zoneminder\/// + ' /etc/php/php.ini + sed -i ' /^# ZoneMinder/d; /Include \/etc\/httpd\/conf\/extra\/httpd-zoneminder.conf/d; - ' /etc/httpd/conf/httpd.conf || read + ' /etc/httpd/conf/httpd.conf cat << EOF Note: ==> To clean Zoneminder mysql database, run as root (with password): @@ -165,9 +179,12 @@ Note: ==> "extension=mysqli.so" ==> "extension=session.so" ==> "extension=sockets.so" -==> "date.timezone = <my_country>/<my_city>" +==> "date.timezone = <my_zone>/<my_city>" + +==> Drop http user on video group if it isn't needed with others servers: +==> gpasswd -d http video -==> Edit /etc/php/php.ini and remove "/etc" and "/srv/http/zoneminder" +==> Edit /etc/php/php.ini and remove "/etc", "/srv/http/zoneminder" and "/var/cache/zoneminder" ==> in the "open_basedir". ==> Remove log files and "zonemider" directory in "/var/log/zoneminder". |