From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <gentoo-commits+bounces-1005292-garchives=archives.gentoo.org@lists.gentoo.org> Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 971A71382C5 for <garchives@archives.gentoo.org>; Thu, 22 Feb 2018 22:48:23 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id DAD47E0964; Thu, 22 Feb 2018 22:48:22 +0000 (UTC) Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id AAEB8E0964 for <gentoo-commits@lists.gentoo.org>; Thu, 22 Feb 2018 22:48:22 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 37463335C3E for <gentoo-commits@lists.gentoo.org>; Thu, 22 Feb 2018 22:48:21 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 7D3FA1A3 for <gentoo-commits@lists.gentoo.org>; Thu, 22 Feb 2018 22:48:19 +0000 (UTC) From: "Andreas Hüttel" <dilfridge@gentoo.org> To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Andreas Hüttel" <dilfridge@gentoo.org> Message-ID: <1519339682.f8796ea819bb3bc16ea85ec84c43dd9f21010982.dilfridge@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: www-misc/zoneminder/files/, www-misc/zoneminder/ X-VCS-Repository: repo/gentoo X-VCS-Files: www-misc/zoneminder/Manifest www-misc/zoneminder/files/10_zoneminder.conf www-misc/zoneminder/files/README.gentoo www-misc/zoneminder/files/zoneminder-1.30.4-path_zms.patch www-misc/zoneminder/zoneminder-1.30.4.ebuild X-VCS-Directories: www-misc/zoneminder/files/ www-misc/zoneminder/ X-VCS-Committer: dilfridge X-VCS-Committer-Name: Andreas Hüttel X-VCS-Revision: f8796ea819bb3bc16ea85ec84c43dd9f21010982 X-VCS-Branch: master Date: Thu, 22 Feb 2018 22:48:19 +0000 (UTC) Precedence: bulk List-Post: <mailto:gentoo-commits@lists.gentoo.org> List-Help: <mailto:gentoo-commits+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org> X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 328245bc-9022-419c-a667-69c448eb4891 X-Archives-Hash: 2a8f1d7706ca529390f47f47910a2c70 commit: f8796ea819bb3bc16ea85ec84c43dd9f21010982 Author: MalakymR <MalakymR <AT> esdf <DOT> uk> AuthorDate: Wed Sep 6 14:06:22 2017 +0000 Commit: Andreas Hüttel <dilfridge <AT> gentoo <DOT> org> CommitDate: Thu Feb 22 22:48:02 2018 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8796ea8 www-misc/zoneminder: version bump to 1.30.4 * sample modified to work with new 2.4 apache syntax * README: import schema as root Closes: https://github.com/gentoo/gentoo/pull/5661 www-misc/zoneminder/Manifest | 1 + www-misc/zoneminder/files/10_zoneminder.conf | 20 ++- www-misc/zoneminder/files/README.gentoo | 12 +- .../files/zoneminder-1.30.4-path_zms.patch | 16 ++ www-misc/zoneminder/zoneminder-1.30.4.ebuild | 178 +++++++++++++++++++++ 5 files changed, 210 insertions(+), 17 deletions(-) diff --git a/www-misc/zoneminder/Manifest b/www-misc/zoneminder/Manifest index e8f8359c774..7352a3c915e 100644 --- a/www-misc/zoneminder/Manifest +++ b/www-misc/zoneminder/Manifest @@ -2,3 +2,4 @@ DIST Crud-3.0.10.tar.gz 72960 BLAKE2B d7dd9d7f7d465dab910708ce34f1348983d14e80ac DIST Crud-3.1.0.tar.gz 72993 BLAKE2B d11938a0a667f6747bbe3609e51ccc5665b8d243e1787a5779319c679f1f20301afd6b0a14c5489976b9f66f57b5f18ef3ae0ee5a24e1368702cb43a5d564dd5 SHA512 7ec84afaa336b1bd582b7f39724f77081bdb3008947c4124ad96e4bc7755a03fbe31e01666d4d1939ebe17b342db37bf3766a42d88fbed0e99706807ff5b9d01 DIST zoneminder-1.30.0.tar.gz 9757409 BLAKE2B b67340b9cf8f0875a5ea5c4aef2c4a2770532987e8482952a3e81036006efe6f84dc142309ca2926c33d72fca9b157739daf15d9f6716e31b56a00fd704921e7 SHA512 cbff14447a568648a0475e878be5cd19cb694c65814fe33c20774752410e31f3f4ff9e5695667d4d50634b3193dc50aaca2d950efc151bbb968d3f9609d35db4 DIST zoneminder-1.30.2.tar.gz 9931753 BLAKE2B 3c48d5886053ed72788028b0c7a1f483ca2f659b6614bf0cbc1a5de7c9a7ed21aa730b614ba7400b96b057e076724364d24958e3ee5ff8e1134aeb9f142c38fd SHA512 98bd6d42ecc19bcd317a30e1a9c57bd6bd295593bcc6c12e2fbe1beddfe43fb0301e042323a88969fd5f7da1dc45a1c01324878837633e5a5ed4fa54bed8690a +DIST zoneminder-1.30.4.tar.gz 9937220 BLAKE2B feab8251b3f36f3fb91e1ea52a25b06e131a81c398f8c97a4ef304848bc65abaf5514bded1783c1ab6ec2287e279baa69d406e24191d59276315d7131af42104 SHA512 b55b2541bcaba08f89b95fdfb06b6cf3fc7b462b1f3fac2bb3fd6e8ee890735d4fac343c7625cf59b22fd25c19585900050cb5305b35aa8f6557421be09450b3 diff --git a/www-misc/zoneminder/files/10_zoneminder.conf b/www-misc/zoneminder/files/10_zoneminder.conf index 277d680d24b..eb9961d1322 100644 --- a/www-misc/zoneminder/files/10_zoneminder.conf +++ b/www-misc/zoneminder/files/10_zoneminder.conf @@ -1,18 +1,16 @@ -ScriptAlias /cgi-bin/zms "/usr/libexec/zoneminder/cgi-bin/zms" -ScriptAlias /cgi-bin/nph-zms "/usr/libexec/zoneminder/cgi-bin/nph-zms" +ScriptAlias /zm/cgi-bin "/usr/libexec/zoneminder/cgi-bin/" <Directory "/usr/libexec/zoneminder/cgi-bin"> AllowOverride All - Options ExecCGI - Order allow,deny - Allow from all -</Directory> + Options +ExecCGI + Require all granted +</Directory> -Alias /zoneminder "%ZM_WEBDIR%" +Alias /zm "%ZM_WEBDIR%" <Directory "%ZM_WEBDIR%"> - Options -Indexes MultiViews FollowSymLinks + Options -Indexes +MultiViews +FollowSymLinks AllowOverride All - Order allow,deny - Allow from all -</Directory> + Require all granted +</Directory> + diff --git a/www-misc/zoneminder/files/README.gentoo b/www-misc/zoneminder/files/README.gentoo index 07995214d1c..8713fda6f78 100644 --- a/www-misc/zoneminder/files/README.gentoo +++ b/www-misc/zoneminder/files/README.gentoo @@ -3,12 +3,12 @@ (see https://wiki.gentoo.org/wiki/MySQL/Startup_Guide). E.g., when logged into mysql as root, mysql> CREATE DATABASE \`zm\`; - mysql> GRANT ALL ON zm.* TO 'zmuser'@'localhost' IDENTIFIED BY 'topsecretpassword'; + mysql> grant select,insert,alter,update,lock tables,delete on zm.* to 'zmuser'@localhost identified by 'zmpass'; + mysql> flush privileges; Once you completed that you should execute the following: - cd /usr/share/zoneminder - mysql -u zmuser -p < db/zm_create.sql + mysql -p < /usr/share/zoneminder/db/zm_create.sql -2. Set your database settings in /etc/zm.conf, including above topsecretpassword +2. Set your database settings in /etc/zm.conf, including above zmpass 3. Configure apache to use zoneminder, see /usr/share/doc/zoneminder*/10_zoneminder.conf for an example configuration snippet. @@ -23,5 +23,5 @@ 6. Finally point your browser to http://your.webserver/zm -If you are upgrading, you will need to run the zmupdate.pl script: - /usr/bin/zmupdate.pl --version=oldversionnumber [--user=zmuser --pass=topsecretpassword] +If you are upgrading, you will need to run the zmupdate.pl script: + /usr/bin/zmupdate.pl diff --git a/www-misc/zoneminder/files/zoneminder-1.30.4-path_zms.patch b/www-misc/zoneminder/files/zoneminder-1.30.4-path_zms.patch new file mode 100644 index 00000000000..54772a14769 --- /dev/null +++ b/www-misc/zoneminder/files/zoneminder-1.30.4-path_zms.patch @@ -0,0 +1,16 @@ +duplicate the work of utils/zmeditconfigdata.sh +https://github.com/ZoneMinder/ZoneMinder/commit/5a59a0375dd19f8e5af9b2acadec9f2bb16ee56c + +diff -ruN ZoneMinder-1.30.4.orig/scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in ZoneMinder-1.30.4/scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in +--- ZoneMinder-1.30.4.orig/scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in 2017-08-30 14:55:31.894727925 +0100 ++++ ZoneMinder-1.30.4/scripts/ZoneMinder/lib/ZoneMinder/ConfigData.pm.in 2017-08-30 14:57:05.050731752 +0100 +@@ -507,7 +507,7 @@ + }, + { + name => "ZM_PATH_ZMS", +- default => "/cgi-bin/nph-zms", ++ default => "/zm/cgi-bin/nph-zms", + description => "Web path to zms streaming server", + help => qqq(" + The ZoneMinder streaming server is required to send streamed + diff --git a/www-misc/zoneminder/zoneminder-1.30.4.ebuild b/www-misc/zoneminder/zoneminder-1.30.4.ebuild new file mode 100644 index 00000000000..aa27e4b053e --- /dev/null +++ b/www-misc/zoneminder/zoneminder-1.30.4.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# TO DO: +# * dependencies of unknown status: +# dev-perl/Device-SerialPort +# dev-perl/MIME-Lite +# dev-perl/MIME-tools +# dev-perl/PHP-Serialization +# virtual/perl-Archive-Tar +# virtual/perl-libnet +# virtual/perl-Module-Load + +EAPI=6 + +inherit versionator perl-functions readme.gentoo-r1 cmake-utils depend.apache flag-o-matic systemd + +MY_PN="ZoneMinder" + +MY_CRUD_VERSION="3.1.0" + +DESCRIPTION="Capture, analyse, record and monitor any cameras attached to your system" +HOMEPAGE="http://www.zoneminder.com/" +SRC_URI=" + https://github.com/${MY_PN}/${MY_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz + https://github.com/FriendsOfCake/crud/archive/v${MY_CRUD_VERSION}.tar.gz -> Crud-${MY_CRUD_VERSION}.tar.gz +" + +LICENSE="GPL-2" +KEYWORDS="~amd64" +IUSE="curl ffmpeg gcrypt gnutls +mmap +ssl libressl vlc" +SLOT="0" + +REQUIRED_USE=" + || ( ssl gnutls ) +" + +DEPEND=" + app-eselect/eselect-php[apache2] + dev-lang/perl:= + dev-lang/php:*[apache2,cgi,curl,gd,inifile,pdo,mysql,mysqli,sockets] + dev-libs/libpcre + dev-perl/Archive-Zip + dev-perl/Class-Std-Fast + dev-perl/Data-Dump + dev-perl/Date-Manip + dev-perl/Data-UUID + dev-perl/DBD-mysql + dev-perl/DBI + dev-perl/IO-Socket-Multicast + dev-perl/SOAP-WSDL + dev-perl/Sys-CPU + dev-perl/Sys-MemInfo + dev-perl/URI-Encode + dev-perl/libwww-perl + dev-php/pecl-apcu:* + sys-auth/polkit + sys-libs/zlib + virtual/ffmpeg + virtual/httpd-php:* + virtual/jpeg:0 + virtual/mysql + virtual/perl-ExtUtils-MakeMaker + virtual/perl-Getopt-Long + virtual/perl-Sys-Syslog + virtual/perl-Time-HiRes + www-servers/apache + curl? ( net-misc/curl ) + gcrypt? ( dev-libs/libgcrypt:0= ) + gnutls? ( net-libs/gnutls ) + mmap? ( dev-perl/Sys-Mmap ) + ssl? ( + !libressl? ( dev-libs/openssl:0= ) + libressl? ( dev-libs/libressl:0= ) + ) + vlc? ( media-video/vlc[live] ) +" +RDEPEND="${DEPEND}" + +# we cannot use need_httpd_cgi here, since we need to setup permissions for the +# webserver in global scope (/etc/zm.conf etc), so we hardcode apache here. +need_apache + +S=${WORKDIR}/${MY_PN}-${PV} + +PATCHES=( + "${FILESDIR}/${PN}-1.30.2"-diskspace.patch + "${FILESDIR}/${PN}-1.30.4"-path_zms.patch +) + +MY_ZM_WEBDIR=/usr/share/zoneminder/www + +src_prepare() { + cmake-utils_src_prepare + + rmdir "${S}/web/api/app/Plugin/Crud" || die + mv "${WORKDIR}/crud-${MY_CRUD_VERSION}" "${S}/web/api/app/Plugin/Crud" || die +} + +src_configure() { + append-cxxflags -D__STDC_CONSTANT_MACROS + perl_set_version + + mycmakeargs=( + -DZM_PERL_SUBPREFIX=${VENDOR_LIB#/usr} + -DZM_TMPDIR=/var/tmp/zm + -DZM_SOCKDIR=/var/run/zm + -DZM_WEB_USER=apache + -DZM_WEB_GROUP=apache + -DZM_WEBDIR=${MY_ZM_WEBDIR} + -DZM_NO_MMAP="$(usex mmap OFF ON)" + -DZM_NO_X10=OFF + -DZM_NO_FFMPEG="$(usex ffmpeg OFF ON)" + -DZM_NO_CURL="$(usex curl OFF ON)" + -DZM_NO_LIBVLC="$(usex vlc OFF ON)" + -DCMAKE_DISABLE_FIND_PACKAGE_OpenSSL="$(usex ssl OFF ON)" + -DHAVE_GNUTLS="$(usex gnutls ON OFF)" + -DHAVE_GCRYPT="$(usex gcrypt ON OFF)" + ) + + cmake-utils_src_configure + +} + +src_install() { + cmake-utils_src_install + + # the log directory + keepdir /var/log/zm + fowners apache:apache /var/log/zm + + # the logrotate script + insinto /etc/logrotate.d + newins distros/ubuntu1204/zoneminder.logrotate zoneminder + + # now we duplicate the work of zmlinkcontent.sh + keepdir /var/lib/zoneminder /var/lib/zoneminder/images /var/lib/zoneminder/events /var/lib/zoneminder/api_tmp + fperms -R 0775 /var/lib/zoneminder + fowners -R apache:apache /var/lib/zoneminder + dosym /var/lib/zoneminder/images ${MY_ZM_WEBDIR}/images + dosym /var/lib/zoneminder/events ${MY_ZM_WEBDIR}/events + dosym /var/lib/zoneminder/api_tmp ${MY_ZM_WEBDIR}/api/app/tmp + + # bug 523058 + keepdir ${MY_ZM_WEBDIR}/temp + fowners -R apache:apache ${MY_ZM_WEBDIR}/temp + + # the configuration file + fperms 0640 /etc/zm.conf + fowners root:apache /etc/zm.conf + + # init scripts etc + newinitd "${FILESDIR}"/init.d zoneminder + newconfd "${FILESDIR}"/conf.d zoneminder + + # systemd unit file + systemd_dounit "${FILESDIR}"/zoneminder.service + + cp "${FILESDIR}"/10_zoneminder.conf "${T}"/10_zoneminder.conf || die + sed -i "${T}"/10_zoneminder.conf -e "s:%ZM_WEBDIR%:${MY_ZM_WEBDIR}:g" || die + + dodoc AUTHORS BUGS ChangeLog INSTALL NEWS README.md TODO "${T}"/10_zoneminder.conf + + perl_delete_packlist + + readme.gentoo_create_doc +} + +pkg_postinst() { + readme.gentoo_print_elog + + local v + for v in ${REPLACING_VERSIONS}; do + if ! version_is_at_least ${PV} ${v}; then + elog "You have upgraded zoneminder and may have to upgrade your database now using the 'zmupdate.pl' script." + fi + done +}